From 67b95f902a51b591b6178e370d23ffaca841275d Mon Sep 17 00:00:00 2001 From: Jim Grosbach Date: Fri, 19 Aug 2011 18:20:48 +0000 Subject: [PATCH] Thumb assembly parsing and encoding for LDR(literal). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138052 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp | 2 +- test/MC/ARM/basic-thumb-instructions.s | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp b/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp index 89b5acefa53..8520c3fe4c4 100644 --- a/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp +++ b/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp @@ -79,7 +79,7 @@ public: { "fixup_arm_thumb_bl", 0, 32, MCFixupKindInfo::FKF_IsPCRel }, { "fixup_arm_thumb_blx", 0, 32, MCFixupKindInfo::FKF_IsPCRel }, { "fixup_arm_thumb_cb", 0, 16, MCFixupKindInfo::FKF_IsPCRel }, -{ "fixup_arm_thumb_cp", 1, 8, MCFixupKindInfo::FKF_IsPCRel }, +{ "fixup_arm_thumb_cp", 0, 8, MCFixupKindInfo::FKF_IsPCRel }, { "fixup_arm_thumb_bcc", 0, 8, MCFixupKindInfo::FKF_IsPCRel }, // movw / movt: 16-bits immediate but scattered into two chunks 0 - 12, 16 - 19. { "fixup_arm_movt_hi16", 0, 20, 0 }, diff --git a/test/MC/ARM/basic-thumb-instructions.s b/test/MC/ARM/basic-thumb-instructions.s index 9d19f33d724..63928a1b5fa 100644 --- a/test/MC/ARM/basic-thumb-instructions.s +++ b/test/MC/ARM/basic-thumb-instructions.s @@ -194,3 +194,11 @@ _func: @ CHECK: ldr r2, [sp, #24] @ encoding: [0x06,0x9a] @ CHECK: ldr r3, [sp, #1020] @ encoding: [0xff,0x9b] + +@------------------------------------------------------------------------------ +@ LDR (literal) +@------------------------------------------------------------------------------ + ldr r1, _foo + +@ CHECK: ldr r1, _foo @ encoding: [A,0x49] + @ fixup A - offset: 0, value: _foo, kind: fixup_arm_thumb_cp