Home | History | Annotate | Download | only in ARM
      1 ; PR18354
      2 ; We actually need to use -filetype=obj in this test because if we output
      3 ; assembly, the current code path will bypass the parser and just write the
      4 ; raw text out to the Streamer. We need to actually parse the inlineasm to
      5 ; demonstrate the bug. Going the asm->obj route does not show the issue.
      6 ; RUN: llc -mtriple=arm-none-linux   < %s -filetype=obj | llvm-objdump -d - | FileCheck %s
      7 ; RUN: llc -mtriple=arm-apple-darwin < %s -filetype=obj | llvm-objdump -d - | FileCheck %s
      8 ; CHECK-LABEL: foo:
      9 ; CHECK: 0:       00 00 9f e5                                     ldr     r0, [pc]
     10 ; CHECK: 4:       0e f0 a0 e1                                     mov     pc, lr
     11 ; Make sure the constant pool entry comes after the return
     12 ; CHECK: 8:       01 00 00 00
     13 define i32 @foo() nounwind {
     14 entry:
     15   %0 = tail call i32 asm sideeffect "ldr $0,=1", "=r"() nounwind
     16   ret i32 %0
     17 }
     18