83 lines · plain
1// This test case will cause an internal EK_GPRel64BlockAddress to be2// produced. This was not handled for direct object and an assertion3// to occur. This is a variation on test case test/CodeGen/Mips/do_switch.ll4 5// RUN: llvm-mc < %s -filetype=obj -triple=mips64-pc-linux -mcpu=mips64 -target-abi=n646 7 .text8 .abicalls9 .section .mdebug.abi64,"",@progbits10 .file "/home/espindola/llvm/llvm/test/MC/Mips/do_switch.ll"11 .text12 .globl main13 .align 314 .type main,@function15 .set nomips1616 .ent main17main: # @main18 .frame $sp,16,$ra19 .mask 0x00000000,020 .fmask 0x00000000,021 .set noreorder22 .set nomacro23 .set noat24# %bb.0: # %entry25 daddiu $sp, $sp, -1626 lui $1, %hi(%neg(%gp_rel(main)))27 daddu $2, $1, $2528 addiu $1, $zero, 229 sw $1, 12($sp)30 lw $1, 12($sp)31 sltiu $4, $1, 432 dsll $3, $1, 3233 bnez $4, $BB0_234 nop35$BB0_1: # %bb436 addiu $2, $zero, 437 jr $ra38 daddiu $sp, $sp, 1639$BB0_2: # %entry40 daddiu $1, $2, %lo(%neg(%gp_rel(main)))41 dsrl $2, $3, 3242 daddiu $3, $zero, 843 dmult $2, $344 mflo $245 ld $3, %got_page($JTI0_0)($1)46 daddu $2, $2, $347 ld $2, %got_ofst($JTI0_0)($2)48 daddu $1, $2, $149 jr $150 nop51$BB0_3: # %bb552 addiu $2, $zero, 153 jr $ra54 daddiu $sp, $sp, 1655$BB0_4: # %bb156 addiu $2, $zero, 257 jr $ra58 daddiu $sp, $sp, 1659$BB0_5: # %bb260 addiu $2, $zero, 061 jr $ra62 daddiu $sp, $sp, 1663$BB0_6: # %bb364 addiu $2, $zero, 365 jr $ra66 daddiu $sp, $sp, 1667 .set at68 .set macro69 .set reorder70 .end main71$tmp0:72 .size main, ($tmp0)-main73 .section .rodata,"a",@progbits74 .align 375$JTI0_0:76 .gpdword ($BB0_3)77 .gpdword ($BB0_4)78 .gpdword ($BB0_5)79 .gpdword ($BB0_6)80 81 82 .text83