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 | 33c110e602bbdfee23cfb58fddef246a262647ab (patch) | |
tree | fb6dea99e101b00bc2f41a3a07dac3e2a48ab95c /lib/Target/ARM/ARMCodeEmitter.cpp | |
parent | 701529b2488477d1887c2975677a574d1e90389f (diff) |
Fix the non-MC encoding of pkhbt and pkhtb.
Patch by Stephen Hines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131045 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMCodeEmitter.cpp')
-rw-r--r-- | lib/Target/ARM/ARMCodeEmitter.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMCodeEmitter.cpp b/lib/Target/ARM/ARMCodeEmitter.cpp index fa7371626f..d0c0e95251 100644 --- a/lib/Target/ARM/ARMCodeEmitter.cpp +++ b/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 |