mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-27 21:50:40 +00:00
6b00c9f9a9
Thread through MCSubtargetInfo to relaxInstruction function allowing relaxation to generate jumps with 16-bit sized immediates in 16-bit mode. This fixes PR22097. Reviewers: dwmw2, tstellarAMD, craig.topper, jyknight Subscribers: jfb, arsenm, jyknight, llvm-commits, dsanders Differential Revision: http://reviews.llvm.org/D20830 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@275068 91177308-0d34-0410-b5e6-96231b3b80d8
32 lines
677 B
ArmAsm
32 lines
677 B
ArmAsm
# RUN: llvm-mc -filetype=obj -triple=i386-unknown-unknown %s -o %t
|
|
# RUN: llvm-objdump -r -D -section .text.bar -triple i386-unknown-unknown-code16 %t | FileCheck --check-prefix=CHECK16 %s
|
|
# RUN: llvm-objdump -r -D -section .text.baz -triple i386-unknown-unknown %t | FileCheck --check-prefix=CHECK32 %s
|
|
.text
|
|
.section .text.foo,"",@progbits
|
|
|
|
.code16
|
|
.globl foo
|
|
foo:
|
|
nop
|
|
|
|
.section .text.bar,"",@progbits
|
|
.globl bar16
|
|
bar16:
|
|
jmp foo
|
|
|
|
.section .text.baz,"",@progbits
|
|
.code32
|
|
.globl baz32
|
|
baz32:
|
|
jmp foo
|
|
|
|
|
|
|
|
|
|
// CHECK16-LABEL: bar16
|
|
// CHECK16-NEXT: e9 fe ff jmp -2 <bar16+0x1>
|
|
// CHECK32-LABEL: baz32
|
|
// CHECK32-NEXT: e9 fc ff ff ff jmp -4 <baz32+0x1>
|
|
|
|
|