// This addresses bug 14456. We were not writing
// out the addend to the gprel16 relocation. The
// addend is stored in the instruction immediate
// field.
// RUN: llvm-mc -mcpu=mips32r2 -triple=mipsel-pc-linux -filetype=obj %s -o - \
// RUN: | llvm-objdump --no-print-imm-hex -d - | FileCheck %s
// RUN: llvm-mc -mcpu=mips32r2 -triple=mips-pc-linux -filetype=obj %s -o - \
// RUN: | llvm-objdump --no-print-imm-hex -d - | FileCheck %s
.text
.abicalls
.option pic0
.section .mdebug.abi32,"",@progbits
.file "/home/espindola/llvm/llvm/test/MC/Mips/mips_gprel16.ll"
.text
.globl testvar1
.align 2
.type testvar1,@function
.set nomips16
.ent testvar1
testvar1: # @testvar1
.frame $sp,0,$ra
.mask 0x00000000,0
.fmask 0x00000000,0
.set noreorder
.set nomacro
.set noat
# %bb.0: # %entry
// CHECK: lw ${{[0-9]+}}, 0($gp)
lw $1, %gp_rel(var1)($gp)
jr $ra
sltu $2, $zero, $1
.set at
.set macro
.set reorder
.end testvar1
$tmp0:
.size testvar1, ($tmp0)-testvar1
.globl testvar2
.align 2
.type testvar2,@function
.set nomips16
.ent testvar2
testvar2: # @testvar2
.frame $sp,0,$ra
.mask 0x00000000,0
.fmask 0x00000000,0
.set noreorder
.set nomacro
.set noat
# %bb.0: # %entry
// CHECK: lw ${{[0-9]+}}, 4($gp)
lw $1, %gp_rel(var2)($gp)
jr $ra
sltu $2, $zero, $1
.set at
.set macro
.set reorder
.end testvar2
$tmp1:
.size testvar2, ($tmp1)-testvar2
.type var1,@object # @var1
.local var1
.comm var1,4,4
.type var2,@object # @var2
.local var2
.comm var2,4,4