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