diff options
author | Bill Wendling <isanbard@gmail.com> | 2010-12-18 02:13:59 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2010-12-18 02:13:59 +0000 |
commit | a68a4fdf37676794ce69624d1fd4e4627c377902 (patch) | |
tree | e24aa7fd22634ee03f1f709474005782b612a54c /lib/Target/ARM/ARMAsmPrinter.cpp | |
parent | cd080249fc249a51d8b0021a651d8b9d4a4977e0 (diff) | |
download | external_llvm-a68a4fdf37676794ce69624d1fd4e4627c377902.zip external_llvm-a68a4fdf37676794ce69624d1fd4e4627c377902.tar.gz external_llvm-a68a4fdf37676794ce69624d1fd4e4627c377902.tar.bz2 |
r120333 changed the opcode for the Thumb1 stuff from ARM::tMOVr to
ARM::tMOVgpr2gpr. But this check didn't change. As a result, we were getting
misaligned references to the jump table from an ADR instruction.
There is a test case, but unfortunately it's sensitive to random code changes.
<rdar://problem/8782223>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122131 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMAsmPrinter.cpp')
-rw-r--r-- | lib/Target/ARM/ARMAsmPrinter.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Target/ARM/ARMAsmPrinter.cpp b/lib/Target/ARM/ARMAsmPrinter.cpp index 1c5997e..ba88106 100644 --- a/lib/Target/ARM/ARMAsmPrinter.cpp +++ b/lib/Target/ARM/ARMAsmPrinter.cpp @@ -1025,7 +1025,7 @@ void ARMAsmPrinter::EmitInstruction(const MachineInstr *MI) { OutStreamer.EmitInstruction(TmpInst); // Make sure the Thumb jump table is 4-byte aligned. - if (Opc == ARM::tMOVr) + if (Opc == ARM::tMOVgpr2gpr) EmitAlignment(2); // Output the data for the jump table itself |