Fix t2Int_eh_sjlj_setjmp. Immediate form of orr is a 32-bit instruction. So it should be 22 bytes instead of 20 bytes long.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85965 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Evan Cheng 2009-11-03 23:13:34 +00:00
parent 7fc4026d97
commit 5a1cd36019
2 changed files with 2 additions and 2 deletions

View File

@ -448,7 +448,7 @@ unsigned ARMBaseInstrInfo::GetInstSizeInBytes(const MachineInstr *MI) const {
case ARM::Int_eh_sjlj_setjmp:
return 24;
case ARM::t2Int_eh_sjlj_setjmp:
return 20;
return 22;
case ARM::BR_JTr:
case ARM::BR_JTm:
case ARM::BR_JTadd:

View File

@ -1082,7 +1082,7 @@ let Defs =
AddrModeNone, SizeSpecial, NoItinerary,
"str.w\tsp, [$src, #+8] @ eh_setjmp begin\n"
"\tadr\tr12, 0f\n"
"\torr\tr12, #1\n"
"\torr.w\tr12, r12, #1\n"
"\tstr.w\tr12, [$src, #+4]\n"
"\tmovs\tr0, #0\n"
"\tb\t1f\n"