1 ; RUN: llc -march=mipsel -relocation-model=pic -O0 -mips-fast-isel -fast-isel-abort -mcpu=mips32r2 \ 2 ; RUN: < %s | FileCheck %s 3 4 @ijk = external global i32 5 6 ; Function Attrs: nounwind 7 define void @si2_1() #0 { 8 entry: 9 store i32 32767, i32* @ijk, align 4 10 ; CHECK: .ent si2_1 11 ; CHECK: addiu $[[REG1:[0-9]+]], $zero, 32767 12 ; CHECK: lw $[[REG2:[0-9]+]], %got(ijk)(${{[0-9]+}}) 13 ; CHECK: sw $[[REG1]], 0($[[REG2]]) 14 15 ret void 16 } 17 18 ; Function Attrs: nounwind 19 define void @si2_2() #0 { 20 entry: 21 store i32 -32768, i32* @ijk, align 4 22 ; CHECK: .ent si2_2 23 ; CHECK: addiu $[[REG1:[0-9]+]], $zero, -32768 24 ; CHECK: lw $[[REG2:[0-9]+]], %got(ijk)(${{[0-9]+}}) 25 ; CHECK: sw $[[REG1]], 0($[[REG2]]) 26 ret void 27 } 28 29 ; Function Attrs: nounwind 30 define void @ui2_1() #0 { 31 entry: 32 store i32 65535, i32* @ijk, align 4 33 ; CHECK: .ent ui2_1 34 ; CHECK: ori $[[REG1:[0-9]+]], $zero, 65535 35 ; CHECK: lw $[[REG2:[0-9]+]], %got(ijk)(${{[0-9]+}}) 36 ; CHECK: sw $[[REG1]], 0($[[REG2]]) 37 ret void 38 } 39 40 ; Function Attrs: nounwind 41 define void @ui4_1() #0 { 42 entry: 43 store i32 983040, i32* @ijk, align 4 44 ; CHECK: .ent ui4_1 45 ; CHECK: lui $[[REG1:[0-9]+]], 15 46 ; CHECK: lw $[[REG2:[0-9]+]], %got(ijk)(${{[0-9]+}}) 47 ; CHECK: sw $[[REG1]], 0($[[REG2]]) 48 ret void 49 } 50 51 ; Function Attrs: nounwind 52 define void @ui4_2() #0 { 53 entry: 54 store i32 719566, i32* @ijk, align 4 55 ; CHECK: .ent ui4_2 56 ; CHECK: lui $[[REG1:[0-9]+]], 10 57 ; CHECK: ori $[[REG1]], $[[REG1]], 64206 58 ; CHECK: lw $[[REG2:[0-9]+]], %got(ijk)(${{[0-9]+}}) 59 ; CHECK: sw $[[REG1]], 0($[[REG2]]) 60 ret void 61 } 62 63 attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } 64 65 66