mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
0020aa4a64
Whenever an add/sub immediate needs a fixup, we set that immediate field to zero, which is correct, but we also set the shift bits to zero, which is not true for instructions that use lsl #12. This patch makes sure that if lsl #12 was used, it will appear in the encoding of the instruction. Differential Revision: https://reviews.llvm.org/D23930 llvm-svn: 281898
13 lines
471 B
ArmAsm
13 lines
471 B
ArmAsm
// RUN: llvm-mc -triple=aarch64-darwin -filetype=obj %s -o - | \
|
|
// RUN: llvm-objdump -r -d - | FileCheck -check-prefix=OBJ %s
|
|
|
|
// OBJ-LABEL: Disassembly of section __TEXT,__text:
|
|
|
|
add x2, x3, _data@pageoff
|
|
// OBJ: [[addr:[0-9a-f]+]]: 62 00 00 91 add x2, x3, #0
|
|
// OBJ-NEXT: [[addr]]: ARM64_RELOC_PAGEOFF12 _data
|
|
|
|
add x2, x3, #_data@pageoff, lsl #12
|
|
// OBJ: [[addr:[0-9a-f]+]]: 62 00 40 91 add x2, x3, #0, lsl #12
|
|
// OBJ-NEXT: [[addr]]: ARM64_RELOC_PAGEOFF12 _data
|