| ; DISABLED: llc < %s -march=mipsel -mips-fix-global-base-reg=false | FileCheck %s | |
| ; RUN: false | |
| ; XFAIL: * | |
| @g0 = external global i32 | |
| @g1 = external global i32 | |
| @g2 = external global i32 | |
| define void @foo1() nounwind { | |
| entry: | |
| ; CHECK-NOT: .cpload | |
| ; CHECK-NOT: .cprestore | |
| ; CHECK: lui $[[R0:[0-9]+]], %hi(_gp_disp) | |
| ; CHECK: addiu $[[R1:[0-9]+]], $[[R0]], %lo(_gp_disp) | |
| ; CHECK: addu $[[GP:[0-9]+]], $[[R1]], $25 | |
| ; CHECK: lw ${{[0-9]+}}, %call16(foo2)($[[GP]]) | |
| tail call void @foo2(i32* @g0) nounwind | |
| tail call void @foo2(i32* @g1) nounwind | |
| tail call void @foo2(i32* @g2) nounwind | |
| ret void | |
| } | |
| declare void @foo2(i32*) |