Home | History | Annotate | Download | only in ARM
      1 ; RUN: llc < %s -mtriple=armv7-apple-darwin   | FileCheck %s --check-prefix=ARM
      2 ; RUN: llc < %s -mtriple=thumbv7-apple-darwin | FileCheck %s --check-prefix=THUMB2
      3 ; rdar://8690640
      4 
      5 define i32* @t(i32* %x) nounwind {
      6 entry:
      7 ; ARM: t:
      8 ; ARM: push
      9 ; ARM: mov r7, sp
     10 ; ARM: bl _foo
     11 ; ARM: bl _foo
     12 ; ARM: bl _foo
     13 ; ARM: pop {r7, pc}
     14 
     15 ; THUMB2: t:
     16 ; THUMB2: push
     17 ; THUMB2: mov r7, sp
     18 ; THUMB2: blx _foo
     19 ; THUMB2: blx _foo
     20 ; THUMB2: blx _foo
     21 ; THUMB2: pop
     22   %0 = tail call i32* @foo(i32* %x) nounwind
     23   %1 = tail call i32* @foo(i32* %0) nounwind
     24   %2 = tail call i32* @foo(i32* %1) nounwind
     25   ret i32* %2
     26 }
     27 
     28 declare i32* @foo(i32*)
     29