Home | History | Annotate | Download | only in Thumb2
      1 ; RUN: llc < %s -mtriple=thumbv7-apple-darwin -mattr=+thumb2 | FileCheck %s -check-prefix=DARWIN
      2 ; RUN: llc < %s -mtriple=thumbv7-linux -mattr=+thumb2 | FileCheck %s -check-prefix=LINUX
      3 
      4 @t = weak global i32 ()* null           ; <i32 ()**> [#uses=1]
      5 
      6 declare void @g(i32, i32, i32, i32)
      7 
      8 define void @f() {
      9 ; DARWIN-LABEL: f:
     10 ; DARWIN: blx _g
     11 
     12 ; LINUX-LABEL: f:
     13 ; LINUX: bl g
     14         call void @g( i32 1, i32 2, i32 3, i32 4 )
     15         ret void
     16 }
     17 
     18 define void @h() {
     19 ; DARWIN-LABEL: h:
     20 ; DARWIN: blx r0
     21 
     22 ; LINUX-LABEL: h:
     23 ; LINUX: blx r0
     24         %tmp = load i32 ()*, i32 ()** @t         ; <i32 ()*> [#uses=1]
     25         %tmp.upgrd.2 = call i32 %tmp( )            ; <i32> [#uses=0]
     26         ret void
     27 }
     28