mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-12 06:31:14 +00:00
4a88e44b0d
processFixupValue is called on every relaxation iteration. applyFixup is only called once at the very end. applyFixup is then the correct place to do last minute changes and value checks. While here, do proper range checks again for fixup_arm_thumb_bl. We used to do it, but dropped because of thumb2. We now do it again, but use the thumb2 range. llvm-svn: 306177
44 lines
791 B
ArmAsm
44 lines
791 B
ArmAsm
@ RUN: not llvm-mc %s -triple thumbv5-linux-gnueabi -filetype=obj -o /dev/null 2>&1 | FileCheck %s
|
|
|
|
.code 16
|
|
|
|
bl end
|
|
.space 0x1ffffff
|
|
end:
|
|
|
|
bl end2
|
|
.space 0x1ffffff
|
|
.global end2
|
|
end2:
|
|
|
|
bl end3
|
|
.space 0x2000000
|
|
.global end3
|
|
end3:
|
|
|
|
// CHECK-NOT: error
|
|
// CHECK: [[@LINE+1]]:{{[0-9]}}: error: Relocation out of range
|
|
bl end4
|
|
// CHECK-NOT: error
|
|
.space 0x2000000
|
|
end4:
|
|
|
|
start1:
|
|
.space 0x1fffffc
|
|
bl start1
|
|
|
|
.global start2
|
|
start2:
|
|
.space 0x1fffffc
|
|
bl start2
|
|
|
|
.global start3
|
|
start3:
|
|
.space 0x1fffffd
|
|
bl start3
|
|
|
|
start4:
|
|
.space 0x1fffffd
|
|
// CHECK: [[@LINE+1]]:{{[0-9]}}: error: Relocation out of range
|
|
bl start4
|