// RUN: llvm-mc -filetype=obj -triple=mips64el-pc-linux -mcpu=mips64 %s -o - \ // RUN: | llvm-readobj -r \ // RUN: | FileCheck %s // RUN: llvm-mc -filetype=obj -triple=mips64-pc-linux -mcpu=mips64 %s -o - \ // RUN: | llvm-readobj -r \ // RUN: | FileCheck %s // Check that the appropriate relocations were created. // R_MIPS_GPREL32/R_MIPS_64/R_MIPS_NONE // CHECK: Relocations [ // CHECK: Section ({{[a-z0-9]+}}) .rela.rodata { // CHECK-NEXT: 0x{{[0-9,A-F]+}} R_MIPS_GPREL32/R_MIPS_64/R_MIPS_NONE // CHECK-NEXT: 0x{{[0-9,A-F]+}} R_MIPS_GPREL32/R_MIPS_64/R_MIPS_NONE // CHECK-NEXT: 0x{{[0-9,A-F]+}} R_MIPS_GPREL32/R_MIPS_64/R_MIPS_NONE // CHECK-NEXT: 0x{{[0-9,A-F]+}} R_MIPS_GPREL32/R_MIPS_64/R_MIPS_NONE // CHECK-NEXT: } // CHECK-NEXT: ] .text .abicalls .section .mdebug.abi64,"",@progbits .file "/home/espindola/llvm/llvm/test/MC/Mips/elf-gprel-32-64.ll" .text .globl test .align 3 .type test,@function .set nomips16 .ent test test: # @test .frame $sp,0,$ra .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro .set noat # BB#0: # %entry lui $1, %hi(%neg(%gp_rel(test))) daddu $2, $1, $25 sltiu $1, $4, 4 dsll $3, $4, 32 bnez $1, $BB0_2 nop $BB0_1: # %sw.default b $BB0_3 addiu $2, $zero, -1 $BB0_2: # %entry daddiu $1, $2, %lo(%neg(%gp_rel(test))) dsrl $3, $3, 32 daddiu $4, $zero, 8 dmult $3, $4 mflo $3 ld $4, %got_page($JTI0_0)($1) daddu $3, $3, $4 ld $3, %got_ofst($JTI0_0)($3) daddu $1, $3, $1 jr $1 addiu $2, $zero, 1 $BB0_3: # %return jr $ra nop $BB0_4: # %sw.bb2 jr $ra addiu $2, $zero, 3 $BB0_5: # %sw.bb5 jr $ra addiu $2, $zero, 2 $BB0_6: # %sw.bb8 jr $ra addiu $2, $zero, 7 .set at .set macro .set reorder .end test $tmp0: .size test, ($tmp0)-test .section .rodata,"a",@progbits .align 3 $JTI0_0: .gpdword ($BB0_3) .gpdword ($BB0_4) .gpdword ($BB0_5) .gpdword ($BB0_6) .text