From: liuzhensong Date: Mon, 11 Jul 2022 03:02:44 +0000 (+0800) Subject: LoongArch: Add testcases for new relocate types. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2cb10f02b0e0d0d062c97c19defef1e5e334b13b;p=binutils-gdb.git LoongArch: Add testcases for new relocate types. gas/testsuite/gas/all/ gas.exp gas/testsuite/gas/loongarch/ jmp_op.d jmp_op.s macro_op.d macro_op.s macro_op_32.d macro_op_32.s macro_op_large_abs.d macro_op_large_abs.s macro_op_large_pc.d macro_op_large_pc.s reloc.d reloc.s ld/testsuite/ld-elf/ pr26936.d shared.exp ld/testsuite/ld-loongarch-elf/ attr-ifunc-4.c attr-ifunc-4.out disas-jirl.d ifunc.exp jmp_op.d jmp_op.s libnopic-global.s macro_op.d macro_op.s macro_op_32.d macro_op_32.s nopic-global-so.rd nopic-global-so.sd nopic-global.out nopic-global.s nopic-global.sd nopic-global.xd nopic-local.out nopic-local.rd nopic-local.s nopic-local.sd nopic-local.xd nopic-weak-global-so.rd nopic-weak-global-so.sd nopic-weak-global.out nopic-weak-global.s nopic-weak-global.sd nopic-weak-global.xd nopic-weak-local.out nopic-weak-local.rd nopic-weak-local.s nopic-weak-local.sd nopic-weak-local.xd pic.exp pic.ld --- diff --git a/gas/testsuite/gas/all/gas.exp b/gas/testsuite/gas/all/gas.exp index 279d9b3db2b..28570c53ac5 100644 --- a/gas/testsuite/gas/all/gas.exp +++ b/gas/testsuite/gas/all/gas.exp @@ -166,11 +166,11 @@ switch -glob $target_triplet { # symbols on relocs. setup_xfail "m68hc1*-*-*" "m6811-*-*" "m6812-*-*" "rl78-*-*" setup_xfail "riscv*-*-*" "rx-*-*" "vax*-*-*" "xgate*-*-*" "z8k-*-*" - setup_xfail "loongarch*-*-*" "avr-*-*" + setup_xfail "avr-*-*" run_dump_test redef2 setup_xfail "m68hc1*-*-*" "m6811-*-*" "m6812-*-*" "rl78-*-*" setup_xfail "riscv*-*-*" "rx-*-*" "vax*-*-*" "xgate*-*-*" "z8k-*-*" - setup_xfail "loongarch*-*-*" "avr-*-*" + setup_xfail "avr-*-*" # rs6000-aix disallows redefinition via .comm. if [is_xcoff_format] { setup_xfail *-*-* diff --git a/gas/testsuite/gas/loongarch/jmp_op.d b/gas/testsuite/gas/loongarch/jmp_op.d index caa61951b4b..fa939c780ed 100644 --- a/gas/testsuite/gas/loongarch/jmp_op.d +++ b/gas/testsuite/gas/loongarch/jmp_op.d @@ -1,68 +1,30 @@ #as: #objdump: -dr -.*:[ ]+file format .* +.*:[ ]+file format .* Disassembly of section .text: 00000000.* <.text>: -[ ]+0:[ ]+03400000 [ ]+andi[ ]+[ ]+\$zero, \$zero, 0x0 -[ ]+4:[ ]+60000004 [ ]+bgtz[ ]+[ ]+\$a0, 0[ ]+# 0x4 -[ ]+[ ]+[ ]+4: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+4: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+8:[ ]+64000080 [ ]+bgez[ ]+[ ]+\$a0, 0[ ]+# 0x8 -[ ]+[ ]+[ ]+8: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+8: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+c:[ ]+64000004 [ ]+blez[ ]+[ ]+\$a0, 0[ ]+# 0xc -[ ]+[ ]+[ ]+c: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+c: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+10:[ ]+40000080 [ ]+beqz[ ]+[ ]+\$a0, 0[ ]+# 0x10 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_POP_32_S_0_5_10_16_S2[ ]+\*ABS\* -[ ]+14:[ ]+44000080 [ ]+bnez[ ]+[ ]+\$a0, 0[ ]+# 0x14 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_POP_32_S_0_5_10_16_S2[ ]+\*ABS\* -[ ]+18:[ ]+48000000 [ ]+bceqz[ ]+[ ]+\$fcc0, 0[ ]+# 0x18 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_POP_32_S_0_5_10_16_S2[ ]+\*ABS\* -[ ]+1c:[ ]+48000100 [ ]+bcnez[ ]+[ ]+\$fcc0, 0[ ]+# 0x1c -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_POP_32_S_0_5_10_16_S2[ ]+\*ABS\* -[ ]+20:[ ]+4c000080 [ ]+jirl[ ]+[ ]+\$zero, \$a0, 0 -[ ]+24:[ ]+50000000 [ ]+b[ ]+[ ]+0[ ]+# 0x24 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_POP_32_S_0_10_10_16_S2[ ]+\*ABS\* -[ ]+28:[ ]+54000000 [ ]+bl[ ]+[ ]+0[ ]+# 0x28 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_POP_32_S_0_10_10_16_S2[ ]+\*ABS\* -[ ]+2c:[ ]+58000085 [ ]+beq[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x2c -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+30:[ ]+5c000085 [ ]+bne[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x30 -[ ]+[ ]+[ ]+30: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+30: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+34:[ ]+60000085 [ ]+blt[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x34 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+38:[ ]+600000a4 [ ]+blt[ ]+[ ]+\$a1, \$a0, 0[ ]+# 0x38 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+3c:[ ]+64000085 [ ]+bge[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x3c -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+40:[ ]+640000a4 [ ]+bge[ ]+[ ]+\$a1, \$a0, 0[ ]+# 0x40 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+44:[ ]+68000085 [ ]+bltu[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x44 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+48:[ ]+680000a4 [ ]+bltu[ ]+[ ]+\$a1, \$a0, 0[ ]+# 0x48 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+4c:[ ]+6c000085 [ ]+bgeu[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x4c -[ ]+[ ]+[ ]+4c: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+4c: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+50:[ ]+6c0000a4 [ ]+bgeu[ ]+[ ]+\$a1, \$a0, 0[ ]+# 0x50 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* +[ ]+0:[ ]+03400000[ ]+[ ]+andi[ ]+\$zero, \$zero, 0x0 +[ ]+4:[ ]+63fffc04[ ]+[ ]+bgtz[ ]+\$a0, -4\(0x3fffc\)[ ]+# 0x0 +[ ]+8:[ ]+67fff880[ ]+[ ]+bgez[ ]+\$a0, -8\(0x3fff8\)[ ]+# 0x0 +[ ]+c:[ ]+67fff404[ ]+[ ]+blez[ ]+\$a0, -12\(0x3fff4\)[ ]+# 0x0 +[ ]+10:[ ]+43fff09f[ ]+[ ]+beqz[ ]+\$a0, -16\(0x7ffff0\)[ ]+# 0x0 +[ ]+14:[ ]+47ffec9f[ ]+[ ]+bnez[ ]+\$a0, -20\(0x7fffec\)[ ]+# 0x0 +[ ]+18:[ ]+4bffe81f[ ]+[ ]+bceqz[ ]+\$fcc0, -24\(0x7fffe8\)[ ]+# 0x0 +[ ]+1c:[ ]+4bffe51f[ ]+[ ]+bcnez[ ]+\$fcc0, -28\(0x7fffe4\)[ ]+# 0x0 +[ ]+20:[ ]+4c000080[ ]+[ ]+jirl[ ]+\$zero, \$a0, 0 +[ ]+24:[ ]+53ffdfff[ ]+[ ]+b[ ]+-36\(0xfffffdc\)[ ]+# 0x0 +[ ]+28:[ ]+57ffdbff[ ]+[ ]+bl[ ]+-40\(0xfffffd8\)[ ]+# 0x0 +[ ]+2c:[ ]+5bffd485[ ]+[ ]+beq[ ]+\$a0, \$a1, -44\(0x3ffd4\)[ ]+# 0x0 +[ ]+30:[ ]+5fffd085[ ]+[ ]+bne[ ]+\$a0, \$a1, -48\(0x3ffd0\)[ ]+# 0x0 +[ ]+34:[ ]+63ffcc85[ ]+[ ]+blt[ ]+\$a0, \$a1, -52\(0x3ffcc\)[ ]+# 0x0 +[ ]+38:[ ]+63ffc8a4[ ]+[ ]+blt[ ]+\$a1, \$a0, -56\(0x3ffc8\)[ ]+# 0x0 +[ ]+3c:[ ]+67ffc485[ ]+[ ]+bge[ ]+\$a0, \$a1, -60\(0x3ffc4\)[ ]+# 0x0 +[ ]+40:[ ]+67ffc0a4[ ]+[ ]+bge[ ]+\$a1, \$a0, -64\(0x3ffc0\)[ ]+# 0x0 +[ ]+44:[ ]+6bffbc85[ ]+[ ]+bltu[ ]+\$a0, \$a1, -68\(0x3ffbc\)[ ]+# 0x0 +[ ]+48:[ ]+6bffb8a4[ ]+[ ]+bltu[ ]+\$a1, \$a0, -72\(0x3ffb8\)[ ]+# 0x0 +[ ]+4c:[ ]+6fffb485[ ]+[ ]+bgeu[ ]+\$a0, \$a1, -76\(0x3ffb4\)[ ]+# 0x0 +[ ]+50:[ ]+6fffb0a4[ ]+[ ]+bgeu[ ]+\$a1, \$a0, -80\(0x3ffb0\)[ ]+# 0x0 diff --git a/gas/testsuite/gas/loongarch/jmp_op.s b/gas/testsuite/gas/loongarch/jmp_op.s index 2ec20ed828a..1deb165aeba 100644 --- a/gas/testsuite/gas/loongarch/jmp_op.s +++ b/gas/testsuite/gas/loongarch/jmp_op.s @@ -1,22 +1,22 @@ .L1: nop -bgtz $r4,L1 -bgez $r4,L1 -blez $r4,L1 -beqz $r4,L1 -bnez $r4,L1 -bceqz $fcc0,L1 -bcnez $fcc0,L1 +bgtz $r4,.L1 +bgez $r4,.L1 +blez $r4,.L1 +beqz $r4,.L1 +bnez $r4,.L1 +bceqz $fcc0,.L1 +bcnez $fcc0,.L1 jr $r4 -b L1 -bl L1 -beq $r4,$r5,L1 -bne $r4,$r5,L1 -blt $r4,$r5,L1 -bgt $r4,$r5,L1 -bge $r4,$r5,L1 -ble $r4,$r5,L1 -bltu $r4,$r5,L1 -bgtu $r4,$r5,L1 -bgeu $r4,$r5,L1 -bleu $r4,$r5,L1 +b .L1 +bl .L1 +beq $r4,$r5,.L1 +bne $r4,$r5,.L1 +blt $r4,$r5,.L1 +bgt $r4,$r5,.L1 +bge $r4,$r5,.L1 +ble $r4,$r5,.L1 +bltu $r4,$r5,.L1 +bgtu $r4,$r5,.L1 +bgeu $r4,$r5,.L1 +bleu $r4,$r5,.L1 diff --git a/gas/testsuite/gas/loongarch/macro_op.d b/gas/testsuite/gas/loongarch/macro_op.d index fabd006b8c1..d264c4f25c5 100644 --- a/gas/testsuite/gas/loongarch/macro_op.d +++ b/gas/testsuite/gas/loongarch/macro_op.d @@ -1,733 +1,59 @@ #as: #objdump: -dr -#skip: loongarch32*-*-* +#skip: loongarch32-*-* -.*:[ ]+file format .* +.*:[ ]+file format .* Disassembly of section .text: -0000000000000000 <.text>: -[ ]+0:[ ]+00150004 [ ]+move[ ]+[ ]+\$a0, \$zero -[ ]+4:[ ]+02bffc04 [ ]+addi.w[ ]+[ ]+\$a0, \$zero, -1\(0xfff\) -[ ]+8:[ ]+00150004 [ ]+move[ ]+[ ]+\$a0, \$zero -[ ]+c:[ ]+02bffc04 [ ]+addi.w[ ]+[ ]+\$a0, \$zero, -1\(0xfff\) -[ ]+10:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+10: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+10: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+14:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+14: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+14: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+18:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+18: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+18: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+1c:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+20:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+24:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+24: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+28:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+28: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+28: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+28: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+2c:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+30:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+34:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+34: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+34: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+38:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+38: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+38: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+3c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+40:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+40: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+44:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+44: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+44: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+44: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+48:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+48: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+4c:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+50:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+50: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+50: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+54:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+54: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+54: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+58:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+5c:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+60:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+60: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+60: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+60: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+60: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+64:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+64: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+64: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+64: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+64: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+64: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+64: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+68:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+6c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+70:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+70: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+70: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+70: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+70: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+74:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000000 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+78:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000004 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+78: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+7c:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000008 -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+80:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+80: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x8000000c -[ ]+[ ]+[ ]+80: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+80: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+80: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+84:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+88:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+88: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+88: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+88: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+88: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+8c:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+90:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000000 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+94:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000004 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+94: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+98:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+98: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000008 -[ ]+[ ]+[ ]+98: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+98: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+98: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+98: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+98: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+9c:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x8000000c -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+a0:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+a4:[ ]+14000004 [ ]+lu12i.w[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+a4: R_LARCH_MARK_LA[ ]+L1 -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+L1 -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+a8:[ ]+03800084 [ ]+ori[ ]+[ ]+\$a0, \$a0, 0x0 -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+L1 -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+ac:[ ]+16000004 [ ]+lu32i.d[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+L1 -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+b0:[ ]+03000084 [ ]+lu52i.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+L1 -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+b4:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+b8:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+bc:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+c0:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+c4:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000000 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+c8:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000004 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+cc:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000008 -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+d0:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x8000000c -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+d4:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+d8:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+dc:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+e0:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+e4:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+e8:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+ec:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+f0:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+f4:[ ]+14000004 [ ]+lu12i.w[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_PUSH_TLS_TPREL[ ]+L1 -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+f8:[ ]+03800084 [ ]+ori[ ]+[ ]+\$a0, \$a0, 0x0 -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_PUSH_TLS_TPREL[ ]+L1 -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+fc:[ ]+16000004 [ ]+lu32i.d[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_TLS_TPREL[ ]+L1 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+100:[ ]+03000084 [ ]+lu52i.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_TLS_TPREL[ ]+L1 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+100: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+104:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+104: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+104: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+104: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+104: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+104: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+104: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+108:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+108: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+108: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+10c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+110:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+110: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+114:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+114: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+114: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+118:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+11c:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+120:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+120: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+120: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+120: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+120: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+120: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+120: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+124:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+124: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+124: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+128:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+128: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+12c:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+130:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+130: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+130: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+134:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+138:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+13c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+140:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+140: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+140: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+144:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+144: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+148:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+148: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+14c:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+150:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+150: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+150: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+150: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+150: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+150: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+150: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+154:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 +00000000.* <.text>: +[ ]+0:[ ]+00150004[ ]+move[ ]+\$a0,[ ]+\$zero +[ ]+4:[ ]+02bffc04[ ]+addi.w[ ]+\$a0,[ ]+\$zero,[ ]+-1\(0xfff\) +[ ]+8:[ ]+00150004[ ]+move[ ]+\$a0,[ ]+\$zero +[ ]+c:[ ]+02bffc04[ ]+addi.w[ ]+\$a0,[ ]+\$zero,[ ]+-1\(0xfff\) +[ ]+10:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+10:[ ]+R_LARCH_GOT_PC_HI20[ ]+.L1 +[ ]+14:[ ]+28c00084[ ]+ld.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+14:[ ]+R_LARCH_GOT_PC_LO12[ ]+.L1 +[ ]+18:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+18:[ ]+R_LARCH_GOT_PC_HI20[ ]+.L1 +[ ]+1c:[ ]+28c00084[ ]+ld.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+1c:[ ]+R_LARCH_GOT_PC_LO12[ ]+.L1 +[ ]+20:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+20:[ ]+R_LARCH_PCALA_HI20[ ]+.L1 +[ ]+24:[ ]+02c00084[ ]+addi.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+24:[ ]+R_LARCH_PCALA_LO12[ ]+.L1 +[ ]+28:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+28:[ ]+R_LARCH_MARK_LA[ ]+\*ABS\* +[ ]+28:[ ]+R_LARCH_ABS_HI20[ ]+.L1 +[ ]+2c:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+2c:[ ]+R_LARCH_ABS_LO12[ ]+.L1 +[ ]+30:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+30:[ ]+R_LARCH_ABS64_LO20[ ]+.L1 +[ ]+34:[ ]+03000084[ ]+lu52i.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+34:[ ]+R_LARCH_ABS64_HI12[ ]+.L1 +[ ]+38:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+38:[ ]+R_LARCH_PCALA_HI20[ ]+.L1 +[ ]+3c:[ ]+02c00084[ ]+addi.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+3c:[ ]+R_LARCH_PCALA_LO12[ ]+.L1 +[ ]+40:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+40:[ ]+R_LARCH_GOT_PC_HI20[ ]+.L1 +[ ]+44:[ ]+28c00084[ ]+ld.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+44:[ ]+R_LARCH_GOT_PC_LO12[ ]+.L1 +[ ]+48:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+48:[ ]+R_LARCH_TLS_LE_HI20[ ]+TLS1 +[ ]+4c:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+4c:[ ]+R_LARCH_TLS_LE_LO12[ ]+TLS1 +[ ]+50:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+50:[ ]+R_LARCH_TLS_IE_PC_HI20[ ]+TLS1 +[ ]+54:[ ]+28c00084[ ]+ld.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+54:[ ]+R_LARCH_TLS_IE_PC_LO12[ ]+TLS1 +[ ]+58:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+58:[ ]+R_LARCH_TLS_LD_PC_HI20[ ]+TLS1 +[ ]+5c:[ ]+02c00084[ ]+addi.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+5c:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+60:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+60:[ ]+R_LARCH_TLS_GD_PC_HI20[ ]+TLS1 +[ ]+64:[ ]+02c00084[ ]+addi.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+64:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 diff --git a/gas/testsuite/gas/loongarch/macro_op.s b/gas/testsuite/gas/loongarch/macro_op.s index d83261f55f0..0c3331416fd 100644 --- a/gas/testsuite/gas/loongarch/macro_op.s +++ b/gas/testsuite/gas/loongarch/macro_op.s @@ -1,29 +1,15 @@ -.L1: -li.w $r4,0 -li.w $r4,0xffffffff -li.d $r4,0 -li.d $r4,0xffffffffffffffff -la $r4,L1 -la.global $r4,L1 -la.global $r4,$r5,L1 -la.global $r4,L1 -la.global $r4,$r5,L1 -la.global $r4,L1 -la.global $r4,$r5,L1 -la.local $r4,L1 -la.local $r4,$r5,L1 -la.local $r4,L1 -la.local $r4,$r5,L1 -la.abs $r4,L1 -la.pcrel $r4,L1 -la.pcrel $r4,L1 -la.pcrel $r4,$r5,L1 -la.got $r4,L1 -la.got $r4,$r5,L1 -la.tls.le $r4,L1 -la.tls.ie $r4,L1 -la.tls.ie $r4,$r5,L1 -la.tls.ld $r4,L1 -la.tls.ld $r4,$r5,L1 -la.tls.gd $r4,L1 -la.tls.gd $r4,$r5,L1 +li.w $r4, 0 +li.w $r4, 0xffffffff +li.d $r4, 0 +li.d $r4, 0xffffffffffffffff +la $r4, .L1 +la.global $r4, .L1 +la.local $r4, .L1 +la.abs $r4, .L1 +la.pcrel $r4, .L1 +la.got $r4, .L1 + +la.tls.le $r4, TLS1 +la.tls.ie $r4, TLS1 +la.tls.ld $r4, TLS1 +la.tls.gd $r4, TLS1 diff --git a/gas/testsuite/gas/loongarch/macro_op_32.d b/gas/testsuite/gas/loongarch/macro_op_32.d new file mode 100644 index 00000000000..145d852b2be --- /dev/null +++ b/gas/testsuite/gas/loongarch/macro_op_32.d @@ -0,0 +1,55 @@ +#as: +#objdump: -dr +#skip: loongarch64-*-* + +.*:[ ]+file format .* + + +Disassembly of section .text: + +00000000.* <.text>: +[ ]+0:[ ]+00150004[ ]+move[ ]+\$a0,[ ]+\$zero +[ ]+4:[ ]+02bffc04[ ]+addi.w[ ]+\$a0,[ ]+\$zero,[ ]+-1\(0xfff\) +[ ]+8:[ ]+00150004[ ]+move[ ]+\$a0,[ ]+\$zero +[ ]+c:[ ]+02bffc04[ ]+addi.w[ ]+\$a0,[ ]+\$zero,[ ]+-1\(0xfff\) +[ ]+10:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+10:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+14:[ ]+28800084[ ]+ld.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+14:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+18:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+18:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+1c:[ ]+28800084[ ]+ld.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+1c:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+20:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+20:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+24:[ ]+02800084[ ]+addi.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+24:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+28:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+28:[ ]+R_LARCH_MARK_LA[ ]+\*ABS\* +[ ]+28:[ ]+R_LARCH_ABS_HI20[ ]+.text +[ ]+2c:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+2c:[ ]+R_LARCH_ABS_LO12[ ]+.text +[ ]+30:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+30:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+34:[ ]+02800084[ ]+addi.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+34:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+38:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+38:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+3c:[ ]+28800084[ ]+ld.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+3c:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+40:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+40:[ ]+R_LARCH_TLS_LE_HI20[ ]+TLS1 +[ ]+44:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+44:[ ]+R_LARCH_TLS_LE_LO12[ ]+TLS1 +[ ]+48:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+48:[ ]+R_LARCH_TLS_IE_PC_HI20[ ]+TLS1 +[ ]+4c:[ ]+28800084[ ]+ld.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+4c:[ ]+R_LARCH_TLS_IE_PC_LO12[ ]+TLS1 +[ ]+50:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+50:[ ]+R_LARCH_TLS_LD_PC_HI20[ ]+TLS1 +[ ]+54:[ ]+02800084[ ]+addi.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+54:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+58:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+58:[ ]+R_LARCH_TLS_GD_PC_HI20[ ]+TLS1 +[ ]+5c:[ ]+02800084[ ]+addi.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+5c:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 diff --git a/gas/testsuite/gas/loongarch/macro_op_32.s b/gas/testsuite/gas/loongarch/macro_op_32.s new file mode 100644 index 00000000000..7f19565e156 --- /dev/null +++ b/gas/testsuite/gas/loongarch/macro_op_32.s @@ -0,0 +1,16 @@ +.L1: + li.w $r4, 0 + li.w $r4, 0xffffffff + li.w $r4, 0 + li.w $r4, 0xffffffff + la $r4, .L1 + la.global $r4, .L1 + la.local $r4, .L1 + la.abs $r4, .L1 + la.pcrel $r4, .L1 + la.got $r4, .L1 + + la.tls.le $r4, TLS1 + la.tls.ie $r4, TLS1 + la.tls.ld $r4, TLS1 + la.tls.gd $r4, TLS1 diff --git a/gas/testsuite/gas/loongarch/macro_op_large_abs.d b/gas/testsuite/gas/loongarch/macro_op_large_abs.d new file mode 100644 index 00000000000..c3214a859e6 --- /dev/null +++ b/gas/testsuite/gas/loongarch/macro_op_large_abs.d @@ -0,0 +1,77 @@ +#as: +#objdump: -dr +#skip: loongarch32-*-* + +.*:[ ]+file format .* + + +Disassembly of section .text: + +00000000.* <.text>: +[ ]+0:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+0:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+4:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+4:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+8:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+8:[ ]+R_LARCH_PCALA64_LO20[ ]+.text +[ ]+c:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+c:[ ]+R_LARCH_PCALA64_HI12[ ]+.text +[ ]+10:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+14:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+14:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+18:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+18:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+1c:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+1c:[ ]+R_LARCH_GOT64_PC_LO20[ ]+.text +[ ]+20:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+20:[ ]+R_LARCH_GOT64_PC_HI12[ ]+.text +[ ]+24:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+28:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+28:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+2c:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+2c:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+30:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+30:[ ]+R_LARCH_PCALA64_LO20[ ]+.text +[ ]+34:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+34:[ ]+R_LARCH_PCALA64_HI12[ ]+.text +[ ]+38:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+3c:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+3c:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+40:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+40:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+44:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+44:[ ]+R_LARCH_GOT64_PC_LO20[ ]+.text +[ ]+48:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+48:[ ]+R_LARCH_GOT64_PC_HI12[ ]+.text +[ ]+4c:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+50:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+50:[ ]+R_LARCH_TLS_LE_HI20[ ]+TLS1 +[ ]+54:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+54:[ ]+R_LARCH_TLS_LE_LO12[ ]+TLS1 +[ ]+58:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+58:[ ]+R_LARCH_TLS_IE_PC_HI20[ ]+TLS1 +[ ]+5c:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+5c:[ ]+R_LARCH_TLS_IE_PC_LO12[ ]+TLS1 +[ ]+60:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+60:[ ]+R_LARCH_TLS_IE64_PC_LO20[ ]+TLS1 +[ ]+64:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+64:[ ]+R_LARCH_TLS_IE64_PC_HI12[ ]+TLS1 +[ ]+68:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+6c:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+6c:[ ]+R_LARCH_TLS_LD_PC_HI20[ ]+TLS1 +[ ]+70:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+70:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+74:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+74:[ ]+R_LARCH_GOT64_PC_LO20[ ]+TLS1 +[ ]+78:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+78:[ ]+R_LARCH_GOT64_PC_HI12[ ]+TLS1 +[ ]+7c:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+80:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+80:[ ]+R_LARCH_TLS_GD_PC_HI20[ ]+TLS1 +[ ]+84:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+84:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+88:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+88:[ ]+R_LARCH_GOT64_PC_LO20[ ]+TLS1 +[ ]+8c:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+8c:[ ]+R_LARCH_GOT64_PC_HI12[ ]+TLS1 +[ ]+90:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 diff --git a/gas/testsuite/gas/loongarch/macro_op_large_abs.s b/gas/testsuite/gas/loongarch/macro_op_large_abs.s new file mode 100644 index 00000000000..fd76391dbea --- /dev/null +++ b/gas/testsuite/gas/loongarch/macro_op_large_abs.s @@ -0,0 +1,9 @@ +.L1: +la.local $r4, $r5, .L1 +la.global $r4, $r5, .L1 +la.pcrel $r4, $r5, .L1 +la.got $r4, $r5, .L1 +la.tls.le $r4, TLS1 +la.tls.ie $r4, $r5, TLS1 +la.tls.ld $r4, $r5, TLS1 +la.tls.gd $r4, $r5, TLS1 diff --git a/gas/testsuite/gas/loongarch/macro_op_large_pc.d b/gas/testsuite/gas/loongarch/macro_op_large_pc.d new file mode 100644 index 00000000000..c3214a859e6 --- /dev/null +++ b/gas/testsuite/gas/loongarch/macro_op_large_pc.d @@ -0,0 +1,77 @@ +#as: +#objdump: -dr +#skip: loongarch32-*-* + +.*:[ ]+file format .* + + +Disassembly of section .text: + +00000000.* <.text>: +[ ]+0:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+0:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+4:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+4:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+8:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+8:[ ]+R_LARCH_PCALA64_LO20[ ]+.text +[ ]+c:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+c:[ ]+R_LARCH_PCALA64_HI12[ ]+.text +[ ]+10:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+14:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+14:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+18:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+18:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+1c:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+1c:[ ]+R_LARCH_GOT64_PC_LO20[ ]+.text +[ ]+20:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+20:[ ]+R_LARCH_GOT64_PC_HI12[ ]+.text +[ ]+24:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+28:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+28:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+2c:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+2c:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+30:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+30:[ ]+R_LARCH_PCALA64_LO20[ ]+.text +[ ]+34:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+34:[ ]+R_LARCH_PCALA64_HI12[ ]+.text +[ ]+38:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+3c:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+3c:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+40:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+40:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+44:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+44:[ ]+R_LARCH_GOT64_PC_LO20[ ]+.text +[ ]+48:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+48:[ ]+R_LARCH_GOT64_PC_HI12[ ]+.text +[ ]+4c:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+50:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+50:[ ]+R_LARCH_TLS_LE_HI20[ ]+TLS1 +[ ]+54:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+54:[ ]+R_LARCH_TLS_LE_LO12[ ]+TLS1 +[ ]+58:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+58:[ ]+R_LARCH_TLS_IE_PC_HI20[ ]+TLS1 +[ ]+5c:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+5c:[ ]+R_LARCH_TLS_IE_PC_LO12[ ]+TLS1 +[ ]+60:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+60:[ ]+R_LARCH_TLS_IE64_PC_LO20[ ]+TLS1 +[ ]+64:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+64:[ ]+R_LARCH_TLS_IE64_PC_HI12[ ]+TLS1 +[ ]+68:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+6c:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+6c:[ ]+R_LARCH_TLS_LD_PC_HI20[ ]+TLS1 +[ ]+70:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+70:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+74:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+74:[ ]+R_LARCH_GOT64_PC_LO20[ ]+TLS1 +[ ]+78:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+78:[ ]+R_LARCH_GOT64_PC_HI12[ ]+TLS1 +[ ]+7c:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+80:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+80:[ ]+R_LARCH_TLS_GD_PC_HI20[ ]+TLS1 +[ ]+84:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+84:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+88:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+88:[ ]+R_LARCH_GOT64_PC_LO20[ ]+TLS1 +[ ]+8c:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+8c:[ ]+R_LARCH_GOT64_PC_HI12[ ]+TLS1 +[ ]+90:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 diff --git a/gas/testsuite/gas/loongarch/macro_op_large_pc.s b/gas/testsuite/gas/loongarch/macro_op_large_pc.s new file mode 100644 index 00000000000..fd76391dbea --- /dev/null +++ b/gas/testsuite/gas/loongarch/macro_op_large_pc.s @@ -0,0 +1,9 @@ +.L1: +la.local $r4, $r5, .L1 +la.global $r4, $r5, .L1 +la.pcrel $r4, $r5, .L1 +la.got $r4, $r5, .L1 +la.tls.le $r4, TLS1 +la.tls.ie $r4, $r5, TLS1 +la.tls.ld $r4, $r5, TLS1 +la.tls.gd $r4, $r5, TLS1 diff --git a/gas/testsuite/gas/loongarch/reloc.d b/gas/testsuite/gas/loongarch/reloc.d new file mode 100644 index 00000000000..6f5f110b1af --- /dev/null +++ b/gas/testsuite/gas/loongarch/reloc.d @@ -0,0 +1,167 @@ +#as: +#objdump: -dr +#skip: loongarch32-*-* + +.*:[ ]+file format .* + + +Disassembly of section .text: + +00000000.* <.text>: +[ ]+0:[ ]+03400000[ ]+andi[ ]+\$zero,[ ]+\$zero,[ ]+0x0 +[ ]+4:[ ]+58000085[ ]+beq[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0x4 +[ ]+4:[ ]+R_LARCH_B16[ ]+.L1 +[ ]+8:[ ]+5c000085[ ]+bne[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0x8 +[ ]+8:[ ]+R_LARCH_B16[ ]+.L1 +[ ]+c:[ ]+60000085[ ]+blt[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0xc +[ ]+c:[ ]+R_LARCH_B16[ ]+.L1 +[ ]+10:[ ]+64000085[ ]+bge[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0x10 +[ ]+10:[ ]+R_LARCH_B16[ ]+.L1 +[ ]+14:[ ]+68000085[ ]+bltu[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0x14 +[ ]+14:[ ]+R_LARCH_B16[ ]+.L1 +[ ]+18:[ ]+6c000085[ ]+bgeu[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0x18 +[ ]+18:[ ]+R_LARCH_B16[ ]+.L1 +[ ]+1c:[ ]+4c0000a4[ ]+jirl[ ]+\$a0,[ ]+\$a1,[ ]+0 +[ ]+1c:[ ]+R_LARCH_B16[ ]+.L1 +[ ]+20:[ ]+40000080[ ]+beqz[ ]+\$a0,[ ]+0[ ]+#[ ]+0x20 +[ ]+20:[ ]+R_LARCH_B21[ ]+.L1 +[ ]+24:[ ]+44000080[ ]+bnez[ ]+\$a0,[ ]+0[ ]+#[ ]+0x24 +[ ]+24:[ ]+R_LARCH_B21[ ]+.L1 +[ ]+28:[ ]+50000000[ ]+b[ ]+0[ ]+#[ ]+0x28 +[ ]+28:[ ]+R_LARCH_B26[ ]+.L1 +[ ]+2c:[ ]+54000000[ ]+bl[ ]+0[ ]+#[ ]+0x2c +[ ]+2c:[ ]+R_LARCH_B26[ ]+.L1 +[ ]+30:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+30:[ ]+R_LARCH_ABS_HI20[ ]+.L1 +[ ]+34:[ ]+038000a4[ ]+ori[ ]+\$a0,[ ]+\$a1,[ ]+0x0 +[ ]+34:[ ]+R_LARCH_ABS_LO12[ ]+.L1 +[ ]+38:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+38:[ ]+R_LARCH_ABS64_LO20[ ]+.L1 +[ ]+3c:[ ]+03000085[ ]+lu52i.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+3c:[ ]+R_LARCH_ABS64_HI12[ ]+.L1 +[ ]+40:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+40:[ ]+R_LARCH_PCALA_HI20[ ]+.L1 +[ ]+44:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+44:[ ]+R_LARCH_GOT_PC_HI20[ ]+.L1 +[ ]+48:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+48:[ ]+R_LARCH_GOT_PC_LO12[ ]+.L1 +[ ]+4c:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+4c:[ ]+R_LARCH_TLS_IE_PC_HI20[ ]+TLSL1 +[ ]+50:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+50:[ ]+R_LARCH_TLS_LD_PC_HI20[ ]+TLSL1 +[ ]+54:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+54:[ ]+R_LARCH_TLS_GD_PC_HI20[ ]+TLSL1 +[ ]+58:[ ]+02800085[ ]+addi.w[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+58:[ ]+R_LARCH_PCALA_LO12[ ]+.L1 +[ ]+5c:[ ]+02c00085[ ]+addi.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+5c:[ ]+R_LARCH_PCALA_LO12[ ]+.L1 +[ ]+60:[ ]+28000085[ ]+ld.b[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+60:[ ]+R_LARCH_PCALA_LO12[ ]+.L1 +[ ]+64:[ ]+28400085[ ]+ld.h[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+64:[ ]+R_LARCH_PCALA_LO12[ ]+.L1 +[ ]+68:[ ]+28800085[ ]+ld.w[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+68:[ ]+R_LARCH_PCALA_LO12[ ]+.L1 +[ ]+6c:[ ]+28c00085[ ]+ld.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+6c:[ ]+R_LARCH_PCALA_LO12[ ]+.L1 +[ ]+70:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+70:[ ]+R_LARCH_PCALA64_LO20[ ]+.L1 +[ ]+74:[ ]+03000085[ ]+lu52i.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+74:[ ]+R_LARCH_PCALA64_LO20[ ]+.L1 +[ ]+78:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+78:[ ]+R_LARCH_GOT64_PC_LO20[ ]+.L1 +[ ]+7c:[ ]+03000085[ ]+lu52i.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+7c:[ ]+R_LARCH_GOT64_PC_HI12[ ]+.L1 +[ ]+80:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+80:[ ]+R_LARCH_GOT_HI20[ ]+.L1 +[ ]+84:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+84:[ ]+R_LARCH_GOT_LO12[ ]+.L1 +[ ]+88:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+88:[ ]+R_LARCH_GOT64_LO20[ ]+.L1 +[ ]+8c:[ ]+03000085[ ]+lu52i.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+8c:[ ]+R_LARCH_GOT64_HI12[ ]+.L1 +[ ]+90:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+90:[ ]+R_LARCH_TLS_LE_HI20[ ]+TLSL1 +[ ]+94:[ ]+03800085[ ]+ori[ ]+\$a1,[ ]+\$a0,[ ]+0x0 +[ ]+94:[ ]+R_LARCH_TLS_LE_LO12[ ]+TLSL1 +[ ]+98:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+98:[ ]+R_LARCH_TLS_LE64_LO20[ ]+TLSL1 +[ ]+9c:[ ]+03000085[ ]+lu52i.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+9c:[ ]+R_LARCH_TLS_LE64_HI12[ ]+TLSL1 +[ ]+a0:[ ]+58000085[ ]+beq[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0xa0 +[ ]+a0:[ ]+R_LARCH_B16[ ]+.L1\+0x8 +[ ]+a4:[ ]+5c000085[ ]+bne[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0xa4 +[ ]+a4:[ ]+R_LARCH_B16[ ]+.L1\+0x8 +[ ]+a8:[ ]+60000085[ ]+blt[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0xa8 +[ ]+a8:[ ]+R_LARCH_B16[ ]+.L1\+0x8 +[ ]+ac:[ ]+64000085[ ]+bge[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0xac +[ ]+ac:[ ]+R_LARCH_B16[ ]+.L1\+0x8 +[ ]+b0:[ ]+68000085[ ]+bltu[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0xb0 +[ ]+b0:[ ]+R_LARCH_B16[ ]+.L1\+0x8 +[ ]+b4:[ ]+6c000085[ ]+bgeu[ ]+\$a0,[ ]+\$a1,[ ]+0[ ]+#[ ]+0xb4 +[ ]+b4:[ ]+R_LARCH_B16[ ]+.L1\+0x8 +[ ]+b8:[ ]+4c0000a4[ ]+jirl[ ]+\$a0,[ ]+\$a1,[ ]+0 +[ ]+b8:[ ]+R_LARCH_B16[ ]+.L1\+0x8 +[ ]+bc:[ ]+40000080[ ]+beqz[ ]+\$a0,[ ]+0[ ]+#[ ]+0xbc +[ ]+bc:[ ]+R_LARCH_B21[ ]+.L1\+0x8 +[ ]+c0:[ ]+44000080[ ]+bnez[ ]+\$a0,[ ]+0[ ]+#[ ]+0xc0 +[ ]+c0:[ ]+R_LARCH_B21[ ]+.L1\+0x8 +[ ]+c4:[ ]+50000000[ ]+b[ ]+0[ ]+#[ ]+0xc4 +[ ]+c4:[ ]+R_LARCH_B26[ ]+.L1\+0x8 +[ ]+c8:[ ]+54000000[ ]+bl[ ]+0[ ]+#[ ]+0xc8 +[ ]+c8:[ ]+R_LARCH_B26[ ]+.L1\+0x8 +[ ]+cc:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+cc:[ ]+R_LARCH_ABS_HI20[ ]+.L1\+0x8 +[ ]+d0:[ ]+038000a4[ ]+ori[ ]+\$a0,[ ]+\$a1,[ ]+0x0 +[ ]+d0:[ ]+R_LARCH_ABS_LO12[ ]+.L1\+0x8 +[ ]+d4:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+d4:[ ]+R_LARCH_ABS64_LO20[ ]+.L1\+0x8 +[ ]+d8:[ ]+03000085[ ]+lu52i.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+d8:[ ]+R_LARCH_ABS64_HI12[ ]+.L1\+0x8 +[ ]+dc:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+dc:[ ]+R_LARCH_PCALA_HI20[ ]+.L1\+0x8 +[ ]+e0:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+e0:[ ]+R_LARCH_GOT_PC_HI20[ ]+.L1\+0x8 +[ ]+e4:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+e4:[ ]+R_LARCH_GOT_PC_LO12[ ]+.L1\+0x8 +[ ]+e8:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+e8:[ ]+R_LARCH_TLS_IE_PC_HI20[ ]+TLSL1\+0x8 +[ ]+ec:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+ec:[ ]+R_LARCH_TLS_LD_PC_HI20[ ]+TLSL1\+0x8 +[ ]+f0:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+f0:[ ]+R_LARCH_TLS_GD_PC_HI20[ ]+TLSL1\+0x8 +[ ]+f4:[ ]+02800085[ ]+addi.w[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+f4:[ ]+R_LARCH_PCALA_LO12[ ]+.L1\+0x8 +[ ]+f8:[ ]+02c00085[ ]+addi.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+f8:[ ]+R_LARCH_PCALA_LO12[ ]+.L1\+0x8 +[ ]+fc:[ ]+28000085[ ]+ld.b[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+fc:[ ]+R_LARCH_PCALA_LO12[ ]+.L1\+0x8 +[ ]+100:[ ]+28400085[ ]+ld.h[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+100:[ ]+R_LARCH_PCALA_LO12[ ]+.L1\+0x8 +[ ]+104:[ ]+28800085[ ]+ld.w[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+104:[ ]+R_LARCH_PCALA_LO12[ ]+.L1\+0x8 +[ ]+108:[ ]+28c00085[ ]+ld.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+108:[ ]+R_LARCH_PCALA_LO12[ ]+.L1\+0x8 +[ ]+10c:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+10c:[ ]+R_LARCH_PCALA64_LO20[ ]+.L1\+0x8 +[ ]+110:[ ]+03000085[ ]+lu52i.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+110:[ ]+R_LARCH_PCALA64_LO20[ ]+.L1\+0x8 +[ ]+114:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+114:[ ]+R_LARCH_GOT64_PC_LO20[ ]+.L1\+0x8 +[ ]+118:[ ]+03000085[ ]+lu52i.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+118:[ ]+R_LARCH_GOT64_PC_HI12[ ]+.L1\+0x8 +[ ]+11c:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+11c:[ ]+R_LARCH_GOT_HI20[ ]+.L1\+0x8 +[ ]+120:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+120:[ ]+R_LARCH_GOT_LO12[ ]+.L1\+0x8 +[ ]+124:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+124:[ ]+R_LARCH_GOT64_LO20[ ]+.L1\+0x8 +[ ]+128:[ ]+03000085[ ]+lu52i.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+128:[ ]+R_LARCH_GOT64_HI12[ ]+.L1\+0x8 +[ ]+12c:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+12c:[ ]+R_LARCH_TLS_LE_HI20[ ]+TLSL1\+0x8 +[ ]+130:[ ]+03800085[ ]+ori[ ]+\$a1,[ ]+\$a0,[ ]+0x0 +[ ]+130:[ ]+R_LARCH_TLS_LE_LO12[ ]+TLSL1\+0x8 +[ ]+134:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+134:[ ]+R_LARCH_TLS_LE64_LO20[ ]+TLSL1\+0x8 +[ ]+138:[ ]+03000085[ ]+lu52i.d[ ]+\$a1,[ ]+\$a0,[ ]+0 +[ ]+138:[ ]+R_LARCH_TLS_LE64_HI12[ ]+TLSL1\+0x8 diff --git a/gas/testsuite/gas/loongarch/reloc.s b/gas/testsuite/gas/loongarch/reloc.s new file mode 100644 index 00000000000..a67fecd9429 --- /dev/null +++ b/gas/testsuite/gas/loongarch/reloc.s @@ -0,0 +1,144 @@ +/* Test insn relocs. */ +.text +nop + +/* Jump Insns. */ +/* b16. */ +beq $r4,$r5,%b16(.L1) +bne $r4,$r5,%b16(.L1) +blt $r4,$r5,%b16(.L1) +bge $r4,$r5,%b16(.L1) +bltu $r4,$r5,%b16(.L1) +bgeu $r4,$r5,%b16(.L1) +jirl $r4,$r5,%b16(.L1) + +/* b21. */ +beqz $r4,%b21(.L1) +bnez $r4,%b21(.L1) + +/* b26. */ +b %b26(.L1) +bl %b26(.L1) + + +/* ABS Insns. */ +/* lu12i.w. */ +lu12i.w $r4,%abs_hi20(.L1) + +/* ori */ +ori $r4,$r5,%abs_lo12(.L1) + +/* lu32i.d. */ +lu32i.d $r4,%abs64_lo20(.L1) + +/* lu52i.d. */ +lu52i.d $r5,$r4,%abs64_hi12(.L1) + + +/* Pcala Insns. */ +/* pcalau12i. */ +pcalau12i $r4,%pc_hi20(.L1) +pcalau12i $r4,%got_pc_hi20(.L1) +pcalau12i $r4,%got_pc_lo12(.L1) +pcalau12i $r4,%ie_pc_hi20(TLSL1) +pcalau12i $r4,%ld_pc_hi20(TLSL1) +pcalau12i $r4,%gd_pc_hi20(TLSL1) + +/* addi.w/d ld.b/h/w/d. */ +addi.w $r5,$r4,%pc_lo12(.L1) +addi.d $r5,$r4,%pc_lo12(.L1) +ld.b $r5,$r4,%pc_lo12(.L1) +ld.h $r5,$r4,%pc_lo12(.L1) +ld.w $r5,$r4,%pc_lo12(.L1) +ld.d $r5,$r4,%pc_lo12(.L1) +lu32i.d $r4,%pc64_lo20(.L1) +lu52i.d $r5,$r4,%pc64_lo20(.L1) +lu32i.d $r4,%got64_pc_lo20(.L1) +lu52i.d $r5,$r4,%got64_pc_hi12(.L1) + + +/* GOT64 Insns. */ +/* lu12i.w. */ +lu12i.w $r4,%got_hi20(.L1) +ori $r4,$r4,%got_lo12(.L1) +lu32i.d $r4,%got64_lo20(.L1) +lu52i.d $r5,$r4,%got64_hi12(.L1) + + +/* TLS Insns. */ +lu12i.w $r4,%le_hi20(TLSL1) +ori $r5,$r4,%le_lo12(TLSL1) +lu32i.d $r4,%le64_lo20(TLSL1) +lu52i.d $r5,$r4,%le64_hi12(TLSL1) + + + +/* Insns with addend. */ +/* Jump Insns. */ +/* b16. */ +beq $r4,$r5,%b16(.L1 + 0x8) +bne $r4,$r5,%b16(.L1 + 0x8) +blt $r4,$r5,%b16(.L1 + 0x8) +bge $r4,$r5,%b16(.L1 + 0x8) +bltu $r4,$r5,%b16(.L1 + 0x8) +bgeu $r4,$r5,%b16(.L1 + 0x8) +jirl $r4,$r5,%b16(.L1 + 0x8) + +/* b21. */ +beqz $r4,%b21(.L1 + 0x8) +bnez $r4,%b21(.L1 + 0x8) + +/* b26. */ +b %b26(.L1 + 0x8) +bl %b26(.L1 + 0x8) + + +/* ABS Insns. */ +/* lu12i.w. */ +lu12i.w $r4,%abs_hi20(.L1 + 0x8) + +/* ori */ +ori $r4,$r5,%abs_lo12(.L1 + 0x8) + +/* lu32i.d. */ +lu32i.d $r4,%abs64_lo20(.L1 + 0x8) + +/* lu52i.d. */ +lu52i.d $r5,$r4,%abs64_hi12(.L1 + 0x8) + + +/* Pcala Insns. */ +/* pcalau12i. */ +pcalau12i $r4,%pc_hi20(.L1 + 0x8) +pcalau12i $r4,%got_pc_hi20(.L1 + 0x8) +pcalau12i $r4,%got_pc_lo12(.L1 + 0x8) +pcalau12i $r4,%ie_pc_hi20(TLSL1 + 0x8) +pcalau12i $r4,%ld_pc_hi20(TLSL1 + 0x8) +pcalau12i $r4,%gd_pc_hi20(TLSL1 + 0x8) + +/* addi.w/d ld.b/h/w/d. */ +addi.w $r5,$r4,%pc_lo12(.L1 + 0x8) +addi.d $r5,$r4,%pc_lo12(.L1 + 0x8) +ld.b $r5,$r4,%pc_lo12(.L1 + 0x8) +ld.h $r5,$r4,%pc_lo12(.L1 + 0x8) +ld.w $r5,$r4,%pc_lo12(.L1 + 0x8) +ld.d $r5,$r4,%pc_lo12(.L1 + 0x8) +lu32i.d $r4,%pc64_lo20(.L1 + 0x8) +lu52i.d $r5,$r4,%pc64_lo20(.L1 + 0x8) +lu32i.d $r4,%got64_pc_lo20(.L1 + 0x8) +lu52i.d $r5,$r4,%got64_pc_hi12(.L1 + 0x8) + + +/* GOT64 Insns. */ +/* lu12i.w. */ +lu12i.w $r4,%got_hi20(.L1 + 0x8) +ori $r4,$r4,%got_lo12(.L1 + 0x8) +lu32i.d $r4,%got64_lo20(.L1 + 0x8) +lu52i.d $r5,$r4,%got64_hi12(.L1 + 0x8) + + +/* TLS Insns. */ +lu12i.w $r4,%le_hi20(TLSL1 + 0x8) +ori $r5,$r4,%le_lo12(TLSL1 + 0x8) +lu32i.d $r4,%le64_lo20(TLSL1 + 0x8) +lu52i.d $r5,$r4,%le64_hi12(TLSL1 + 0x8) diff --git a/ld/testsuite/ld-elf/pr26936.d b/ld/testsuite/ld-elf/pr26936.d index 9115f810465..c479f475829 100644 --- a/ld/testsuite/ld-elf/pr26936.d +++ b/ld/testsuite/ld-elf/pr26936.d @@ -9,7 +9,7 @@ # sed. mn10300 and riscv put different numbers of local symbols in # linkonce section and comdat sections. xtensa has more than one member # in comdat groups. -#xfail: am33_2.0-*-* hppa*-*-hpux* mn10300-*-* riscv*-*-* xtensa*-*-* loongarch*-*-* +#xfail: am33_2.0-*-* hppa*-*-hpux* mn10300-*-* riscv*-*-* xtensa*-*-* #... CU: .*/pr26936c.s: diff --git a/ld/testsuite/ld-elf/shared.exp b/ld/testsuite/ld-elf/shared.exp index 06c3202d5cc..44924b097aa 100644 --- a/ld/testsuite/ld-elf/shared.exp +++ b/ld/testsuite/ld-elf/shared.exp @@ -346,6 +346,7 @@ if { [check_gc_sections_available] } { mips*-*-* { } tic6x-*-* { } xtensa-*-* { } + loongarch*-*-* { } default { run_ld_link_tests [list \ [list \ @@ -465,7 +466,7 @@ run_ld_link_tests [list \ ] # These targets don't copy dynamic variables into .bss. -setup_xfail "alpha-*-*" "bfin-*-*" "ia64-*-*" "xtensa-*-*" +setup_xfail "alpha-*-*" "bfin-*-*" "ia64-*-*" "xtensa-*-*" *loongarch*-*-* # or don't have .data.rel.ro setup_xfail "hppa*64*-*-hpux*" "tic6x-*-*" # or complain about relocs in read-only sections @@ -485,7 +486,8 @@ run_ld_link_tests [list \ {pr20995c.s} {{readelf {-l --wide} pr20995-2so.r}} "pr20995-2.so"] \ ] {![check_relro_support]} -setup_xfail alpha-*-* xtensa-*-* +# LoongArch: Read-only sections, merged into text segment in normal exe. +setup_xfail alpha-*-* xtensa-*-* loongarch*-*-* run_ld_link_tests [list \ [list \ "pr20995-2" \ diff --git a/ld/testsuite/ld-loongarch-elf/attr-ifunc-4.c b/ld/testsuite/ld-loongarch-elf/attr-ifunc-4.c new file mode 100644 index 00000000000..5c87445b394 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/attr-ifunc-4.c @@ -0,0 +1,23 @@ +/* { dg-do run } */ +/* { dg-require-ifunc "" } */ +/* { dg-options "" } */ + +#include + +static int implementation (void) +{ + printf ("'ere I am JH\n"); + return 0; +} + +static __typeof__ (implementation)* resolver (void) +{ + return implementation; +} + +static int magic (void) __attribute__ ((ifunc ("resolver"))); + +int main () +{ + return magic () != 0; +} diff --git a/ld/testsuite/ld-loongarch-elf/attr-ifunc-4.out b/ld/testsuite/ld-loongarch-elf/attr-ifunc-4.out new file mode 100644 index 00000000000..2d9cc343630 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/attr-ifunc-4.out @@ -0,0 +1 @@ +'ere I am JH diff --git a/ld/testsuite/ld-loongarch-elf/disas-jirl-32.d b/ld/testsuite/ld-loongarch-elf/disas-jirl-32.d index 6621c03e5bc..2f2a41afe75 100644 --- a/ld/testsuite/ld-loongarch-elf/disas-jirl-32.d +++ b/ld/testsuite/ld-loongarch-elf/disas-jirl-32.d @@ -1,15 +1,15 @@ -#name: jirl zero-offset symbols for LoongArch32 -#source: disas-jirl-32.s -#ld: --no-relax -#objdump: -d +#as: +#objdump: -dr #skip: loongarch64-*-* -.*:[ ]+file format .* +.*:[ ]+file format .* Disassembly of section .text: -00010054 <_start>: -[ ]+10054:[ ]+1c000014 [ ]+pcaddu12i[ ]+[ ]+\$t8, 0 -[ ]+10058:[ ]+02800294 [ ]+addi.w[ ]+[ ]+\$t8, \$t8, 0 -[ ]+1005c:[ ]+4c000281 [ ]+jirl[ ]+[ ]+\$ra, \$t8, 0 +00000000.* <_start>: +[ ]+0:[ ]+1a000014[ ]+pcalau12i[ ]+\$t8,[ ]+0 +[ ]+0:[ ]+R_LARCH_PCALA_HI20[ ]+_start +[ ]+4:[ ]+02800294[ ]+addi.w[ ]+\$t8,[ ]+\$t8,[ ]+0 +[ ]+4:[ ]+R_LARCH_PCALA_LO12[ ]+_start +[ ]+8:[ ]+4c000281[ ]+jirl[ ]+\$ra,[ ]+\$t8,[ ]+0 diff --git a/ld/testsuite/ld-loongarch-elf/disas-jirl.d b/ld/testsuite/ld-loongarch-elf/disas-jirl.d index f79111a5d8b..595c30c7361 100644 --- a/ld/testsuite/ld-loongarch-elf/disas-jirl.d +++ b/ld/testsuite/ld-loongarch-elf/disas-jirl.d @@ -1,15 +1,14 @@ -#name: jirl zero-offset symbols for LoongArch64 -#source: disas-jirl.s -#ld: --no-relax -#objdump: -d -#skip: loongarch32-*-* +#as: +#objdump: -dr -.*:[ ]+file format .* +.*:[ ]+file format .* Disassembly of section .text: -0000000120000078 <_start>: -[ ]+120000078:[ ]+1c000014 [ ]+pcaddu12i[ ]+[ ]+\$t8, 0 -[ ]+12000007c:[ ]+02c00294 [ ]+addi.d[ ]+[ ]+\$t8, \$t8, 0 -[ ]+120000080:[ ]+4c000281 [ ]+jirl[ ]+[ ]+\$ra, \$t8, 0 +00000000.*: +[ ]+0:[ ]+1a000014[ ]+pcalau12i[ ]+\$t8,[ ]+0 +[ ]+0:[ ]+R_LARCH_PCALA_HI20[ ]+_start +[ ]+4:[ ]+02c00294[ ]+addi.d[ ]+\$t8,[ ]+\$t8,[ ]+0 +[ ]+4:[ ]+R_LARCH_PCALA_LO12[ ]+_start +[ ]+8:[ ]+4c000281[ ]+jirl[ ]+\$ra,[ ]+\$t8,[ ]+0 diff --git a/ld/testsuite/ld-loongarch-elf/ifunc.exp b/ld/testsuite/ld-loongarch-elf/ifunc.exp new file mode 100644 index 00000000000..2b55002f824 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/ifunc.exp @@ -0,0 +1,34 @@ +# Expect script for LoongArch assembler tests. +# Copyright (C) 2021-2022 Free Software Foundation, Inc. +# +# This file is part of the GNU Binutils. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, +# MA 02110-1301, USA. + + + +if [istarget loongarch*-*-*] { + run_ld_link_exec_tests [list \ + [list \ + "Run attr-ifunc-4" \ + "" \ + "" \ + {attr-ifunc-4.c} \ + "attr-ifunc-4" \ + "attr-ifunc-4.out" \ + ] \ + ] +} diff --git a/ld/testsuite/ld-loongarch-elf/jmp_op.d b/ld/testsuite/ld-loongarch-elf/jmp_op.d index c68f7aa49ba..93452c317bb 100644 --- a/ld/testsuite/ld-loongarch-elf/jmp_op.d +++ b/ld/testsuite/ld-loongarch-elf/jmp_op.d @@ -1,68 +1,30 @@ #as: #objdump: -dr -.*:[ ]+file format .* +.*:[ ]+file format .* Disassembly of section .text: -0+0 <.text>: -[ ]+0:[ ]+03400000 [ ]+andi[ ]+[ ]+\$zero, \$zero, 0x0 -[ ]+4:[ ]+60000004 [ ]+bgtz[ ]+[ ]+\$a0, 0[ ]+# 0x4 -[ ]+[ ]+[ ]+4: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+4: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+8:[ ]+64000080 [ ]+bgez[ ]+[ ]+\$a0, 0[ ]+# 0x8 -[ ]+[ ]+[ ]+8: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+8: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+c:[ ]+64000004 [ ]+blez[ ]+[ ]+\$a0, 0[ ]+# 0xc -[ ]+[ ]+[ ]+c: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+c: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+10:[ ]+40000080 [ ]+beqz[ ]+[ ]+\$a0, 0[ ]+# 0x10 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_POP_32_S_0_5_10_16_S2[ ]+\*ABS\* -[ ]+14:[ ]+44000080 [ ]+bnez[ ]+[ ]+\$a0, 0[ ]+# 0x14 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_POP_32_S_0_5_10_16_S2[ ]+\*ABS\* -[ ]+18:[ ]+48000000 [ ]+bceqz[ ]+[ ]+\$fcc0, 0[ ]+# 0x18 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_POP_32_S_0_5_10_16_S2[ ]+\*ABS\* -[ ]+1c:[ ]+48000100 [ ]+bcnez[ ]+[ ]+\$fcc0, 0[ ]+# 0x1c -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_POP_32_S_0_5_10_16_S2[ ]+\*ABS\* -[ ]+20:[ ]+4c000080 [ ]+jirl[ ]+[ ]+\$zero, \$a0, 0 -[ ]+24:[ ]+50000000 [ ]+b[ ]+[ ]+0[ ]+# 0x24 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_POP_32_S_0_10_10_16_S2[ ]+\*ABS\* -[ ]+28:[ ]+54000000 [ ]+bl[ ]+[ ]+0[ ]+# 0x28 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_POP_32_S_0_10_10_16_S2[ ]+\*ABS\* -[ ]+2c:[ ]+58000085 [ ]+beq[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x2c -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+30:[ ]+5c000085 [ ]+bne[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x30 -[ ]+[ ]+[ ]+30: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+30: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+34:[ ]+60000085 [ ]+blt[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x34 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+38:[ ]+600000a4 [ ]+blt[ ]+[ ]+\$a1, \$a0, 0[ ]+# 0x38 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+3c:[ ]+64000085 [ ]+bge[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x3c -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+40:[ ]+640000a4 [ ]+bge[ ]+[ ]+\$a1, \$a0, 0[ ]+# 0x40 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+44:[ ]+68000085 [ ]+bltu[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x44 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+48:[ ]+680000a4 [ ]+bltu[ ]+[ ]+\$a1, \$a0, 0[ ]+# 0x48 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+4c:[ ]+6c000085 [ ]+bgeu[ ]+[ ]+\$a0, \$a1, 0[ ]+# 0x4c -[ ]+[ ]+[ ]+4c: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+4c: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* -[ ]+50:[ ]+6c0000a4 [ ]+bgeu[ ]+[ ]+\$a1, \$a0, 0[ ]+# 0x50 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_POP_32_S_10_16_S2[ ]+\*ABS\* +00000000.* <.text>: +[ ]+0:[ ]+03400000[ ]+andi[ ]+\$zero,[ ]+\$zero,[ ]+0x0 +[ ]+4:[ ]+63fffc04[ ]+bgtz[ ]+\$a0,[ ]+-4\(0x3fffc\)[ ]+#[ ]+0x0 +[ ]+8:[ ]+67fff880[ ]+bgez[ ]+\$a0,[ ]+-8\(0x3fff8\)[ ]+#[ ]+0x0 +[ ]+c:[ ]+67fff404[ ]+blez[ ]+\$a0,[ ]+-12\(0x3fff4\)[ ]+#[ ]+0x0 +[ ]+10:[ ]+43fff09f[ ]+beqz[ ]+\$a0,[ ]+-16\(0x7ffff0\)[ ]+#[ ]+0x0 +[ ]+14:[ ]+47ffec9f[ ]+bnez[ ]+\$a0,[ ]+-20\(0x7fffec\)[ ]+#[ ]+0x0 +[ ]+18:[ ]+4bffe81f[ ]+bceqz[ ]+\$fcc0,[ ]+-24\(0x7fffe8\)[ ]+#[ ]+0x0 +[ ]+1c:[ ]+4bffe51f[ ]+bcnez[ ]+\$fcc0,[ ]+-28\(0x7fffe4\)[ ]+#[ ]+0x0 +[ ]+20:[ ]+4c000080[ ]+jirl[ ]+\$zero,[ ]+\$a0,[ ]+0 +[ ]+24:[ ]+53ffdfff[ ]+b[ ]+-36\(0xfffffdc\)[ ]+#[ ]+0x0 +[ ]+28:[ ]+57ffdbff[ ]+bl[ ]+-40\(0xfffffd8\)[ ]+#[ ]+0x0 +[ ]+2c:[ ]+5bffd485[ ]+beq[ ]+\$a0,[ ]+\$a1,[ ]+-44\(0x3ffd4\)[ ]+#[ ]+0x0 +[ ]+30:[ ]+5fffd085[ ]+bne[ ]+\$a0,[ ]+\$a1,[ ]+-48\(0x3ffd0\)[ ]+#[ ]+0x0 +[ ]+34:[ ]+63ffcc85[ ]+blt[ ]+\$a0,[ ]+\$a1,[ ]+-52\(0x3ffcc\)[ ]+#[ ]+0x0 +[ ]+38:[ ]+63ffc8a4[ ]+blt[ ]+\$a1,[ ]+\$a0,[ ]+-56\(0x3ffc8\)[ ]+#[ ]+0x0 +[ ]+3c:[ ]+67ffc485[ ]+bge[ ]+\$a0,[ ]+\$a1,[ ]+-60\(0x3ffc4\)[ ]+#[ ]+0x0 +[ ]+40:[ ]+67ffc0a4[ ]+bge[ ]+\$a1,[ ]+\$a0,[ ]+-64\(0x3ffc0\)[ ]+#[ ]+0x0 +[ ]+44:[ ]+6bffbc85[ ]+bltu[ ]+\$a0,[ ]+\$a1,[ ]+-68\(0x3ffbc\)[ ]+#[ ]+0x0 +[ ]+48:[ ]+6bffb8a4[ ]+bltu[ ]+\$a1,[ ]+\$a0,[ ]+-72\(0x3ffb8\)[ ]+#[ ]+0x0 +[ ]+4c:[ ]+6fffb485[ ]+bgeu[ ]+\$a0,[ ]+\$a1,[ ]+-76\(0x3ffb4\)[ ]+#[ ]+0x0 +[ ]+50:[ ]+6fffb0a4[ ]+bgeu[ ]+\$a1,[ ]+\$a0,[ ]+-80\(0x3ffb0\)[ ]+#[ ]+0x0 diff --git a/ld/testsuite/ld-loongarch-elf/jmp_op.s b/ld/testsuite/ld-loongarch-elf/jmp_op.s index 01b043d19eb..1deb165aeba 100644 --- a/ld/testsuite/ld-loongarch-elf/jmp_op.s +++ b/ld/testsuite/ld-loongarch-elf/jmp_op.s @@ -1,22 +1,22 @@ .L1: - nop - bgtz $r4,L1 - bgez $r4,L1 - blez $r4,L1 - beqz $r4,L1 - bnez $r4,L1 - bceqz $fcc0,L1 - bcnez $fcc0,L1 - jr $r4 - b L1 - bl L1 - beq $r4,$r5,L1 - bne $r4,$r5,L1 - blt $r4,$r5,L1 - bgt $r4,$r5,L1 - bge $r4,$r5,L1 - ble $r4,$r5,L1 - bltu $r4,$r5,L1 - bgtu $r4,$r5,L1 - bgeu $r4,$r5,L1 - bleu $r4,$r5,L1 +nop +bgtz $r4,.L1 +bgez $r4,.L1 +blez $r4,.L1 +beqz $r4,.L1 +bnez $r4,.L1 +bceqz $fcc0,.L1 +bcnez $fcc0,.L1 +jr $r4 +b .L1 +bl .L1 +beq $r4,$r5,.L1 +bne $r4,$r5,.L1 +blt $r4,$r5,.L1 +bgt $r4,$r5,.L1 +bge $r4,$r5,.L1 +ble $r4,$r5,.L1 +bltu $r4,$r5,.L1 +bgtu $r4,$r5,.L1 +bgeu $r4,$r5,.L1 +bleu $r4,$r5,.L1 diff --git a/ld/testsuite/ld-loongarch-elf/libnopic-global.s b/ld/testsuite/ld-loongarch-elf/libnopic-global.s new file mode 100644 index 00000000000..39d7dc68ae1 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/libnopic-global.s @@ -0,0 +1,113 @@ + .file "libnopic-global.c" + .text +.Ltext0: + .file 1 "libnopic-global.c" + .globl g_nopic + .data + .align 2 + .type g_nopic, @object + .size g_nopic, 4 +g_nopic: + .word 305419896 + .text +.Letext0: + .section .debug_info,"",@progbits +.Ldebug_info0: + .4byte 0x38 + .2byte 0x5 + .byte 0x1 + .byte 0x8 + .4byte .Ldebug_abbrev0 + .uleb128 0x1 + .4byte .LASF0 + .byte 0x1d + .4byte .LASF1 + .4byte .LASF2 + .4byte .Ldebug_line0 + .uleb128 0x2 + .4byte .LASF3 + .byte 0x1 + .byte 0x1 + .byte 0x5 + .4byte 0x34 + .uleb128 0x9 + .byte 0x3 + .8byte g_nopic + .uleb128 0x3 + .byte 0x4 + .byte 0x5 + .ascii "int\000" + .byte 0 + .section .debug_abbrev,"",@progbits +.Ldebug_abbrev0: + .uleb128 0x1 + .uleb128 0x11 + .byte 0x1 + .uleb128 0x25 + .uleb128 0xe + .uleb128 0x13 + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x1b + .uleb128 0xe + .uleb128 0x10 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x2 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x2 + .uleb128 0x18 + .byte 0 + .byte 0 + .uleb128 0x3 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0x8 + .byte 0 + .byte 0 + .byte 0 + .section .debug_aranges,"",@progbits + .4byte 0x1c + .2byte 0x2 + .4byte .Ldebug_info0 + .byte 0x8 + .byte 0 + .2byte 0 + .2byte 0 + .8byte 0 + .8byte 0 + .section .debug_line,"",@progbits +.Ldebug_line0: + .section .debug_str,"MS",@progbits,1 +.LASF1: + .ascii "libnopic-global.c\000" +.LASF0: + .ascii "GNU C17 13.0.0 20220512 (experimental) -mabi=lp64d -marc" + .ascii "h=loongarch64 -mfpu=64 -mcmodel=normal -mtune=la464 -g -" + .ascii "O0 -fPIC\000" +.LASF2: + .ascii "/home/liuzhensong/test/ld/nopic/test/global_var\000" +.LASF3: + .ascii "g_nopic\000" + .ident "GCC: (GNU) 13.0.0 20220512 (experimental)" + .section .note.GNU-stack,"",@progbits diff --git a/ld/testsuite/ld-loongarch-elf/macro_op.d b/ld/testsuite/ld-loongarch-elf/macro_op.d index af100608824..a1c64fcf00f 100644 --- a/ld/testsuite/ld-loongarch-elf/macro_op.d +++ b/ld/testsuite/ld-loongarch-elf/macro_op.d @@ -1,733 +1,164 @@ #as: #objdump: -dr -#skip: loongarch32-*-* -.*:[ ]+file format .* +.*:[ ]+file format .* Disassembly of section .text: -0+0 <.text>: -[ ]+0:[ ]+00150004 [ ]+move[ ]+[ ]+\$a0, \$zero -[ ]+4:[ ]+02bffc04 [ ]+addi.w[ ]+[ ]+\$a0, \$zero, -1\(0xfff\) -[ ]+8:[ ]+00150004 [ ]+move[ ]+[ ]+\$a0, \$zero -[ ]+c:[ ]+02bffc04 [ ]+addi.w[ ]+[ ]+\$a0, \$zero, -1\(0xfff\) -[ ]+10:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+10: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+10: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+14:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+14: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+14: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+18:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+18: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+18: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+1c:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+20:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+24:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+24: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+28:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+28: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+28: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+28: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+2c:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+30:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+34:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+34: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+34: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+38:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+38: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+38: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+3c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+40:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+40: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+44:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+44: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+44: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+44: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+48:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+48: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+4c:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+50:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+50: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+50: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+54:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+54: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+54: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+58:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+5c:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+60:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+60: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+60: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+60: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+60: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+64:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+64: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+64: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+64: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+64: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+64: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+64: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+68:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+6c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+70:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+70: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+70: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+70: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+70: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+74:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000000 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+78:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000004 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+78: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+7c:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000008 -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+80:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+80: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x8000000c -[ ]+[ ]+[ ]+80: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+80: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+80: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+84:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+88:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+88: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+88: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+88: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+88: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+8c:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+90:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000000 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+94:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000004 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+94: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+98:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+98: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000008 -[ ]+[ ]+[ ]+98: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+98: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+98: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+98: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+98: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+9c:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x8000000c -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+a0:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+a4:[ ]+14000004 [ ]+lu12i.w[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+a4: R_LARCH_MARK_LA[ ]+L1 -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+L1 -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+a8:[ ]+03800084 [ ]+ori[ ]+[ ]+\$a0, \$a0, 0x0 -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+L1 -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+ac:[ ]+16000004 [ ]+lu32i.d[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+L1 -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+b0:[ ]+03000084 [ ]+lu52i.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+L1 -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+b4:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+b8:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+bc:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+c0:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+c4:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000000 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+c8:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000004 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+cc:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x80000008 -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+cc: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+d0:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x8000000c -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+d4:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+d8:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+dc:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+e0:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+e4:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+e8:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+e8: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+ec:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+f0:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+f4:[ ]+14000004 [ ]+lu12i.w[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_PUSH_TLS_TPREL[ ]+L1 -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+f8:[ ]+03800084 [ ]+ori[ ]+[ ]+\$a0, \$a0, 0x0 -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_PUSH_TLS_TPREL[ ]+L1 -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+fc:[ ]+16000004 [ ]+lu32i.d[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_TLS_TPREL[ ]+L1 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+100:[ ]+03000084 [ ]+lu52i.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_TLS_TPREL[ ]+L1 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+100: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+104:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+104: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+104: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+104: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+104: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+104: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+104: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+108:[ ]+28c00084 [ ]+ld.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+108: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+108: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+10c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+10c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+110:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+110: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+114:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+114: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+114: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+118:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+11c:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+120:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+120: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+120: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+120: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+120: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+120: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+120: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+124:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+124: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+124: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+128:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+128: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+128: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+128: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+12c:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+130:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+130: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+130: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+134:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+138:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+13c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+140:[ ]+02c00084 [ ]+addi.d[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+140: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+140: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+144:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000000 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+144: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+144: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+144: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+148:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000004 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+148: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+148: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+148: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+14c:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x80000008 -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+14c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+150:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+150: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x8000000c -[ ]+[ ]+[ ]+150: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+150: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+150: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+150: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+150: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+154:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 +00000000.* <.text>: +[ ]+0:[ ]+00150004[ ]+move[ ]+\$a0,[ ]+\$zero +[ ]+4:[ ]+02bffc04[ ]+addi.w[ ]+\$a0,[ ]+\$zero,[ ]+-1\(0xfff\) +[ ]+8:[ ]+00150004[ ]+move[ ]+\$a0,[ ]+\$zero +[ ]+c:[ ]+02bffc04[ ]+addi.w[ ]+\$a0,[ ]+\$zero,[ ]+-1\(0xfff\) +[ ]+10:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+10:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+14:[ ]+28c00084[ ]+ld.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+14:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+18:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+18:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+1c:[ ]+28c00084[ ]+ld.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+1c:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+20:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+20:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+24:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+24:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+28:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+28:[ ]+R_LARCH_GOT64_PC_LO20[ ]+.text +[ ]+2c:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+2c:[ ]+R_LARCH_GOT64_PC_HI12[ ]+.text +[ ]+30:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+34:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+34:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+38:[ ]+28c00084[ ]+ld.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+38:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+3c:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+3c:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+40:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+40:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+44:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+44:[ ]+R_LARCH_GOT64_PC_LO20[ ]+.text +[ ]+48:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+48:[ ]+R_LARCH_GOT64_PC_HI12[ ]+.text +[ ]+4c:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+50:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+50:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+54:[ ]+28c00084[ ]+ld.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+54:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+58:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+58:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+5c:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+5c:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+60:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+60:[ ]+R_LARCH_GOT64_PC_LO20[ ]+.text +[ ]+64:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+64:[ ]+R_LARCH_GOT64_PC_HI12[ ]+.text +[ ]+68:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+6c:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+6c:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+70:[ ]+02c00084[ ]+addi.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+70:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+74:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+74:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+78:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+78:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+7c:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+7c:[ ]+R_LARCH_PCALA64_LO20[ ]+.text +[ ]+80:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+80:[ ]+R_LARCH_PCALA64_HI12[ ]+.text +[ ]+84:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+88:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+88:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+8c:[ ]+02c00084[ ]+addi.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+8c:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+90:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+90:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+94:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+94:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+98:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+98:[ ]+R_LARCH_PCALA64_LO20[ ]+.text +[ ]+9c:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+9c:[ ]+R_LARCH_PCALA64_HI12[ ]+.text +[ ]+a0:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+a4:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+a4:[ ]+R_LARCH_MARK_LA[ ]+\*ABS\* +[ ]+a4:[ ]+R_LARCH_ABS_HI20[ ]+.text +[ ]+a8:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+a8:[ ]+R_LARCH_ABS_LO12[ ]+.text +[ ]+ac:[ ]+16000004[ ]+lu32i.d[ ]+\$a0,[ ]+0 +[ ]+ac:[ ]+R_LARCH_ABS64_LO20[ ]+.text +[ ]+b0:[ ]+03000084[ ]+lu52i.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+b0:[ ]+R_LARCH_ABS64_HI12[ ]+.text +[ ]+b4:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+b4:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+b8:[ ]+02c00084[ ]+addi.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+b8:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+bc:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+bc:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+c0:[ ]+02c00084[ ]+addi.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+c0:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+c4:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+c4:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+c8:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+c8:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+cc:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+cc:[ ]+R_LARCH_PCALA64_LO20[ ]+.text +[ ]+d0:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+d0:[ ]+R_LARCH_PCALA64_HI12[ ]+.text +[ ]+d4:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+d8:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+d8:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+dc:[ ]+28c00084[ ]+ld.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+dc:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+e0:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+e0:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+e4:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+e4:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+e8:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+e8:[ ]+R_LARCH_GOT64_PC_LO20[ ]+.text +[ ]+ec:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+ec:[ ]+R_LARCH_GOT64_PC_HI12[ ]+.text +[ ]+f0:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+f4:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+f4:[ ]+R_LARCH_TLS_LE_HI20[ ]+TLS1 +[ ]+f8:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+f8:[ ]+R_LARCH_TLS_LE_LO12[ ]+TLS1 +[ ]+fc:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+fc:[ ]+R_LARCH_TLS_IE_PC_HI20[ ]+TLS1 +[ ]+100:[ ]+28c00084[ ]+ld.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+100:[ ]+R_LARCH_TLS_IE_PC_LO12[ ]+TLS1 +[ ]+104:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+104:[ ]+R_LARCH_TLS_IE_PC_HI20[ ]+TLS1 +[ ]+108:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+108:[ ]+R_LARCH_TLS_IE_PC_LO12[ ]+TLS1 +[ ]+10c:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+10c:[ ]+R_LARCH_TLS_IE64_PC_LO20[ ]+TLS1 +[ ]+110:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+110:[ ]+R_LARCH_TLS_IE64_PC_HI12[ ]+TLS1 +[ ]+114:[ ]+380c1484[ ]+ldx.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+118:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+118:[ ]+R_LARCH_TLS_LD_PC_HI20[ ]+TLS1 +[ ]+11c:[ ]+02c00084[ ]+addi.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+11c:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+120:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+120:[ ]+R_LARCH_TLS_LD_PC_HI20[ ]+TLS1 +[ ]+124:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+124:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+128:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+128:[ ]+R_LARCH_GOT64_PC_LO20[ ]+TLS1 +[ ]+12c:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+12c:[ ]+R_LARCH_GOT64_PC_HI12[ ]+TLS1 +[ ]+130:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 +[ ]+134:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+134:[ ]+R_LARCH_TLS_GD_PC_HI20[ ]+TLS1 +[ ]+138:[ ]+02c00084[ ]+addi.d[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+138:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+13c:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+13c:[ ]+R_LARCH_TLS_GD_PC_HI20[ ]+TLS1 +[ ]+140:[ ]+02c00005[ ]+addi.d[ ]+\$a1,[ ]+\$zero,[ ]+0 +[ ]+140:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+144:[ ]+16000005[ ]+lu32i.d[ ]+\$a1,[ ]+0 +[ ]+144:[ ]+R_LARCH_GOT64_PC_LO20[ ]+TLS1 +[ ]+148:[ ]+030000a5[ ]+lu52i.d[ ]+\$a1,[ ]+\$a1,[ ]+0 +[ ]+148:[ ]+R_LARCH_GOT64_PC_HI12[ ]+TLS1 +[ ]+14c:[ ]+00109484[ ]+add.d[ ]+\$a0,[ ]+\$a0,[ ]+\$a1 diff --git a/ld/testsuite/ld-loongarch-elf/macro_op.s b/ld/testsuite/ld-loongarch-elf/macro_op.s index c15e364d4d0..5cf066c36ff 100644 --- a/ld/testsuite/ld-loongarch-elf/macro_op.s +++ b/ld/testsuite/ld-loongarch-elf/macro_op.s @@ -1,29 +1,30 @@ .L1: - li.w $r4,0 - li.w $r4,0xffffffff - li.d $r4,0 - li.d $r4,0xffffffffffffffff - la $r4,L1 - la.global $r4,L1 - la.global $r4,$r5,L1 - la.global $r4,L1 - la.global $r4,$r5,L1 - la.global $r4,L1 - la.global $r4,$r5,L1 - la.local $r4,L1 - la.local $r4,$r5,L1 - la.local $r4,L1 - la.local $r4,$r5,L1 - la.abs $r4,L1 - la.pcrel $r4,L1 - la.pcrel $r4,L1 - la.pcrel $r4,$r5,L1 - la.got $r4,L1 - la.got $r4,$r5,L1 - la.tls.le $r4,L1 - la.tls.ie $r4,L1 - la.tls.ie $r4,$r5,L1 - la.tls.ld $r4,L1 - la.tls.ld $r4,$r5,L1 - la.tls.gd $r4,L1 - la.tls.gd $r4,$r5,L1 +li.w $r4, 0 +li.w $r4, 0xffffffff +li.d $r4, 0 +li.d $r4, 0xffffffffffffffff +la $r4, .L1 +la.global $r4, .L1 +la.global $r4, $r5, .L1 +la.global $r4, .L1 +la.global $r4, $r5, .L1 +la.global $r4, .L1 +la.global $r4, $r5, .L1 +la.local $r4, .L1 +la.local $r4, $r5, .L1 +la.local $r4, .L1 +la.local $r4, $r5, .L1 +la.abs $r4, .L1 +la.pcrel $r4, .L1 +la.pcrel $r4, .L1 +la.pcrel $r4, $r5, .L1 +la.got $r4, .L1 +la.got $r4, $r5, .L1 + +la.tls.le $r4, TLS1 +la.tls.ie $r4, TLS1 +la.tls.ie $r4, $r5, TLS1 +la.tls.ld $r4, TLS1 +la.tls.ld $r4, $r5, TLS1 +la.tls.gd $r4, TLS1 +la.tls.gd $r4, $r5, TLS1 diff --git a/ld/testsuite/ld-loongarch-elf/macro_op_32.d b/ld/testsuite/ld-loongarch-elf/macro_op_32.d index 24906ecfd04..145d852b2be 100644 --- a/ld/testsuite/ld-loongarch-elf/macro_op_32.d +++ b/ld/testsuite/ld-loongarch-elf/macro_op_32.d @@ -2,728 +2,54 @@ #objdump: -dr #skip: loongarch64-*-* -.*:[ ]+file format .* +.*:[ ]+file format .* Disassembly of section .text: -0+0 <.text>: -[ ]+0:[ ]+00150004 [ ]+move[ ]+[ ]+\$a0, \$zero -[ ]+4:[ ]+02bffc04 [ ]+addi.w[ ]+[ ]+\$a0, \$zero, -1\(0xfff\) -[ ]+8:[ ]+00150004 [ ]+move[ ]+[ ]+\$a0, \$zero -[ ]+c:[ ]+02bffc04 [ ]+addi.w[ ]+[ ]+\$a0, \$zero, -1\(0xfff\) -[ ]+10:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+10: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+10: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+10: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+10: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+14:[ ]+28800084 [ ]+ld.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+14: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+14: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+14: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+14: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+18:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+18: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+18: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+18: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+18: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+1c:[ ]+28800084 [ ]+ld.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+1c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+20:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x80000000 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+20: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+20: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+24:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffffc -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+24: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+24: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+24: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+28:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff8 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+28: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+28: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+28: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+28: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+28: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+2c:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff4 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+2c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+30:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+34:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+34: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+34: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+34: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+34: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+38:[ ]+28800084 [ ]+ld.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+38: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+38: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+38: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+38: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+3c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x80000000 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+3c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+40:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffffc -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+40: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+40: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+40: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+44:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff8 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+44: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+44: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+44: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+44: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+44: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+48:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff4 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+48: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+48: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+48: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+4c:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+50:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+50: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+50: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+50: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+50: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+54:[ ]+28800084 [ ]+ld.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+54: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+54: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+54: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+54: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+58:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x80000000 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+58: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+58: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+5c:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffffc -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+5c: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+60:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff8 -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+60: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+60: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+60: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+60: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+60: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+64:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+64: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff4 -[ ]+[ ]+[ ]+64: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+64: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+64: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+64: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+64: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+68:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+6c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+6c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+70:[ ]+02800084 [ ]+addi.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+70: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+70: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+70: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+70: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+70: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+74:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x80000000 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+74: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+74: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+78:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x7ffffffc -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+78: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+78: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+78: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+7c:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x7ffffff8 -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+7c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+80:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+80: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x7ffffff4 -[ ]+[ ]+[ ]+80: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+80: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+80: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+84:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+88:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+88: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+88: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+88: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+88: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+88: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+88: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+8c:[ ]+02800084 [ ]+addi.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+8c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+90:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x80000000 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+90: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+90: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+94:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x7ffffffc -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+94: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+94: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+94: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+98:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+98: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x7ffffff8 -[ ]+[ ]+[ ]+98: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+98: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+98: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+98: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+98: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+9c:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x7ffffff4 -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+9c: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+a0:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+a4:[ ]+14000004 [ ]+lu12i.w[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+a4: R_LARCH_MARK_LA[ ]+L1 -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+L1 -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+a4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+a8:[ ]+03800084 [ ]+ori[ ]+[ ]+\$a0, \$a0, 0x0 -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+L1 -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+a8: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+ac:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+ac: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+b0:[ ]+02800084 [ ]+addi.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+b0: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+b4:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x800 -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+b4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+b8:[ ]+02800084 [ ]+addi.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x804 -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+b8: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+bc:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_PUSH_PCREL[ ]+L1 -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x80000000 -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+bc: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+c0:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_PCREL[ ]+L1\+0x4 -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x7ffffffc -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+c0: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+c4:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x7ffffff8 -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+c8:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_PCREL[ ]+L1\-0x7ffffff4 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+c8: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+cc:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+d0:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+d0: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+d4:[ ]+28800084 [ ]+ld.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+d4: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+d8:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x80000000 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+d8: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+dc:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffffc -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+dc: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+e0:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff8 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+e0: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+e4:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff4 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_GPREL[ ]+L1 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+e4: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+e8:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+ec:[ ]+14000004 [ ]+lu12i.w[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_PUSH_TLS_TPREL[ ]+L1 -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+ec: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+f0:[ ]+03800084 [ ]+ori[ ]+[ ]+\$a0, \$a0, 0x0 -[ ]+[ ]+[ ]+f0: R_LARCH_SOP_PUSH_TLS_TPREL[ ]+L1 -[ ]+[ ]+[ ]+f0: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+f0: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+f0: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+f4:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+f4: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+f8:[ ]+28800084 [ ]+ld.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+f8: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+fc:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x80000000 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+fc: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+100:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffffc -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+100: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+100: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+100: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+100: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+100: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+104:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+104: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff8 -[ ]+[ ]+[ ]+104: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+104: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+104: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+104: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+104: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+104: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+104: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+108:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff4 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_TLS_GOT[ ]+L1 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+108: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+108: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+10c:[ ]+380c1484 [ ]+ldx.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+110:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+110: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+110: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+110: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+114:[ ]+02800084 [ ]+addi.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+114: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+114: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+114: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+114: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+118:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x80000000 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+118: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+118: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+118: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+11c:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffffc -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+11c: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+120:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+120: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff8 -[ ]+[ ]+[ ]+120: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+120: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+120: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+120: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+120: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+120: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+120: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+124:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff4 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+124: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+124: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+128:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 -[ ]+12c:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x800 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+12c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+130:[ ]+02800084 [ ]+addi.w[ ]+[ ]+\$a0, \$a0, 0 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x804 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+130: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+130: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+130: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+130: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+134:[ ]+1c000004 [ ]+pcaddu12i[ ]+[ ]+\$a0, 0 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_ -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x80000000 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+134: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+134: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+134: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+138:[ ]+03800005 [ ]+ori[ ]+[ ]+\$a1, \$zero, 0x0 -[ ]+[ ]+[ ]+138: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\+0x4 -[ ]+[ ]+[ ]+138: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+138: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+138: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffffc -[ ]+[ ]+[ ]+138: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+138: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+138: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+138: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+138: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x20 -[ ]+[ ]+[ ]+138: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+138: R_LARCH_SOP_SUB[ ]+\*ABS\* -[ ]+[ ]+[ ]+138: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xfff -[ ]+[ ]+[ ]+138: R_LARCH_SOP_AND[ ]+\*ABS\* -[ ]+[ ]+[ ]+138: R_LARCH_SOP_POP_32_U_10_12[ ]+\*ABS\* -[ ]+13c:[ ]+16000005 [ ]+lu32i.d[ ]+[ ]+\$a1, 0 -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff8 -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0xc -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_SL[ ]+\*ABS\* -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x2c -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+13c: R_LARCH_SOP_POP_32_S_5_20[ ]+\*ABS\* -[ ]+140:[ ]+030000a5 [ ]+lu52i.d[ ]+[ ]+\$a1, \$a1, 0 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_PCREL[ ]+_GLOBAL_OFFSET_TABLE_\-0x7ffffff4 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_TLS_GD[ ]+L1 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_ADD[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_PUSH_ABSOLUTE[ ]+\*ABS\*\+0x34 -[ ]+[ ]+[ ]+140: R_LARCH_SOP_SR[ ]+\*ABS\* -[ ]+[ ]+[ ]+140: R_LARCH_SOP_POP_32_S_10_12[ ]+\*ABS\* -[ ]+144:[ ]+00109484 [ ]+add.d[ ]+[ ]+\$a0, \$a0, \$a1 +00000000.* <.text>: +[ ]+0:[ ]+00150004[ ]+move[ ]+\$a0,[ ]+\$zero +[ ]+4:[ ]+02bffc04[ ]+addi.w[ ]+\$a0,[ ]+\$zero,[ ]+-1\(0xfff\) +[ ]+8:[ ]+00150004[ ]+move[ ]+\$a0,[ ]+\$zero +[ ]+c:[ ]+02bffc04[ ]+addi.w[ ]+\$a0,[ ]+\$zero,[ ]+-1\(0xfff\) +[ ]+10:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+10:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+14:[ ]+28800084[ ]+ld.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+14:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+18:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+18:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+1c:[ ]+28800084[ ]+ld.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+1c:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+20:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+20:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+24:[ ]+02800084[ ]+addi.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+24:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+28:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+28:[ ]+R_LARCH_MARK_LA[ ]+\*ABS\* +[ ]+28:[ ]+R_LARCH_ABS_HI20[ ]+.text +[ ]+2c:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+2c:[ ]+R_LARCH_ABS_LO12[ ]+.text +[ ]+30:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+30:[ ]+R_LARCH_PCALA_HI20[ ]+.text +[ ]+34:[ ]+02800084[ ]+addi.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+34:[ ]+R_LARCH_PCALA_LO12[ ]+.text +[ ]+38:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+38:[ ]+R_LARCH_GOT_PC_HI20[ ]+.text +[ ]+3c:[ ]+28800084[ ]+ld.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+3c:[ ]+R_LARCH_GOT_PC_LO12[ ]+.text +[ ]+40:[ ]+14000004[ ]+lu12i.w[ ]+\$a0,[ ]+0 +[ ]+40:[ ]+R_LARCH_TLS_LE_HI20[ ]+TLS1 +[ ]+44:[ ]+03800084[ ]+ori[ ]+\$a0,[ ]+\$a0,[ ]+0x0 +[ ]+44:[ ]+R_LARCH_TLS_LE_LO12[ ]+TLS1 +[ ]+48:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+48:[ ]+R_LARCH_TLS_IE_PC_HI20[ ]+TLS1 +[ ]+4c:[ ]+28800084[ ]+ld.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+4c:[ ]+R_LARCH_TLS_IE_PC_LO12[ ]+TLS1 +[ ]+50:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+50:[ ]+R_LARCH_TLS_LD_PC_HI20[ ]+TLS1 +[ ]+54:[ ]+02800084[ ]+addi.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+54:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 +[ ]+58:[ ]+1a000004[ ]+pcalau12i[ ]+\$a0,[ ]+0 +[ ]+58:[ ]+R_LARCH_TLS_GD_PC_HI20[ ]+TLS1 +[ ]+5c:[ ]+02800084[ ]+addi.w[ ]+\$a0,[ ]+\$a0,[ ]+0 +[ ]+5c:[ ]+R_LARCH_GOT_PC_LO12[ ]+TLS1 diff --git a/ld/testsuite/ld-loongarch-elf/macro_op_32.s b/ld/testsuite/ld-loongarch-elf/macro_op_32.s index 2e26b6b3f9b..7f19565e156 100644 --- a/ld/testsuite/ld-loongarch-elf/macro_op_32.s +++ b/ld/testsuite/ld-loongarch-elf/macro_op_32.s @@ -1,29 +1,16 @@ .L1: - li.w $r4,0 - li.w $r4,0xffffffff - li.w $r4,0 - li.w $r4,0xffffffff - la $r4,L1 - la.global $r4,L1 - la.global $r4,$r5,L1 - la.global $r4,L1 - la.global $r4,$r5,L1 - la.global $r4,L1 - la.global $r4,$r5,L1 - la.local $r4,L1 - la.local $r4,$r5,L1 - la.local $r4,L1 - la.local $r4,$r5,L1 - la.abs $r4,L1 - la.pcrel $r4,L1 - la.pcrel $r4,L1 - la.pcrel $r4,$r5,L1 - la.got $r4,L1 - la.got $r4,$r5,L1 - la.tls.le $r4,L1 - la.tls.ie $r4,L1 - la.tls.ie $r4,$r5,L1 - la.tls.ld $r4,L1 - la.tls.ld $r4,$r5,L1 - la.tls.gd $r4,L1 - la.tls.gd $r4,$r5,L1 + li.w $r4, 0 + li.w $r4, 0xffffffff + li.w $r4, 0 + li.w $r4, 0xffffffff + la $r4, .L1 + la.global $r4, .L1 + la.local $r4, .L1 + la.abs $r4, .L1 + la.pcrel $r4, .L1 + la.got $r4, .L1 + + la.tls.le $r4, TLS1 + la.tls.ie $r4, TLS1 + la.tls.ld $r4, TLS1 + la.tls.gd $r4, TLS1 diff --git a/ld/testsuite/ld-loongarch-elf/nopic-global-so.rd b/ld/testsuite/ld-loongarch-elf/nopic-global-so.rd new file mode 100644 index 00000000000..2bcc718a276 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-global-so.rd @@ -0,0 +1,5 @@ +Relocation section '.rela.dyn'.* + +Offset +Info +Type +Sym\. +Value +Sym\. +Name +\+ +Addend +#... +[0-9a-f]+ +[0-9a-f]+ +R_LARCH_64 +[0-9a-f]+ +g_nopic +\+ +[0-9] +#pass diff --git a/ld/testsuite/ld-loongarch-elf/nopic-global-so.sd b/ld/testsuite/ld-loongarch-elf/nopic-global-so.sd new file mode 100644 index 00000000000..c0e7a66ba84 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-global-so.sd @@ -0,0 +1,10 @@ +Symbol table '\.dynsym' contains [0-9]+ entries: + +Num: +Value +Size +Type +Bind +Vis +Ndx +Name +#... + +[0-9]+: +[0-9a-f]+ +[0-9] +OBJECT +GLOBAL +DEFAULT +UND+ +g_nopic +#... +Symbol table '\.symtab' contains [0-9]+ entries: + +Num: +Value +Size +Type +Bind +Vis +Ndx +Name +#... + +[0-9]+: +[0-9a-f]+ +[0-9] +OBJECT +GLOBAL +DEFAULT +UND+ +g_nopic +#pass diff --git a/ld/testsuite/ld-loongarch-elf/nopic-global.out b/ld/testsuite/ld-loongarch-elf/nopic-global.out new file mode 100644 index 00000000000..3a179f6634e --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-global.out @@ -0,0 +1 @@ +0x12345678 diff --git a/ld/testsuite/ld-loongarch-elf/nopic-global.s b/ld/testsuite/ld-loongarch-elf/nopic-global.s new file mode 100644 index 00000000000..189fa675dac --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-global.s @@ -0,0 +1,373 @@ + .file "nopic-global.c" + .text +.Ltext0: + .file 1 "nopic-global.c" + .section .rodata + .align 3 +.LC0: + .ascii "0x%x\012\000" + .text + .align 2 + .globl main + .type main, @function +main: +.LFB6 = . + .loc 1 7 1 + .cfi_startproc + addi.d $r3,$r3,-16 + .cfi_def_cfa_offset 16 + st.d $r1,$r3,8 + stptr.d $r22,$r3,0 + .cfi_offset 1, -8 + .cfi_offset 22, -16 + addi.d $r22,$r3,16 + .cfi_def_cfa 22, 0 + .loc 1 8 15 + pcalau12i $r12,%got_pc_hi20(g_nopic) + ld.d $r12,$r12,%got_pc_lo12(g_nopic) + ldptr.w $r12,$r12,0 + .loc 1 8 6 + or $r13,$r12,$r0 + lu12i.w $r12,305418240>>12 # 0x12345000 + ori $r12,$r12,1656 + bne $r13,$r12,.L2 + .loc 1 9 5 + pcalau12i $r12,%got_pc_hi20(g_nopic) + ld.d $r12,$r12,%got_pc_lo12(g_nopic) + ldptr.w $r12,$r12,0 + or $r5,$r12,$r0 + pcalau12i $r12,%pc_hi20(.LC0) + addi.d $r4,$r12,%pc_lo12(.LC0) + bl %plt(printf) + b .L5 +.L2: + .loc 1 11 5 + bl %plt(abort) +.L5: + .loc 1 12 10 + or $r12,$r0,$r0 + .loc 1 13 1 + or $r4,$r12,$r0 + ld.d $r1,$r3,8 + .cfi_restore 1 + ldptr.d $r22,$r3,0 + .cfi_restore 22 + addi.d $r3,$r3,16 + .cfi_def_cfa_register 3 + jr $r1 + .cfi_endproc +.LFE6: + .size main, .-main +.Letext0: + .file 2 "/usr/include/stdlib.h" + .file 3 "/usr/include/stdio.h" + .section .debug_info,"",@progbits +.Ldebug_info0: + .4byte 0xce + .2byte 0x5 + .byte 0x1 + .byte 0x8 + .4byte .Ldebug_abbrev0 + .uleb128 0x2 + .4byte .LASF10 + .byte 0x1d + .4byte .LASF11 + .4byte .LASF12 + .8byte .Ltext0 + .8byte .Letext0-.Ltext0 + .4byte .Ldebug_line0 + .uleb128 0x1 + .byte 0x8 + .byte 0x7 + .4byte .LASF0 + .uleb128 0x1 + .byte 0x1 + .byte 0x8 + .4byte .LASF1 + .uleb128 0x1 + .byte 0x2 + .byte 0x7 + .4byte .LASF2 + .uleb128 0x1 + .byte 0x4 + .byte 0x7 + .4byte .LASF3 + .uleb128 0x1 + .byte 0x1 + .byte 0x6 + .4byte .LASF4 + .uleb128 0x1 + .byte 0x2 + .byte 0x5 + .4byte .LASF5 + .uleb128 0x3 + .byte 0x4 + .byte 0x5 + .ascii "int\000" + .uleb128 0x1 + .byte 0x8 + .byte 0x5 + .4byte .LASF6 + .uleb128 0x1 + .byte 0x1 + .byte 0x6 + .4byte .LASF7 + .uleb128 0x4 + .4byte 0x66 + .uleb128 0x1 + .byte 0x8 + .byte 0x5 + .4byte .LASF8 + .uleb128 0x1 + .byte 0x8 + .byte 0x7 + .4byte .LASF9 + .uleb128 0x5 + .4byte .LASF13 + .byte 0x1 + .byte 0x4 + .byte 0xc + .4byte 0x58 + .uleb128 0x6 + .4byte .LASF14 + .byte 0x2 + .2byte 0x256 + .byte 0xd + .uleb128 0x7 + .4byte .LASF15 + .byte 0x3 + .2byte 0x164 + .byte 0xc + .4byte 0x58 + .4byte 0xad + .uleb128 0x8 + .4byte 0xad + .uleb128 0x9 + .byte 0 + .uleb128 0xa + .byte 0x8 + .4byte 0x6d + .uleb128 0xb + .4byte .LASF16 + .byte 0x1 + .byte 0x6 + .byte 0x5 + .4byte 0x58 + .8byte .LFB6 + .8byte .LFE6-.LFB6 + .uleb128 0x1 + .byte 0x9c + .byte 0 + .section .debug_abbrev,"",@progbits +.Ldebug_abbrev0: + .uleb128 0x1 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .byte 0 + .byte 0 + .uleb128 0x2 + .uleb128 0x11 + .byte 0x1 + .uleb128 0x25 + .uleb128 0xe + .uleb128 0x13 + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x1b + .uleb128 0xe + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x12 + .uleb128 0x7 + .uleb128 0x10 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x3 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0x8 + .byte 0 + .byte 0 + .uleb128 0x4 + .uleb128 0x26 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x5 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0x6 + .uleb128 0x2e + .byte 0 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x87 + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0x7 + .uleb128 0x2e + .byte 0x1 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3c + .uleb128 0x19 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x8 + .uleb128 0x5 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x9 + .uleb128 0x18 + .byte 0 + .byte 0 + .byte 0 + .uleb128 0xa + .uleb128 0xf + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0xb + .uleb128 0x2e + .byte 0 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x12 + .uleb128 0x7 + .uleb128 0x40 + .uleb128 0x18 + .uleb128 0x7c + .uleb128 0x19 + .byte 0 + .byte 0 + .byte 0 + .section .debug_aranges,"",@progbits + .4byte 0x2c + .2byte 0x2 + .4byte .Ldebug_info0 + .byte 0x8 + .byte 0 + .2byte 0 + .2byte 0 + .8byte .Ltext0 + .8byte .Letext0-.Ltext0 + .8byte 0 + .8byte 0 + .section .debug_line,"",@progbits +.Ldebug_line0: + .section .debug_str,"MS",@progbits,1 +.LASF8: + .ascii "long long int\000" +.LASF3: + .ascii "unsigned int\000" +.LASF11: + .ascii "nopic-global.c\000" +.LASF0: + .ascii "long unsigned int\000" +.LASF9: + .ascii "long long unsigned int\000" +.LASF10: + .ascii "GNU C17 13.0.0 20220512 (experimental) -mabi=lp64d -marc" + .ascii "h=loongarch64 -mfpu=64 -mcmodel=normal -mtune=la464 -g -" + .ascii "O0\000" +.LASF1: + .ascii "unsigned char\000" +.LASF12: + .ascii "/home/liuzhensong/test/ld/nopic/test/global_var\000" +.LASF7: + .ascii "char\000" +.LASF6: + .ascii "long int\000" +.LASF13: + .ascii "g_nopic\000" +.LASF2: + .ascii "short unsigned int\000" +.LASF15: + .ascii "printf\000" +.LASF16: + .ascii "main\000" +.LASF14: + .ascii "abort\000" +.LASF5: + .ascii "short int\000" +.LASF4: + .ascii "signed char\000" + .ident "GCC: (GNU) 13.0.0 20220512 (experimental)" + .section .note.GNU-stack,"",@progbits diff --git a/ld/testsuite/ld-loongarch-elf/nopic-global.sd b/ld/testsuite/ld-loongarch-elf/nopic-global.sd new file mode 100644 index 00000000000..605206a2832 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-global.sd @@ -0,0 +1,5 @@ +Symbol table '\.symtab' contains [0-9]+ entries: + +Num: +Value +Size +Type +Bind +Vis +Ndx +Name +#... + +[0-9]: +[0-9]+ +[0-9] +OBJECT +GLOBAL +DEFAULT +[0-9] +g_nopic +#xpass diff --git a/ld/testsuite/ld-loongarch-elf/nopic-global.xd b/ld/testsuite/ld-loongarch-elf/nopic-global.xd new file mode 100644 index 00000000000..d0130663db6 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-global.xd @@ -0,0 +1,3 @@ +Hex dump of section '\.data': + +0x[0-9]+ +78563412.* +#pass diff --git a/ld/testsuite/ld-loongarch-elf/nopic-local.out b/ld/testsuite/ld-loongarch-elf/nopic-local.out new file mode 100644 index 00000000000..3a179f6634e --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-local.out @@ -0,0 +1 @@ +0x12345678 diff --git a/ld/testsuite/ld-loongarch-elf/nopic-local.rd b/ld/testsuite/ld-loongarch-elf/nopic-local.rd new file mode 100644 index 00000000000..e69de29bb2d diff --git a/ld/testsuite/ld-loongarch-elf/nopic-local.s b/ld/testsuite/ld-loongarch-elf/nopic-local.s new file mode 100644 index 00000000000..4a496f0325c --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-local.s @@ -0,0 +1,383 @@ + .file "nopic-local.c" + .text +.Ltext0: + .file 1 "nopic-local.c" + .globl g_nopic + .data + .align 2 + .type g_nopic, @object + .size g_nopic, 4 +g_nopic: + .word 305419896 + .section .rodata + .align 3 +.LC0: + .ascii "0x%x\012\000" + .text + .align 2 + .globl main + .type main, @function +main: +.LFB6 = . + .loc 1 7 1 + .cfi_startproc + addi.d $r3,$r3,-16 + .cfi_def_cfa_offset 16 + st.d $r1,$r3,8 + stptr.d $r22,$r3,0 + .cfi_offset 1, -8 + .cfi_offset 22, -16 + addi.d $r22,$r3,16 + .cfi_def_cfa 22, 0 + .loc 1 8 15 + pcalau12i $r12,%pc_hi20(g_nopic) + addi.d $r12,$r12,%pc_lo12(g_nopic) + ldptr.w $r12,$r12,0 + .loc 1 8 6 + or $r13,$r12,$r0 + lu12i.w $r12,305418240>>12 # 0x12345000 + ori $r12,$r12,1656 + bne $r13,$r12,.L2 + .loc 1 9 5 + pcalau12i $r12,%pc_hi20(g_nopic) + addi.d $r12,$r12,%pc_lo12(g_nopic) + ldptr.w $r12,$r12,0 + or $r5,$r12,$r0 + pcalau12i $r12,%pc_hi20(.LC0) + addi.d $r4,$r12,%pc_lo12(.LC0) + bl %plt(printf) + b .L5 +.L2: + .loc 1 11 5 + bl %plt(abort) +.L5: + .loc 1 12 10 + or $r12,$r0,$r0 + .loc 1 13 1 + or $r4,$r12,$r0 + ld.d $r1,$r3,8 + .cfi_restore 1 + ldptr.d $r22,$r3,0 + .cfi_restore 22 + addi.d $r3,$r3,16 + .cfi_def_cfa_register 3 + jr $r1 + .cfi_endproc +.LFE6: + .size main, .-main +.Letext0: + .file 2 "/usr/include/stdlib.h" + .file 3 "/usr/include/stdio.h" + .section .debug_info,"",@progbits +.Ldebug_info0: + .4byte 0xd8 + .2byte 0x5 + .byte 0x1 + .byte 0x8 + .4byte .Ldebug_abbrev0 + .uleb128 0x2 + .4byte .LASF10 + .byte 0x1d + .4byte .LASF11 + .4byte .LASF12 + .8byte .Ltext0 + .8byte .Letext0-.Ltext0 + .4byte .Ldebug_line0 + .uleb128 0x1 + .byte 0x8 + .byte 0x7 + .4byte .LASF0 + .uleb128 0x1 + .byte 0x1 + .byte 0x8 + .4byte .LASF1 + .uleb128 0x1 + .byte 0x2 + .byte 0x7 + .4byte .LASF2 + .uleb128 0x1 + .byte 0x4 + .byte 0x7 + .4byte .LASF3 + .uleb128 0x1 + .byte 0x1 + .byte 0x6 + .4byte .LASF4 + .uleb128 0x1 + .byte 0x2 + .byte 0x5 + .4byte .LASF5 + .uleb128 0x3 + .byte 0x4 + .byte 0x5 + .ascii "int\000" + .uleb128 0x1 + .byte 0x8 + .byte 0x5 + .4byte .LASF6 + .uleb128 0x1 + .byte 0x1 + .byte 0x6 + .4byte .LASF7 + .uleb128 0x4 + .4byte 0x66 + .uleb128 0x1 + .byte 0x8 + .byte 0x5 + .4byte .LASF8 + .uleb128 0x1 + .byte 0x8 + .byte 0x7 + .4byte .LASF9 + .uleb128 0x5 + .4byte .LASF13 + .byte 0x1 + .byte 0x4 + .byte 0x5 + .4byte 0x58 + .uleb128 0x9 + .byte 0x3 + .8byte g_nopic + .uleb128 0x6 + .4byte .LASF14 + .byte 0x2 + .2byte 0x256 + .byte 0xd + .uleb128 0x7 + .4byte .LASF15 + .byte 0x3 + .2byte 0x164 + .byte 0xc + .4byte 0x58 + .4byte 0xb7 + .uleb128 0x8 + .4byte 0xb7 + .uleb128 0x9 + .byte 0 + .uleb128 0xa + .byte 0x8 + .4byte 0x6d + .uleb128 0xb + .4byte .LASF16 + .byte 0x1 + .byte 0x6 + .byte 0x5 + .4byte 0x58 + .8byte .LFB6 + .8byte .LFE6-.LFB6 + .uleb128 0x1 + .byte 0x9c + .byte 0 + .section .debug_abbrev,"",@progbits +.Ldebug_abbrev0: + .uleb128 0x1 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .byte 0 + .byte 0 + .uleb128 0x2 + .uleb128 0x11 + .byte 0x1 + .uleb128 0x25 + .uleb128 0xe + .uleb128 0x13 + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x1b + .uleb128 0xe + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x12 + .uleb128 0x7 + .uleb128 0x10 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x3 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0x8 + .byte 0 + .byte 0 + .uleb128 0x4 + .uleb128 0x26 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x5 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x2 + .uleb128 0x18 + .byte 0 + .byte 0 + .uleb128 0x6 + .uleb128 0x2e + .byte 0 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x87 + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0x7 + .uleb128 0x2e + .byte 0x1 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3c + .uleb128 0x19 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x8 + .uleb128 0x5 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x9 + .uleb128 0x18 + .byte 0 + .byte 0 + .byte 0 + .uleb128 0xa + .uleb128 0xf + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0xb + .uleb128 0x2e + .byte 0 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x12 + .uleb128 0x7 + .uleb128 0x40 + .uleb128 0x18 + .uleb128 0x7c + .uleb128 0x19 + .byte 0 + .byte 0 + .byte 0 + .section .debug_aranges,"",@progbits + .4byte 0x2c + .2byte 0x2 + .4byte .Ldebug_info0 + .byte 0x8 + .byte 0 + .2byte 0 + .2byte 0 + .8byte .Ltext0 + .8byte .Letext0-.Ltext0 + .8byte 0 + .8byte 0 + .section .debug_line,"",@progbits +.Ldebug_line0: + .section .debug_str,"MS",@progbits,1 +.LASF8: + .ascii "long long int\000" +.LASF3: + .ascii "unsigned int\000" +.LASF16: + .ascii "main\000" +.LASF0: + .ascii "long unsigned int\000" +.LASF9: + .ascii "long long unsigned int\000" +.LASF11: + .ascii "nopic-local.c\000" +.LASF10: + .ascii "GNU C17 13.0.0 20220512 (experimental) -mabi=lp64d -marc" + .ascii "h=loongarch64 -mfpu=64 -mcmodel=normal -mtune=la464 -g -" + .ascii "O0\000" +.LASF1: + .ascii "unsigned char\000" +.LASF7: + .ascii "char\000" +.LASF6: + .ascii "long int\000" +.LASF13: + .ascii "g_nopic\000" +.LASF2: + .ascii "short unsigned int\000" +.LASF15: + .ascii "printf\000" +.LASF12: + .ascii "/home/liuzhensong/test/ld/nopic/test/local_var\000" +.LASF14: + .ascii "abort\000" +.LASF5: + .ascii "short int\000" +.LASF4: + .ascii "signed char\000" + .ident "GCC: (GNU) 13.0.0 20220512 (experimental)" + .section .note.GNU-stack,"",@progbits diff --git a/ld/testsuite/ld-loongarch-elf/nopic-local.sd b/ld/testsuite/ld-loongarch-elf/nopic-local.sd new file mode 100644 index 00000000000..2dd16be527d --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-local.sd @@ -0,0 +1,5 @@ +Symbol table '\.symtab' contains [0-9]+ entries: + +Num: +Value +Size +Type +Bind +Vis +Ndx +Name +#... + +[0-9]: +[0-9]+ +[0-9] +OBJECT +GLOBAL +DEFAULT +[0-9] +g_nopic +#pass diff --git a/ld/testsuite/ld-loongarch-elf/nopic-local.xd b/ld/testsuite/ld-loongarch-elf/nopic-local.xd new file mode 100644 index 00000000000..d0130663db6 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-local.xd @@ -0,0 +1,3 @@ +Hex dump of section '\.data': + +0x[0-9]+ +78563412.* +#pass diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-global-so.rd b/ld/testsuite/ld-loongarch-elf/nopic-weak-global-so.rd new file mode 100644 index 00000000000..2c32a543177 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-weak-global-so.rd @@ -0,0 +1,5 @@ +Relocation section '.rela.dyn'.* + +Offset +Info +Type +Sym\. +Value +Sym\. +Name +\+ +Addend +#... +[0-9a-f]+ +[0-9a-f]+ +R_LARCH_64 +[0-9a-f]+ +g_nopic +\+ +[0-9a-f] +#... diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-global-so.sd b/ld/testsuite/ld-loongarch-elf/nopic-weak-global-so.sd new file mode 100644 index 00000000000..4745ff78093 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-weak-global-so.sd @@ -0,0 +1,10 @@ +Symbol table '\.dynsym' contains [0-9]+ entries: + +Num: +Value +Size +Type +Bind +Vis +Ndx +Name +#... + +[0-9]+: +[0-9]+ +[0-9] +OBJECT +WEAK +DEFAULT +UND +g_nopic +#... +Symbol table '\.symtab' contains [0-9]+ entries: + +Num: +Value +Size +Type +Bind +Vis +Ndx +Name +#... + +[0-9]+: +[0-9]+ +[0-9] +OBJECT +WEAK +DEFAULT +UND +g_nopic +#... diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-global.out b/ld/testsuite/ld-loongarch-elf/nopic-weak-global.out new file mode 100644 index 00000000000..3a179f6634e --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-weak-global.out @@ -0,0 +1 @@ +0x12345678 diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-global.s b/ld/testsuite/ld-loongarch-elf/nopic-weak-global.s new file mode 100644 index 00000000000..298780a36c6 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-weak-global.s @@ -0,0 +1,374 @@ + .file "nopic-weak-global.c" + .text +.Ltext0: + .file 1 "nopic-weak-global.c" + .section .rodata + .align 3 +.LC0: + .ascii "0x%x\012\000" + .text + .align 2 + .globl main + .type main, @function +main: +.LFB6 = . + .loc 1 7 1 + .cfi_startproc + addi.d $r3,$r3,-16 + .cfi_def_cfa_offset 16 + st.d $r1,$r3,8 + stptr.d $r22,$r3,0 + .cfi_offset 1, -8 + .cfi_offset 22, -16 + addi.d $r22,$r3,16 + .cfi_def_cfa 22, 0 + .loc 1 8 15 + pcalau12i $r12,%got_pc_hi20(g_nopic) + ld.d $r12,$r12,%got_pc_lo12(g_nopic) + ldptr.w $r12,$r12,0 + .loc 1 8 6 + or $r13,$r12,$r0 + lu12i.w $r12,305418240>>12 # 0x12345000 + ori $r12,$r12,1656 + bne $r13,$r12,.L2 + .loc 1 9 5 + pcalau12i $r12,%got_pc_hi20(g_nopic) + ld.d $r12,$r12,%got_pc_lo12(g_nopic) + ldptr.w $r12,$r12,0 + or $r5,$r12,$r0 + pcalau12i $r12,%pc_hi20(.LC0) + addi.d $r4,$r12,%pc_lo12(.LC0) + bl %plt(printf) + b .L5 +.L2: + .loc 1 11 5 + bl %plt(abort) +.L5: + .loc 1 12 10 + or $r12,$r0,$r0 + .loc 1 13 1 + or $r4,$r12,$r0 + ld.d $r1,$r3,8 + .cfi_restore 1 + ldptr.d $r22,$r3,0 + .cfi_restore 22 + addi.d $r3,$r3,16 + .cfi_def_cfa_register 3 + jr $r1 + .cfi_endproc +.LFE6: + .size main, .-main + .weak g_nopic +.Letext0: + .file 2 "/usr/include/stdlib.h" + .file 3 "/usr/include/stdio.h" + .section .debug_info,"",@progbits +.Ldebug_info0: + .4byte 0xce + .2byte 0x5 + .byte 0x1 + .byte 0x8 + .4byte .Ldebug_abbrev0 + .uleb128 0x2 + .4byte .LASF10 + .byte 0x1d + .4byte .LASF11 + .4byte .LASF12 + .8byte .Ltext0 + .8byte .Letext0-.Ltext0 + .4byte .Ldebug_line0 + .uleb128 0x1 + .byte 0x8 + .byte 0x7 + .4byte .LASF0 + .uleb128 0x1 + .byte 0x1 + .byte 0x8 + .4byte .LASF1 + .uleb128 0x1 + .byte 0x2 + .byte 0x7 + .4byte .LASF2 + .uleb128 0x1 + .byte 0x4 + .byte 0x7 + .4byte .LASF3 + .uleb128 0x1 + .byte 0x1 + .byte 0x6 + .4byte .LASF4 + .uleb128 0x1 + .byte 0x2 + .byte 0x5 + .4byte .LASF5 + .uleb128 0x3 + .byte 0x4 + .byte 0x5 + .ascii "int\000" + .uleb128 0x1 + .byte 0x8 + .byte 0x5 + .4byte .LASF6 + .uleb128 0x1 + .byte 0x1 + .byte 0x6 + .4byte .LASF7 + .uleb128 0x4 + .4byte 0x66 + .uleb128 0x1 + .byte 0x8 + .byte 0x5 + .4byte .LASF8 + .uleb128 0x1 + .byte 0x8 + .byte 0x7 + .4byte .LASF9 + .uleb128 0x5 + .4byte .LASF13 + .byte 0x1 + .byte 0x4 + .byte 0x22 + .4byte 0x58 + .uleb128 0x6 + .4byte .LASF14 + .byte 0x2 + .2byte 0x256 + .byte 0xd + .uleb128 0x7 + .4byte .LASF15 + .byte 0x3 + .2byte 0x164 + .byte 0xc + .4byte 0x58 + .4byte 0xad + .uleb128 0x8 + .4byte 0xad + .uleb128 0x9 + .byte 0 + .uleb128 0xa + .byte 0x8 + .4byte 0x6d + .uleb128 0xb + .4byte .LASF16 + .byte 0x1 + .byte 0x6 + .byte 0x5 + .4byte 0x58 + .8byte .LFB6 + .8byte .LFE6-.LFB6 + .uleb128 0x1 + .byte 0x9c + .byte 0 + .section .debug_abbrev,"",@progbits +.Ldebug_abbrev0: + .uleb128 0x1 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .byte 0 + .byte 0 + .uleb128 0x2 + .uleb128 0x11 + .byte 0x1 + .uleb128 0x25 + .uleb128 0xe + .uleb128 0x13 + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x1b + .uleb128 0xe + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x12 + .uleb128 0x7 + .uleb128 0x10 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x3 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0x8 + .byte 0 + .byte 0 + .uleb128 0x4 + .uleb128 0x26 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x5 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0x6 + .uleb128 0x2e + .byte 0 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x87 + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0x7 + .uleb128 0x2e + .byte 0x1 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3c + .uleb128 0x19 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x8 + .uleb128 0x5 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x9 + .uleb128 0x18 + .byte 0 + .byte 0 + .byte 0 + .uleb128 0xa + .uleb128 0xf + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0xb + .uleb128 0x2e + .byte 0 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x12 + .uleb128 0x7 + .uleb128 0x40 + .uleb128 0x18 + .uleb128 0x7c + .uleb128 0x19 + .byte 0 + .byte 0 + .byte 0 + .section .debug_aranges,"",@progbits + .4byte 0x2c + .2byte 0x2 + .4byte .Ldebug_info0 + .byte 0x8 + .byte 0 + .2byte 0 + .2byte 0 + .8byte .Ltext0 + .8byte .Letext0-.Ltext0 + .8byte 0 + .8byte 0 + .section .debug_line,"",@progbits +.Ldebug_line0: + .section .debug_str,"MS",@progbits,1 +.LASF8: + .ascii "long long int\000" +.LASF3: + .ascii "unsigned int\000" +.LASF16: + .ascii "main\000" +.LASF0: + .ascii "long unsigned int\000" +.LASF9: + .ascii "long long unsigned int\000" +.LASF10: + .ascii "GNU C17 13.0.0 20220512 (experimental) -mabi=lp64d -marc" + .ascii "h=loongarch64 -mfpu=64 -mcmodel=normal -mtune=la464 -g -" + .ascii "O0\000" +.LASF1: + .ascii "unsigned char\000" +.LASF12: + .ascii "/home/liuzhensong/test/ld/nopic/test/global_var\000" +.LASF7: + .ascii "char\000" +.LASF6: + .ascii "long int\000" +.LASF13: + .ascii "g_nopic\000" +.LASF2: + .ascii "short unsigned int\000" +.LASF15: + .ascii "printf\000" +.LASF14: + .ascii "abort\000" +.LASF5: + .ascii "short int\000" +.LASF11: + .ascii "nopic-weak-global.c\000" +.LASF4: + .ascii "signed char\000" + .ident "GCC: (GNU) 13.0.0 20220512 (experimental)" + .section .note.GNU-stack,"",@progbits diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-global.sd b/ld/testsuite/ld-loongarch-elf/nopic-weak-global.sd new file mode 100644 index 00000000000..f4634d20106 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-weak-global.sd @@ -0,0 +1,5 @@ +#xfail: *-*-* +Symbol table '\.symtab' contains [0-9]+ entries: + +Num: +Value +Size +Type +Bind +Vis +Ndx +Name +#... + +[0-9]: +[0-9]+ +[0-9] +OBJECT +GLOBAL +DEFAULT +[0-9] +g_nopic diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-global.xd b/ld/testsuite/ld-loongarch-elf/nopic-weak-global.xd new file mode 100644 index 00000000000..d0130663db6 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-weak-global.xd @@ -0,0 +1,3 @@ +Hex dump of section '\.data': + +0x[0-9]+ +78563412.* +#pass diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-local.out b/ld/testsuite/ld-loongarch-elf/nopic-weak-local.out new file mode 100644 index 00000000000..3a179f6634e --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-weak-local.out @@ -0,0 +1 @@ +0x12345678 diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-local.rd b/ld/testsuite/ld-loongarch-elf/nopic-weak-local.rd new file mode 100644 index 00000000000..e69de29bb2d diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-local.s b/ld/testsuite/ld-loongarch-elf/nopic-weak-local.s new file mode 100644 index 00000000000..00a4b6162af --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-weak-local.s @@ -0,0 +1,383 @@ + .file "nopic-weak-local.c" + .text +.Ltext0: + .file 1 "nopic-weak-local.c" + .weak g_nopic + .data + .align 2 + .type g_nopic, @object + .size g_nopic, 4 +g_nopic: + .word 305419896 + .section .rodata + .align 3 +.LC0: + .ascii "0x%x\012\000" + .text + .align 2 + .globl main + .type main, @function +main: +.LFB6 = . + .loc 1 7 1 + .cfi_startproc + addi.d $r3,$r3,-16 + .cfi_def_cfa_offset 16 + st.d $r1,$r3,8 + stptr.d $r22,$r3,0 + .cfi_offset 1, -8 + .cfi_offset 22, -16 + addi.d $r22,$r3,16 + .cfi_def_cfa 22, 0 + .loc 1 8 15 + pcalau12i $r12,%pc_hi20(g_nopic) + addi.d $r12,$r12,%pc_lo12(g_nopic) + ldptr.w $r12,$r12,0 + .loc 1 8 6 + or $r13,$r12,$r0 + lu12i.w $r12,305418240>>12 # 0x12345000 + ori $r12,$r12,1656 + bne $r13,$r12,.L2 + .loc 1 9 5 + pcalau12i $r12,%pc_hi20(g_nopic) + addi.d $r12,$r12,%pc_lo12(g_nopic) + ldptr.w $r12,$r12,0 + or $r5,$r12,$r0 + pcalau12i $r12,%pc_hi20(.LC0) + addi.d $r4,$r12,%pc_lo12(.LC0) + bl %plt(printf) + b .L5 +.L2: + .loc 1 11 5 + bl %plt(abort) +.L5: + .loc 1 12 10 + or $r12,$r0,$r0 + .loc 1 13 1 + or $r4,$r12,$r0 + ld.d $r1,$r3,8 + .cfi_restore 1 + ldptr.d $r22,$r3,0 + .cfi_restore 22 + addi.d $r3,$r3,16 + .cfi_def_cfa_register 3 + jr $r1 + .cfi_endproc +.LFE6: + .size main, .-main +.Letext0: + .file 2 "/usr/include/stdlib.h" + .file 3 "/usr/include/stdio.h" + .section .debug_info,"",@progbits +.Ldebug_info0: + .4byte 0xd8 + .2byte 0x5 + .byte 0x1 + .byte 0x8 + .4byte .Ldebug_abbrev0 + .uleb128 0x2 + .4byte .LASF10 + .byte 0x1d + .4byte .LASF11 + .4byte .LASF12 + .8byte .Ltext0 + .8byte .Letext0-.Ltext0 + .4byte .Ldebug_line0 + .uleb128 0x1 + .byte 0x8 + .byte 0x7 + .4byte .LASF0 + .uleb128 0x1 + .byte 0x1 + .byte 0x8 + .4byte .LASF1 + .uleb128 0x1 + .byte 0x2 + .byte 0x7 + .4byte .LASF2 + .uleb128 0x1 + .byte 0x4 + .byte 0x7 + .4byte .LASF3 + .uleb128 0x1 + .byte 0x1 + .byte 0x6 + .4byte .LASF4 + .uleb128 0x1 + .byte 0x2 + .byte 0x5 + .4byte .LASF5 + .uleb128 0x3 + .byte 0x4 + .byte 0x5 + .ascii "int\000" + .uleb128 0x1 + .byte 0x8 + .byte 0x5 + .4byte .LASF6 + .uleb128 0x1 + .byte 0x1 + .byte 0x6 + .4byte .LASF7 + .uleb128 0x4 + .4byte 0x66 + .uleb128 0x1 + .byte 0x8 + .byte 0x5 + .4byte .LASF8 + .uleb128 0x1 + .byte 0x8 + .byte 0x7 + .4byte .LASF9 + .uleb128 0x5 + .4byte .LASF13 + .byte 0x1 + .byte 0x4 + .byte 0x1b + .4byte 0x58 + .uleb128 0x9 + .byte 0x3 + .8byte g_nopic + .uleb128 0x6 + .4byte .LASF14 + .byte 0x2 + .2byte 0x256 + .byte 0xd + .uleb128 0x7 + .4byte .LASF15 + .byte 0x3 + .2byte 0x164 + .byte 0xc + .4byte 0x58 + .4byte 0xb7 + .uleb128 0x8 + .4byte 0xb7 + .uleb128 0x9 + .byte 0 + .uleb128 0xa + .byte 0x8 + .4byte 0x6d + .uleb128 0xb + .4byte .LASF16 + .byte 0x1 + .byte 0x6 + .byte 0x5 + .4byte 0x58 + .8byte .LFB6 + .8byte .LFE6-.LFB6 + .uleb128 0x1 + .byte 0x9c + .byte 0 + .section .debug_abbrev,"",@progbits +.Ldebug_abbrev0: + .uleb128 0x1 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .byte 0 + .byte 0 + .uleb128 0x2 + .uleb128 0x11 + .byte 0x1 + .uleb128 0x25 + .uleb128 0xe + .uleb128 0x13 + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x1b + .uleb128 0xe + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x12 + .uleb128 0x7 + .uleb128 0x10 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x3 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0x8 + .byte 0 + .byte 0 + .uleb128 0x4 + .uleb128 0x26 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x5 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x2 + .uleb128 0x18 + .byte 0 + .byte 0 + .uleb128 0x6 + .uleb128 0x2e + .byte 0 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x87 + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0x7 + .uleb128 0x2e + .byte 0x1 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3c + .uleb128 0x19 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x8 + .uleb128 0x5 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x9 + .uleb128 0x18 + .byte 0 + .byte 0 + .byte 0 + .uleb128 0xa + .uleb128 0xf + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0xb + .uleb128 0x2e + .byte 0 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x39 + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x12 + .uleb128 0x7 + .uleb128 0x40 + .uleb128 0x18 + .uleb128 0x7c + .uleb128 0x19 + .byte 0 + .byte 0 + .byte 0 + .section .debug_aranges,"",@progbits + .4byte 0x2c + .2byte 0x2 + .4byte .Ldebug_info0 + .byte 0x8 + .byte 0 + .2byte 0 + .2byte 0 + .8byte .Ltext0 + .8byte .Letext0-.Ltext0 + .8byte 0 + .8byte 0 + .section .debug_line,"",@progbits +.Ldebug_line0: + .section .debug_str,"MS",@progbits,1 +.LASF8: + .ascii "long long int\000" +.LASF3: + .ascii "unsigned int\000" +.LASF16: + .ascii "main\000" +.LASF0: + .ascii "long unsigned int\000" +.LASF9: + .ascii "long long unsigned int\000" +.LASF10: + .ascii "GNU C17 13.0.0 20220512 (experimental) -mabi=lp64d -marc" + .ascii "h=loongarch64 -mfpu=64 -mcmodel=normal -mtune=la464 -g -" + .ascii "O0\000" +.LASF1: + .ascii "unsigned char\000" +.LASF7: + .ascii "char\000" +.LASF6: + .ascii "long int\000" +.LASF11: + .ascii "nopic-weak-local.c\000" +.LASF13: + .ascii "g_nopic\000" +.LASF2: + .ascii "short unsigned int\000" +.LASF15: + .ascii "printf\000" +.LASF12: + .ascii "/home/liuzhensong/test/ld/nopic/test/local_var\000" +.LASF14: + .ascii "abort\000" +.LASF5: + .ascii "short int\000" +.LASF4: + .ascii "signed char\000" + .ident "GCC: (GNU) 13.0.0 20220512 (experimental)" + .section .note.GNU-stack,"",@progbits diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-local.sd b/ld/testsuite/ld-loongarch-elf/nopic-weak-local.sd new file mode 100644 index 00000000000..b2970676a44 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-weak-local.sd @@ -0,0 +1,5 @@ +Symbol table '\.symtab' contains [0-9]+ entries: + +Num: +Value +Size +Type +Bind +Vis +Ndx +Name +#... + +[0-9]: +[0-9]+ +[0-9] +OBJECT +WEAK +DEFAULT +[0-9] +g_nopic +#pass diff --git a/ld/testsuite/ld-loongarch-elf/nopic-weak-local.xd b/ld/testsuite/ld-loongarch-elf/nopic-weak-local.xd new file mode 100644 index 00000000000..d0130663db6 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/nopic-weak-local.xd @@ -0,0 +1,3 @@ +Hex dump of section '\.data': + +0x[0-9]+ +78563412.* +#pass diff --git a/ld/testsuite/ld-loongarch-elf/pic.exp b/ld/testsuite/ld-loongarch-elf/pic.exp new file mode 100644 index 00000000000..40a5138a39a --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/pic.exp @@ -0,0 +1,202 @@ +# Expect script for LoongArch ELF linker tests +# Copyright (C) 2022 Free Software Foundation, Inc. +# +# This file is part of the GNU Binutils. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, +# MA 02110-1301, USA. +# + +if ![istarget loongarch*-*-*] { + return +} + +global verbose +set old_verbose verbose +# set verbose 3 + +# Check to see if the C compiler works +if { ![check_compiler_available] } { + return +} + + +set testname "nopic link test pre build" +set pre_builds [list \ + [list \ + "$testname" \ + "-shared $NOSANITIZE_CFLAGS" \ + "-fPIC $NOSANITIZE_CFLAGS" \ + {libnopic-global.s} \ + {} \ + "libnopic-global.so" \ + ] \ +] + +# 0:name +# 1:ld or ar options +# 2:compile options +# 3:filenames of source files +# 4:action and options. +# 5:name of output file +# 6:language (optional) +run_cc_link_tests $pre_builds + + + +set testname "nopic link test" + +set link_tests [list \ + [list \ + "$testname readelf -s/-x nopic-local" \ + "-T pic.ld" "" \ + "" \ + { nopic-local.s } \ + [list \ + [list readelf -s nopic-local.sd] \ + [list readelf "-x .data" nopic-local.xd] \ + ] \ + "nopic-local" \ + ] \ + [list \ + "$testname readelf -s/-x nopic-weak-local" \ + "-T pic.ld" "" \ + "" \ + {nopic-weak-local.s} \ + [list \ + [list readelf -s nopic-weak-local.sd] \ + [list readelf "-x .data" nopic-weak-local.xd] \ + ] \ + "nopic-weak-local" \ + ] \ + [list \ + "$testname readelf -s/-x nopic-global" \ + "-T pic.ld" "" \ + "" \ + {nopic-global.s libnopic-global.s} \ + [list \ + [list readelf -s nopic-global.sd] \ + [list readelf "-x .data" nopic-global.xd] \ + ] \ + "nopic-global" \ + ] \ + [list \ + "$testname readelf -s/-r nopic-global-so" \ + "-L./tmpdir -lnopic-global -L/usr/lib -lc" "" \ + "" \ + {nopic-global.s} \ + [list \ + [list readelf -s nopic-global-so.sd] \ + [list readelf -r nopic-global-so.rd] \ + ] \ + "nopic-global-so" \ + ] \ + [list \ + "$testname readelf -s/-x nopic-weak-global" \ + "-T pic.ld" "" \ + "" \ + {nopic-weak-global.s libnopic-global.s} \ + [list \ + [list readelf -s nopic-weak-global.sd] \ + [list readelf "-x .data" nopic-weak-global.xd] \ + ] \ + "nopic-weak-global" \ + ] \ + [list \ + "$testname readelf -s/-x nopic-weak-global-so" \ + "-L./tmpdir -lnopic-global -L/usr/lib -lc" "" \ + "" \ + {nopic-weak-global.s} \ + [list \ + [list readelf -s nopic-weak-global-so.sd] \ + [list readelf -r nopic-weak-global-so.rd] \ + ] \ + "nopic-weak-global-so" \ + ] \ +] + +# 0:name +# 1:ld/ar leading options, placed before object files +# 2:ld/ar trailing options, placed after object files +# 3:assembler options +# 4:filenames of assembler files +# 5:list of actions, options and expected outputs. +# 6:name of output file +# 7:compiler flags (optional) +run_ld_link_tests $link_tests + +set testname "nopic link exec test" + +set link_exec_tests [list \ + [list \ + "$testname" \ + "" "" \ + { nopic-local.s } \ + "nopic-local" \ + "nopic-local.out" \ + ] \ + [list \ + "$testname" \ + "" "" \ + { nopic-weak-local.s } \ + "nopic-weak-local" \ + "nopic-weak-local.out" \ + ] \ + [list \ + "$testname" \ + "" "" \ + { nopic-global.s libnopic-global.s } \ + "nopic-global" \ + "nopic-global.out" \ + ] \ + [list \ + "$testname" \ + "-L./tmpdir -lnopic-global -lc -Wl,-rpath=./tmpdir -no-pie" "" \ + { nopic-global.s } \ + "nopic-global-so" \ + "nopic-global.out" \ + ] \ + [list \ + "$testname" \ + "" "" \ + { nopic-weak-global.s libnopic-global.s } \ + "nopic-weak-global" \ + "nopic-weak-global.out" \ + ] \ + [list \ + "$testname" \ + "-L./tmpdir -lnopic-global -lc -Wl,-rpath=./tmpdir -no-pie" "" \ + { nopic-weak-global.s } \ + "nopic-weak-global-so" \ + "nopic-weak-global.out" \ + ] \ +] + +# ldtests contains test-items with 3 items followed by 1 lists, 2 items +# and 3 optional items: +# 0:name +# 1:ld leading options, placed before object files +# 2:assembler options +# 3:filenames of source files +# 4:name of output file +# 5:expected output +# 6:compiler flags (optional) +# 7:language (optional) +# 8:linker warning (optional) +# 9:ld trailing options, placed after object files (optional) +run_ld_link_exec_tests $link_exec_tests + + +#set verbose old_verbose diff --git a/ld/testsuite/ld-loongarch-elf/pic.ld b/ld/testsuite/ld-loongarch-elf/pic.ld new file mode 100644 index 00000000000..d57b37f5310 --- /dev/null +++ b/ld/testsuite/ld-loongarch-elf/pic.ld @@ -0,0 +1,18 @@ +SECTIONS +{ + .bss : { *(.dynbss) } + .got : { *(.got.plt) *(.got) } + .dynamic : { *(.dynamic) } + .data : { *(.data) } + .rela.dyn : { *(.rela.*) } + .interp : { *(.interp) } + .hash : { *(.hash) } + .gnu.hash : { *(.gnu.hash) } + .dynsym : { *(.dynsym) } + .dynstr : { *(.dynstr) } + .debug_foo : { *(.debug_foo) } + .shstrtab : { *(.shstrtab) } + .symtab : { *(.symtab) } + .strtab : { *(.strtab) } + /DISCARD/ : { *(*) } +}