93 lines · plain
1; RUN: llc -mtriple=mipsel-linux-gnu -mattr=mips16 -relocation-model=pic < %s | FileCheck %s -check-prefix=PIC2 3; RUN: llc -mtriple=mipsel-linux-gnu -mattr=mips16 -relocation-model=static < %s | FileCheck %s -check-prefix=STATIC4 5 6@xi = common global i32 0, align 47@x = common global float 0.000000e+00, align 48@xd = common global double 0.000000e+00, align 89 10; Function Attrs: nounwind11define void @it() #0 {12entry:13 %call = call i32 @i(i32 1)14 store i32 %call, ptr @xi, align 415 ret void16; PIC: .ent it17; STATIC: .ent it18; PIC: save $16, $17, $ra, [[FS:[0-9]+]]19; STATIC: save $16, $ra, [[FS:[0-9]+]]20; PIC: restore $16, $17, $ra, [[FS]]21; STATIC: restore $16, $ra, [[FS]]22; PIC: .end it23; STATIC: .end it24}25 26declare i32 @i(i32) #127 28; Function Attrs: nounwind29define void @ft() #0 {30entry:31 %call = call float @f()32 store float %call, ptr @x, align 433 ret void34; PIC: .ent ft35; PIC: save $16, $17, $ra, $18, [[FS:[0-9]+]]36; PIC: restore $16, $17, $ra, $18, [[FS]]37; PIC: .end ft38}39 40declare float @f() #141 42; Function Attrs: nounwind43define void @dt() #0 {44entry:45 %call = call double @d()46 store double %call, ptr @xd, align 847 ret void48; PIC: .ent dt49; PIC: save $16, $17, $ra, $18, [[FS:[0-9]+]]50; PIC: restore $16, $17, $ra, $18, [[FS]]51; PIC: .end dt52}53 54declare double @d() #155 56; Function Attrs: nounwind57define void @fft() #0 {58entry:59 %0 = load float, ptr @x, align 460 %call = call float @ff(float %0)61 store float %call, ptr @x, align 462 ret void63; PIC: .ent fft64; PIC: save $16, $17, $ra, $18, [[FS:[0-9]+]]65; PIC: restore $16, $17, $ra, $18, [[FS]]66; PIC: .end fft67}68 69declare float @ff(float) #170 71; Function Attrs: nounwind72define void @vft() #0 {73entry:74 %0 = load float, ptr @x, align 475 call void @vf(float %0)76 ret void77; PIC: .ent vft78; STATIC: .ent vft79; PIC: save $16, $ra, [[FS:[0-9]+]]80; STATIC: save $16, $ra, [[FS:[0-9]+]]81; PIC: restore $16, $ra, [[FS]]82; STATIC: restore $16, $ra, [[FS]]83; PIC: .end vft84; STATIC: .end vft85}86 87declare void @vf(float) #188 89attributes #0 = { nounwind "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "use-soft-float"="false" }90attributes #1 = { "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "use-soft-float"="false" }91 92 93