1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00

[Thumb1] Add relocations for fixups fixup_arm_thumb_{br,bcc}

These need to be mapped through to R_ARM_THM_JUMP{11,8} respectively.

Fixes PR30279.

llvm-svn: 280651
This commit is contained in:
James Molloy 2016-09-05 08:29:15 +00:00
parent ba087d916d
commit a0cf4d86b2
2 changed files with 27 additions and 0 deletions

View File

@ -140,6 +140,12 @@ unsigned ARMELFObjectWriter::GetRelocTypeInner(const MCValue &Target,
case ARM::fixup_t2_movw_lo16:
Type = ELF::R_ARM_THM_MOVW_PREL_NC;
break;
case ARM::fixup_arm_thumb_br:
Type = ELF::R_ARM_THM_JUMP11;
break;
case ARM::fixup_arm_thumb_bcc:
Type = ELF::R_ARM_THM_JUMP8;
break;
case ARM::fixup_arm_thumb_bl:
case ARM::fixup_arm_thumb_blx:
switch (Modifier) {

View File

@ -0,0 +1,21 @@
@ RUN: llvm-mc -triple thumbv6-eabi -filetype obj -o - %s | llvm-readobj -r - \
@ RUN: | FileCheck %s
.syntax unified
.extern h
.section .text.uncond
b h
@CHECK: Section {{.*}} .rel.text.uncond {
@CHECK: 0x0 R_ARM_THM_JUMP11
@CHECK: }
.section .text.cond
ble h
@CHECK: Section {{.*}} .rel.text.cond {
@CHECK: 0x0 R_ARM_THM_JUMP8
@CHECK: }