blob: b6469716176fb5343315a9df887db9e84e129a42 [file] [log] [blame]
Daniel Sanderse160f832016-05-14 12:43:08 +00001; RUN: llc -mtriple=mipsel-linux-gnu -march=mipsel -mattr=mips16 \
2; RUN: -relocation-model=pic -no-integrated-as < %s | \
Daniel Sanders0d972702016-06-24 12:23:17 +00003; RUN: FileCheck %s -check-prefixes=ALL,GAS
Daniel Sanderse160f832016-05-14 12:43:08 +00004
5; The integrated assembler expands assembly macros before printing.
6; RUN: llc -mtriple=mipsel-linux-gnu -march=mipsel -mattr=mips16 \
7; RUN: -relocation-model=pic < %s | \
Daniel Sanders0d972702016-06-24 12:23:17 +00008; RUN: FileCheck %s -check-prefixes=ALL,IAS
Reed Kotlera6ce7972013-09-25 20:58:50 +00009
10@x = external global float
11
12; Function Attrs: nounwind
13define void @v_sf(float %p) #0 {
14entry:
15 %p.addr = alloca float, align 4
16 store float %p, float* %p.addr, align 4
David Blaikiea79ac142015-02-27 21:17:42 +000017 %0 = load float, float* %p.addr, align 4
Reed Kotlera6ce7972013-09-25 20:58:50 +000018 store float %0, float* @x, align 4
19 ret void
20}
Daniel Sanderse160f832016-05-14 12:43:08 +000021; ALL-LABEL: .ent __fn_stub_v_sf
22; ALL: .cpload $25
23; ALL: .set reorder
24; ALL: .reloc 0, R_MIPS_NONE, v_sf
25; GAS: la $25, $__fn_local_v_sf
Daniel Sanders6ba3dd62016-06-03 09:53:06 +000026; IAS: lw $25, %got($$__fn_local_v_sf)($gp)
Daniel Sanderse160f832016-05-14 12:43:08 +000027; IAS: addiu $25, $25, %lo($$__fn_local_v_sf)
28; ALL: mfc1 $4, $f12
29; ALL: jr $25
30; ALL: .end __fn_stub_v_sf