diff options
author | Eric Christopher <echristo@apple.com> | 2011-05-07 04:37:27 +0000 |
---|---|---|
committer | Eric Christopher <echristo@apple.com> | 2011-05-07 04:37:27 +0000 |
commit | 1e3db02bda30bc8529f3ceda63c2238cbce6cbae (patch) | |
tree | b7018b073cc0354c2182323bf8bec3697b2cea58 /llvm/lib/Target/ARM/ARMCodeEmitter.cpp | |
parent | 58799a35e50e93dee4d0403178d9694113582a0e (diff) | |
download | bcm5719-llvm-1e3db02bda30bc8529f3ceda63c2238cbce6cbae.tar.gz bcm5719-llvm-1e3db02bda30bc8529f3ceda63c2238cbce6cbae.zip |
Fix the non-MC encoding of pkhbt and pkhtb.
Patch by Stephen Hines.
llvm-svn: 131045
Diffstat (limited to 'llvm/lib/Target/ARM/ARMCodeEmitter.cpp')
-rw-r--r-- | llvm/lib/Target/ARM/ARMCodeEmitter.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMCodeEmitter.cpp b/llvm/lib/Target/ARM/ARMCodeEmitter.cpp index fa7371626f2..d0c0e952512 100644 --- a/llvm/lib/Target/ARM/ARMCodeEmitter.cpp +++ b/llvm/lib/Target/ARM/ARMCodeEmitter.cpp @@ -1372,6 +1372,12 @@ void ARMCodeEmitter::emitMiscArithInstruction(const MachineInstr &MI) { // Set the conditional execution predicate Binary |= II->getPredicate(&MI) << ARMII::CondShift; + // PKH instructions are finished at this point + if (TID.Opcode == ARM::PKHBT || TID.Opcode == ARM::PKHTB) { + emitWordLE(Binary); + return; + } + unsigned OpIdx = 0; // Encode Rd |