+2020-07-22  Maciej W. Rozycki  <macro@linux-mips.org>
+
+       * testsuite/gas/mips/jal-svr4pic-irix.d: New file.
+       * testsuite/gas/mips/mips1@jal-svr4pic-irix.d: New file.
+       * testsuite/gas/mips/mipsr6@jal-svr4pic-irix.d: New file.
+       * testsuite/gas/mips/micromips@jal-svr4pic-irix.d: New file.
+       * testsuite/gas/mips/r3000@jal-svr4pic-irix.d: New file.
+       * testsuite/gas/mips/jal-svr4pic-local-irix.d: New file.
+       * testsuite/gas/mips/mips1@jal-svr4pic-local-irix.d: New file.
+       * testsuite/gas/mips/micromips@jal-svr4pic-local-irix.d: New
+       file.
+       * testsuite/gas/mips/r3000@jal-svr4pic-local-irix.d: New file.
+       * testsuite/gas/mips/jal-svr4pic-noreorder-irix.d: New file.
+       * testsuite/gas/mips/mips1@jal-svr4pic-noreorder-irix.d: New
+       file.
+       * testsuite/gas/mips/mipsr6@jal-svr4pic-noreorder-irix.d: New
+       file.
+       * testsuite/gas/mips/micromips@jal-svr4pic-noreorder-irix.d: New
+       file.
+       * testsuite/gas/mips/r3000@jal-svr4pic-noreorder-irix.d: New
+       file.
+       * testsuite/gas/mips/jal-xgot-irix.d: New file.
+       * testsuite/gas/mips/jalr2-irix.d: New file.
+       * testsuite/gas/mips/micromips-branch-relax-insn32-pic-irix.d:
+       New file.
+       * testsuite/gas/mips/micromips-branch-relax-pic-irix.d: New
+       file.
+       * testsuite/gas/mips/mips-abi32-pic2-irix.d: New file.
+       * testsuite/gas/mips/jal-svr4pic-local.d: Don't exclude
+       `*-*-irix*' targets.  Add source file designator.
+       * testsuite/gas/mips/mips1@jal-svr4pic-local.d: Don't exclude
+       `*-*-irix*' targets.
+       * testsuite/gas/mips/r3000@jal-svr4pic-local.d: Likewise.
+       * testsuite/gas/mips/micromips@jal-svr4pic-local.d: Likewise.
+       * testsuite/gas/mips/jalr2.d: Add name designator.
+       * testsuite/gas/mips/mips.exp: Use respective IRIX variants for
+       tests involving the JALR relocation throughout.
+
 2020-07-22  Maciej W. Rozycki  <macro@linux-mips.org>
 
        * testsuite/gas/mips/mips.exp: Use a helper variable for
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS jal-svr4pic
+#as: -32 -KPIC
+#source: jal-svr4pic.s
+
+# Test the jal macro with -KPIC.
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 3c1c0000     lui     gp,0x0
+[      ]*[0-9a-f]+: R_MIPS_HI16        _gp_disp
+[0-9a-f]+ <[^>]*> 279c0000     addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        _gp_disp
+[0-9a-f]+ <[^>]*> 0399e021     addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> afbc0000     sw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 03202009     jalr    a0,t9
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_GOT16       .text
+[0-9a-f]+ <[^>]*> 27390000     addiu   t9,t9,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        .text
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      weak_text_label
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      external_text_label
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 1000ffea     b       0+0000 <text_label>
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+       \.\.\.
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS JALR relocation against local symbol
+#as: -32
+#source: jal-svr4pic-local.s
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 3c1c0000     lui     gp,0x0
+[      ]*[0-9a-f]+: R_MIPS_HI16        _gp_disp
+[0-9a-f]+ <[^>]*> 279c0000     addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        _gp_disp
+[0-9a-f]+ <[^>]*> 0399e021     addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> 27bdffe0     addiu   sp,sp,-32
+[0-9a-f]+ <[^>]*> afbf001c     sw      ra,28\(sp\)
+[0-9a-f]+ <[^>]*> afbc0010     sw      gp,16\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_GOT16       \.text
+[0-9a-f]+ <[^>]*> 27390040     addiu   t9,t9,64
+[      ]*[0-9a-f]+: R_MIPS_LO16        \.text
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0010     lw      gp,16\(sp\)
+[0-9a-f]+ <[^>]*> 8fbf001c     lw      ra,28\(sp\)
+[0-9a-f]+ <[^>]*> 03e0000[89]  jr      ra
+[0-9a-f]+ <[^>]*> 27bd0020     addiu   sp,sp,32
+       \.\.\.
+[0-9a-f]+ <[^>]*> 03e0000[89]  jr      ra
+[0-9a-f]+ <[^>]*> 00000000     nop
+       \.\.\.
 
 #objdump: -dr --prefix-addresses --show-raw-insn
 #name: MIPS JALR relocation against local symbol
 #as: -32
-#notarget: *-*-irix*
+#source: jal-svr4pic-local.s
 
 .*: +file format .*mips.*
 
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS jal-svr4pic noreorder
+#as: -32 -KPIC
+#source: jal-svr4pic-noreorder.s
+
+# Test the jal macro with -KPIC and `.set noreorder'.
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 3c1c0000     lui     gp,0x0
+[      ]*[0-9a-f]+: R_MIPS_HI16        _gp_disp
+[0-9a-f]+ <[^>]*> 279c0000     addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        _gp_disp
+[0-9a-f]+ <[^>]*> 0399e021     addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> afbc0000     sw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 03202009     jalr    a0,t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_GOT16       .text
+[0-9a-f]+ <[^>]*> 27390000     addiu   t9,t9,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        .text
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      weak_text_label
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      external_text_label
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 1000ffe8     b       0+0000 <text_label>
+[0-9a-f]+ <[^>]*> 00000000     nop
+       \.\.\.
 
--- /dev/null
+#objdump: -dr --prefix-addresses -mmips:3000
+#name: MIPS R3000 jal-xgot
+#as: -32 -mips1 -KPIC -xgot -mtune=r3000
+#source: jal-svr4pic.s
+
+# Test the jal macro with -KPIC -xgot.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> lui     gp,0x0
+[      ]*0: R_MIPS_HI16        _gp_disp
+0+0004 <[^>]*> addiu   gp,gp,0
+[      ]*4: R_MIPS_LO16        _gp_disp
+0+0008 <[^>]*> addu    gp,gp,t9
+0+000c <[^>]*> sw      gp,0\(sp\)
+0+0010 <[^>]*> jalr    t9
+0+0014 <[^>]*> nop
+0+0018 <[^>]*> lw      gp,0\(sp\)
+0+001c <[^>]*> jalr    a0,t9
+0+0020 <[^>]*> nop
+0+0024 <[^>]*> lw      gp,0\(sp\)
+0+0028 <[^>]*> nop
+0+002c <[^>]*> lw      t9,0\(gp\)
+[      ]*2c: R_MIPS_GOT16      .text
+0+0030 <[^>]*> nop
+0+0034 <[^>]*> addiu   t9,t9,0
+[      ]*34: R_MIPS_LO16       .text
+0+0038 <[^>]*> jalr    t9
+0+003c <[^>]*> nop
+0+0040 <[^>]*> lw      gp,0\(sp\)
+0+0044 <[^>]*> lui     t9,0x0
+[      ]*44: R_MIPS_CALL_HI16  weak_text_label
+0+0048 <[^>]*> addu    t9,t9,gp
+0+004c <[^>]*> lw      t9,0\(t9\)
+[      ]*4c: R_MIPS_CALL_LO16  weak_text_label
+0+0050 <[^>]*> nop
+0+0054 <[^>]*> jalr    t9
+0+0058 <[^>]*> nop
+0+005c <[^>]*> lw      gp,0\(sp\)
+0+0060 <[^>]*> lui     t9,0x0
+[      ]*60: R_MIPS_CALL_HI16  external_text_label
+0+0064 <[^>]*> addu    t9,t9,gp
+0+0068 <[^>]*> lw      t9,0\(t9\)
+[      ]*68: R_MIPS_CALL_LO16  external_text_label
+0+006c <[^>]*> nop
+0+0070 <[^>]*> jalr    t9
+0+0074 <[^>]*> nop
+0+0078 <[^>]*> lw      gp,0\(sp\)
+0+007c <[^>]*> b       0+0000 <text_label>
+0+0080 <[^>]*> nop
+       ...
 
--- /dev/null
+#name: MIPS JAL with an addend
+#as: -mips2 -32 -KPIC
+#objdump: -dr
+#source: jalr2.s
+
+.*
+
+
+Disassembly of section \.text:
+
+.* <test>:
+.*:    afbc0010        sw      gp,16\(sp\)
+.*:    8f990000        lw      t9,0\(gp\)
+.*: R_MIPS_GOT16       \.text
+.*:    2739004c        addiu   t9,t9,76
+.*: R_MIPS_LO16        \.text
+.*:    0320f809        jalr    t9
+.*:    00000000        nop
+.*:    8fbc0010        lw      gp,16\(sp\)
+.*:    8f990000        lw      t9,0\(gp\)
+.*: R_MIPS_GOT16       \.text
+.*:    27390058        addiu   t9,t9,88
+.*: R_MIPS_LO16        \.text
+.*:    0320f809        jalr    t9
+.*:    00000000        nop
+.*:    8fbc0010        lw      gp,16\(sp\)
+.*:    8f990000        lw      t9,0\(gp\)
+.*: R_MIPS_CALL16      global
+.*:    0320f809        jalr    t9
+.*:    00000000        nop
+.*:    8fbc0010        lw      gp,16\(sp\)
+.*:    8f99000c        lw      t9,12\(gp\)
+.*: R_MIPS_CALL16      global
+.*:    0320f809        jalr    t9
+.*:    00000000        nop
+.*:    8fbc0010        lw      gp,16\(sp\)
+
+.* <local>:
+       \.\.\.
 
+#name: MIPS JAL with an addend
 #as: -mips2 -32 -KPIC
 #objdump: -dr
 
 
--- /dev/null
+#objdump: -dr --show-raw-insn
+#name: Relax microMIPS branches (insn32 mode, pic)
+#as: -mips32r2 -32 -relax-branch -KPIC -minsn32 --defsym insn32=1
+#warning_output: micromips-branch-relax-insn32-pic.l
+#source: micromips-branch-relax.s
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+
+[0-9a-f]+ <test>:
+[ 0-9a-f]+:    9400 fffe       b       [0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    b403 fffe       bnez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    9400 fffe       b       [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    40e0 fffe       bc      [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4060 fffe       bal     [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    b403 fffe       bnez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    9400 fffe       b       [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    40e0 fffe       bc      [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4060 fffe       bal     [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    b403 fffe       bnez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    9400 fffe       b       [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    40e0 fffe       bc      [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4060 fffe       bal     [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    b403 fffe       bnez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    ff3c 0001       lw      t9,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3339 04fb       addiu   t9,t9,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    03f9 0f3c       jalr    t9
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    03e1 0f3c       jalr    at
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    b483 fffe       bne     v1,a0,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    9483 fffe       beq     v1,a0,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4043 fffe       bgez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4003 fffe       bltz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    40d4 fffe       bgtz    s4,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4094 fffe       blez    s4,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    40a3 fffe       bnezc   v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    0000 0000       nop
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    40e3 fffe       beqzc   v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    0000 0000       nop
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    401e fffe       bltz    s8,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    03e1 0f3c       jalr    at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    405e fffe       bgez    s8,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    03e1 0f3c       jalr    at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    43a0 fffe       bc1t    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4380 fffe       bc1f    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    42a0 fffe       bc2t    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4280 fffe       bc2f    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    b483 fffe       bne     v1,a0,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    b403 fffe       bnez    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0083 0b50       slt     at,v1,a0
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0083 0b50       slt     at,v1,a0
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0083 0b90       sltu    at,v1,a0
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0083 0b90       sltu    at,v1,a0
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    4003 fffe       bltz    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    03e1 0f3c       jalr    at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    4003 fffe       bltz    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0064 0b50       slt     at,a0,v1
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0064 0b50       slt     at,a0,v1
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0064 0b90       sltu    at,a0,v1
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0064 0b90       sltu    at,a0,v1
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    4083 fffe       blez    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0064 0b50       slt     at,a0,v1
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0064 0b50       slt     at,a0,v1
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0064 0b90       sltu    at,a0,v1
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0064 0b90       sltu    at,a0,v1
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    40c3 fffe       bgtz    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0083 0b50       slt     at,v1,a0
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0083 0b50       slt     at,v1,a0
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0083 0b90       sltu    at,v1,a0
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0083 0b90       sltu    at,v1,a0
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    4043 fffe       bgez    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    03e1 0f3c       jalr    at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    4043 fffe       bgez    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    9483 fffe       beq     v1,a0,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0000 0000       nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 04fb       addiu   at,at,1275
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    0001 0f3c       jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+       \.\.\.
+
+[0-9a-f]+ <test2>:
+       \.\.\.
+
+[0-9a-f]+ <test3>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+       \.\.\.
 
--- /dev/null
+#objdump: -dr --show-raw-insn
+#name: Relax microMIPS branches (pic)
+#as: -mips32r2 -32 -relax-branch -KPIC
+#warning_output: micromips-branch-relax-pic.l
+#source: micromips-branch-relax.s
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+
+[0-9a-f]+ <test>:
+[ 0-9a-f]+:    9400 fffe       b       [0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    b403 fffe       bnez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    cfff            b       [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC10_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    40e0 fffe       bc      [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    4060 fffe       bal     [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4260 fffe       bals    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    8dff            beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC7_S1 .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    adff            bnez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC7_S1 .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    cfff            b       [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC10_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    8dff            beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC7_S1 .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    adff            bnez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC7_S1 .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    9400 fffe       b       [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    40e0 fffe       bc      [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    4060 fffe       bal     [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4260 fffe       bals    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    b403 fffe       bnez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    cfff            b       [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC10_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    8dff            beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC7_S1 .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    adff            bnez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC7_S1 .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    9400 fffe       b       [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    40e0 fffe       bc      [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    4060 fffe       bal     [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    4260 fffe       bals    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    b403 fffe       bnez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    ff3c 0001       lw      t9,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3339 045b       addiu   t9,t9,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45d9            jalr    t9
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45a1            jrc     at
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45c1            jalr    at
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45e1            jalrs   at
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    b483 fffe       bne     v1,a0,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    9483 fffe       beq     v1,a0,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    4043 fffe       bgez    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    4003 fffe       bltz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    40d4 fffe       bgtz    s4,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    4094 fffe       blez    s4,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    40a3 fffe       bnezc   v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45a1            jrc     at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    40e3 fffe       beqzc   v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45a1            jrc     at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    401e fffe       bltz    s8,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45c1            jalr    at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    405e fffe       bgez    s8,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45c1            jalr    at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1950       addu    v1,a0,a1
+[ 0-9a-f]+:    401e fffe       bltz    s8,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45e1            jalrs   at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    405e fffe       bgez    s8,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45e1            jalrs   at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    43a0 fffe       bc1t    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    4380 fffe       bc1f    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    42a0 fffe       bc2t    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    4280 fffe       bc2f    [0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+[ 0-9a-f]+:    b483 fffe       bne     v1,a0,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    b403 fffe       bnez    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0083 0b50       slt     at,v1,a0
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0083 0b50       slt     at,v1,a0
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0083 0b90       sltu    at,v1,a0
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0083 0b90       sltu    at,v1,a0
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    4003 fffe       bltz    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45c1            jalr    at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    4003 fffe       bltz    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0064 0b50       slt     at,a0,v1
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0064 0b50       slt     at,a0,v1
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0064 0b90       sltu    at,a0,v1
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0064 0b90       sltu    at,a0,v1
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    4083 fffe       blez    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0064 0b50       slt     at,a0,v1
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0064 0b50       slt     at,a0,v1
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0064 0b90       sltu    at,a0,v1
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0064 0b90       sltu    at,a0,v1
+[ 0-9a-f]+:    b401 fffe       bnez    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    40c3 fffe       bgtz    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0083 0b50       slt     at,v1,a0
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0083 0b50       slt     at,v1,a0
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    0083 0b90       sltu    at,v1,a0
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    0083 0b90       sltu    at,v1,a0
+[ 0-9a-f]+:    9401 fffe       beqz    at,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    4043 fffe       bgez    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    45c1            jalr    at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    4043 fffe       bgez    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    9483 fffe       beq     v1,a0,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+
+[0-9a-f]+ <.*>:
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+[ 0-9a-f]+:    9403 fffe       beqz    v1,[0-9a-f]+ <.*\+0x[0-9a-f]+>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        .*
+[ 0-9a-f]+:    0c00            nop
+[ 0-9a-f]+:    fc3c 0001       lw      at,1\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[ 0-9a-f]+:    3021 045b       addiu   at,at,1115
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[ 0-9a-f]+:    4581            jr      at
+[ 0-9a-f]+:    00a4 1b10       xor     v1,a0,a1
+
+[0-9a-f]+ <.*>:
+       \.\.\.
+
+[0-9a-f]+ <test2>:
+       \.\.\.
+
+[0-9a-f]+ <test3>:
+[ 0-9a-f]+:    05d8            addu    v1,a0,a1
+       \.\.\.
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS jal-svr4pic
+#as: -32 -KPIC
+#source: jal-svr4pic.s
+
+# Test the jal macro with -KPIC (microMIPS).
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 41bc 0000    lui     gp,0x0
+[      ]*[0-9a-f]+: R_MICROMIPS_HI16   _gp_disp
+[0-9a-f]+ <[^>]*> 339c 0000    addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   _gp_disp
+[0-9a-f]+ <[^>]*> 033c e150    addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> fb9d 0000    sw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 45f9         jalrs   t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+[0-9a-f]+ <[^>]*> ff9d 0000    lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 0099 4f3c    jalrs   a0,t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+[0-9a-f]+ <[^>]*> ff9d 0000    lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> ff3c 0000    lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[0-9a-f]+ <[^>]*> 3339 0001    addiu   t9,t9,1
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[0-9a-f]+ <[^>]*> 45f9         jalrs   t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+[0-9a-f]+ <[^>]*> ff9d 0000    lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> ff3c 0000    lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_CALL16 weak_text_label
+[0-9a-f]+ <[^>]*> 45f9         jalrs   t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+[0-9a-f]+ <[^>]*> ff9d 0000    lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> ff3c 0000    lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_CALL16 external_text_label
+[0-9a-f]+ <[^>]*> 45f9         jalrs   t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+([0-9a-f]+) <[^>]*> 9400 fffe  b       \1 <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        text_label
+[0-9a-f]+ <[^>]*> ff9d 0000    lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 0c00         nop
+       \.\.\.
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS JALR relocation against local symbol
+#as: -32
+#source: jal-svr4pic-local.s
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 41bc 0000    lui     gp,0x0
+[      ]*[0-9a-f]+: R_MICROMIPS_HI16   _gp_disp
+[0-9a-f]+ <[^>]*> 339c 0000    addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   _gp_disp
+[0-9a-f]+ <[^>]*> 033c e150    addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> 4ff1         addiu   sp,sp,-32
+[0-9a-f]+ <[^>]*> cbe7         sw      ra,28\(sp\)
+[0-9a-f]+ <[^>]*> fb9d 0010    sw      gp,16\(sp\)
+[0-9a-f]+ <[^>]*> ff3c 0000    lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[0-9a-f]+ <[^>]*> 3339 0031    addiu   t9,t9,49
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[0-9a-f]+ <[^>]*> 45f9         jalrs   t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+[0-9a-f]+ <[^>]*> ff9d 0010    lw      gp,16\(sp\)
+[0-9a-f]+ <[^>]*> 4be7         lw      ra,28\(sp\)
+[0-9a-f]+ <[^>]*> 459f         jr      ra
+[0-9a-f]+ <[^>]*> 4c11         addiu   sp,sp,32
+[0-9a-f]+ <[^>]*> 0000 0000    nop
+       \.\.\.
+[0-9a-f]+ <[^>]*> 45bf         jrc     ra
+       \.\.\.
 
 #objdump: -dr --prefix-addresses --show-raw-insn
 #name: MIPS JALR relocation against local symbol
 #as: -32
-#notarget: *-*-irix*
 #source: jal-svr4pic-local.s
 
 .*: +file format .*mips.*
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS jal-svr4pic noreorder
+#as: -32 -KPIC
+#source: jal-svr4pic-noreorder.s
+
+# Test the jal macro with -KPIC and `.set noreorder' (microMIPS).
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 41bc 0000    lui     gp,0x0
+[      ]*[0-9a-f]+: R_MICROMIPS_HI16   _gp_disp
+[0-9a-f]+ <[^>]*> 339c 0000    addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   _gp_disp
+[0-9a-f]+ <[^>]*> 033c e150    addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> fb9d 0000    sw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 45f9         jalrs   t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+[0-9a-f]+ <[^>]*> ff9d 0000    lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 0099 4f3c    jalrs   a0,t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+[0-9a-f]+ <[^>]*> ff9d 0000    lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> ff3c 0000    lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_GOT16  \.text
+[0-9a-f]+ <[^>]*> 3339 0001    addiu   t9,t9,1
+[      ]*[0-9a-f]+: R_MICROMIPS_LO16   \.text
+[0-9a-f]+ <[^>]*> 45f9         jalrs   t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+[0-9a-f]+ <[^>]*> ff9d 0000    lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> ff3c 0000    lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_CALL16 weak_text_label
+[0-9a-f]+ <[^>]*> 45f9         jalrs   t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+[0-9a-f]+ <[^>]*> ff9d 0000    lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> ff3c 0000    lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MICROMIPS_CALL16 external_text_label
+[0-9a-f]+ <[^>]*> 45f9         jalrs   t9
+[0-9a-f]+ <[^>]*> 0c00         nop
+[0-9a-f]+ <[^>]*> ff9d 0000    lw      gp,0\(sp\)
+([0-9a-f]+) <[^>]*> 9400 fffe  b       \1 <.*>
+[      ]*[0-9a-f]+: R_MICROMIPS_PC16_S1        text_label
+[0-9a-f]+ <[^>]*> 0c00         nop
+       \.\.\.
 
--- /dev/null
+#objdump: -d -mmips:8000 -r --prefix-addresses --show-raw-insn
+#as: -march=8000 -EB -mabi=32 -KPIC
+#name: MIPS -mabi=32 test 2 (SVR4 PIC)
+#source: mips-abi32-pic2.s
+
+.*: +file format.*
+
+Disassembly of section \.text:
+0+000 <[^>]*> 3c1c0000         lui     gp,0x0
+                       0: R_MIPS_HI16  _gp_disp
+0+004 <[^>]*> 279c0000         addiu   gp,gp,0
+                       4: R_MIPS_LO16  _gp_disp
+0+008 <[^>]*> 0399e021         addu    gp,gp,t9
+0+00c <[^>]*> afbc0008         sw      gp,8\(sp\)
+0+010 <[^>]*> 8f990000         lw      t9,0\(gp\)
+                       10: R_MIPS_GOT16        \.text
+0+014 <[^>]*> 273900cc         addiu   t9,t9,204
+                       14: R_MIPS_LO16 \.text
+0+018 <[^>]*> 0320f809         jalr    t9
+0+01c <[^>]*> 00000000         nop
+0+020 <[^>]*> 8fbc0008         lw      gp,8\(sp\)
+0+024 <[^>]*> 00000000         nop
+0+028 <[^>]*> 0320f809         jalr    t9
+0+02c <[^>]*> 00000000         nop
+0+030 <[^>]*> 8fbc0008         lw      gp,8\(sp\)
+0+034 <[^>]*> 3c1c0000         lui     gp,0x0
+                       34: R_MIPS_HI16 _gp_disp
+0+038 <[^>]*> 279c0000         addiu   gp,gp,0
+                       38: R_MIPS_LO16 _gp_disp
+0+03c <[^>]*> 0399e021         addu    gp,gp,t9
+0+040 <[^>]*> 3c010001         lui     at,0x1
+0+044 <[^>]*> 003d0821         addu    at,at,sp
+0+048 <[^>]*> ac3c8000         sw      gp,-32768\(at\)
+0+04c <[^>]*> 8f990000         lw      t9,0\(gp\)
+                       4c: R_MIPS_GOT16        \.text
+0+050 <[^>]*> 273900cc         addiu   t9,t9,204
+                       50: R_MIPS_LO16 \.text
+0+054 <[^>]*> 0320f809         jalr    t9
+0+058 <[^>]*> 00000000         nop
+0+05c <[^>]*> 3c010001         lui     at,0x1
+0+060 <[^>]*> 003d0821         addu    at,at,sp
+0+064 <[^>]*> 8c3c8000         lw      gp,-32768\(at\)
+0+068 <[^>]*> 00000000         nop
+0+06c <[^>]*> 0320f809         jalr    t9
+0+070 <[^>]*> 00000000         nop
+0+074 <[^>]*> 3c010001         lui     at,0x1
+0+078 <[^>]*> 003d0821         addu    at,at,sp
+0+07c <[^>]*> 8c3c8000         lw      gp,-32768\(at\)
+0+080 <[^>]*> 3c1c0000         lui     gp,0x0
+                       80: R_MIPS_HI16 _gp_disp
+0+084 <[^>]*> 279c0000         addiu   gp,gp,0
+                       84: R_MIPS_LO16 _gp_disp
+0+088 <[^>]*> 0399e021         addu    gp,gp,t9
+0+08c <[^>]*> 3c010001         lui     at,0x1
+0+090 <[^>]*> 003d0821         addu    at,at,sp
+0+094 <[^>]*> ac3c0000         sw      gp,0\(at\)
+0+098 <[^>]*> 8f990000         lw      t9,0\(gp\)
+                       98: R_MIPS_GOT16        \.text
+0+09c <[^>]*> 273900cc         addiu   t9,t9,204
+                       9c: R_MIPS_LO16 \.text
+0+0a0 <[^>]*> 0320f809         jalr    t9
+0+0a4 <[^>]*> 00000000         nop
+0+0a8 <[^>]*> 3c010001         lui     at,0x1
+0+0ac <[^>]*> 003d0821         addu    at,at,sp
+0+0b0 <[^>]*> 8c3c0000         lw      gp,0\(at\)
+0+0b4 <[^>]*> 00000000         nop
+0+0b8 <[^>]*> 0320f809         jalr    t9
+0+0bc <[^>]*> 00000000         nop
+0+0c0 <[^>]*> 3c010001         lui     at,0x1
+0+0c4 <[^>]*> 003d0821         addu    at,at,sp
+0+0c8 <[^>]*> 8c3c0000         lw      gp,0\(at\)
+       \.\.\.
 
     run_dump_test_arches "24k-triple-stores-11" \
                                        [mips_arch_list_matching mips1]
 
-    run_dump_test_arches "jal-svr4pic" [mips_arch_list_matching mips1]
-    run_dump_test_arches "jal-svr4pic-noreorder" \
+    run_dump_test_arches "jal-svr4pic${imips}" \
                                        [mips_arch_list_matching mips1]
-    run_dump_test_arches "jal-svr4pic-local" \
+    run_dump_test_arches "jal-svr4pic-noreorder${imips}" \
+                                       [mips_arch_list_matching mips1]
+    run_dump_test_arches "jal-svr4pic-local${imips}" \
                                        [mips_arch_list_matching mips1]
     if $has_newabi {
        run_dump_test_arches "jal-svr4pic-local-n32" \
        run_dump_test_arches "jal-svr4pic-local-n64" \
                                        [mips_arch_list_matching mips3]
     }
-    run_dump_test "jal-xgot"
+    run_dump_test "jal-xgot${imips}"
     run_list_test_arches "jal-range" "-32" [mips_arch_list_matching mips1]
     if $has_newabi { run_dump_test "jal-newabi" }
     run_dump_test "la"
 
     run_dump_test "mips-abi32"
     run_dump_test "mips-abi32-pic"
-    run_dump_test "mips-abi32-pic2"
+    run_dump_test "mips-abi32-pic2${imips}"
 
     run_dump_test "elf${el}-rel"
     run_dump_test_arches "elf${el}-rel2" \
     run_list_test "tls-ill" "-32"
     run_dump_test "tls-o32"
     run_dump_test "tls-relw"
-    run_dump_test "jalr2"
+    run_dump_test "jalr2${imips}"
     run_dump_test_arches "jalr3"       [mips_arch_list_matching mips1 \
                                            !micromips]
     run_dump_test_arches "jalr4"       [mips_arch_list_matching mips1 \
        "-32 -march=mips64 -mmicromips" "microMIPS instruction size 0"
     run_dump_test "micromips-size-1"
     run_dump_test "micromips-branch-relax"
-    run_dump_test "micromips-branch-relax-pic"
+    run_dump_test "micromips-branch-relax-pic${imips}"
     run_dump_test "micromips-branch-relax-insn32"
-    run_dump_test "micromips-branch-relax-insn32-pic"
+    run_dump_test "micromips-branch-relax-insn32-pic${imips}"
     run_dump_test "micromips-branch-delay"
     run_dump_test "micromips-warn-branch-delay"
     run_dump_test "micromips-warn-branch-delay-1"
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS jal-svr4pic
+#as: -32 -KPIC
+#source: jal-svr4pic.s
+
+# Test the jal macro with -KPIC (MIPS1).
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 3c1c0000     lui     gp,0x0
+[      ]*[0-9a-f]+: R_MIPS_HI16        _gp_disp
+[0-9a-f]+ <[^>]*> 279c0000     addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        _gp_disp
+[0-9a-f]+ <[^>]*> 0399e021     addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> afbc0000     sw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 03202009     jalr    a0,t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_GOT16       .text
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 27390000     addiu   t9,t9,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        .text
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      weak_text_label
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      external_text_label
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 1000ffe2     b       0+0000 <text_label>
+[0-9a-f]+ <[^>]*> 00000000     nop
+       \.\.\.
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS JALR relocation against local symbol
+#as: -32
+#source: jal-svr4pic-local.s
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 3c1c0000     lui     gp,0x0
+[      ]*[0-9a-f]+: R_MIPS_HI16        _gp_disp
+[0-9a-f]+ <[^>]*> 279c0000     addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        _gp_disp
+[0-9a-f]+ <[^>]*> 0399e021     addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> 27bdffe0     addiu   sp,sp,-32
+[0-9a-f]+ <[^>]*> afbf001c     sw      ra,28\(sp\)
+[0-9a-f]+ <[^>]*> afbc0010     sw      gp,16\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_GOT16       \.text
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 27390040     addiu   t9,t9,64
+[      ]*[0-9a-f]+: R_MIPS_LO16        \.text
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0010     lw      gp,16\(sp\)
+[0-9a-f]+ <[^>]*> 8fbf001c     lw      ra,28\(sp\)
+[0-9a-f]+ <[^>]*> 27bd0020     addiu   sp,sp,32
+[0-9a-f]+ <[^>]*> 03e0000[89]  jr      ra
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 03e0000[89]  jr      ra
+[0-9a-f]+ <[^>]*> 00000000     nop
+       \.\.\.
 
 #objdump: -dr --prefix-addresses --show-raw-insn
 #name: MIPS JALR relocation against local symbol
 #as: -32
-#notarget: *-*-irix*
 #source: jal-svr4pic-local.s
 
 .*: +file format .*mips.*
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS jal-svr4pic noreorder
+#as: -32 -KPIC
+#source: jal-svr4pic-noreorder.s
+
+# Test the jal macro with -KPIC and `.set noreorder' (MIPS1).
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 3c1c0000     lui     gp,0x0
+[      ]*[0-9a-f]+: R_MIPS_HI16        _gp_disp
+[0-9a-f]+ <[^>]*> 279c0000     addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        _gp_disp
+[0-9a-f]+ <[^>]*> 0399e021     addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> afbc0000     sw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 03202009     jalr    a0,t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_GOT16       .text
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 27390000     addiu   t9,t9,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        .text
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      weak_text_label
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      external_text_label
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 1000ffe5     b       0+0000 <text_label>
+[0-9a-f]+ <[^>]*> 00000000     nop
+       \.\.\.
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS jal-svr4pic
+#as: -32 -KPIC
+#source: jal-svr4pic.s
+
+# Test the jal macro with -KPIC.
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 3c1c0000     lui     gp,0x0
+[      ]*[0-9a-f]+: R_MIPS_HI16        _gp_disp
+[0-9a-f]+ <[^>]*> 279c0000     addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        _gp_disp
+[0-9a-f]+ <[^>]*> 0399e021     addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> afbc0000     sw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 03202009     jalr    a0,t9
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_GOT16       .text
+[0-9a-f]+ <[^>]*> 27390000     addiu   t9,t9,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        .text
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      weak_text_label
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      external_text_label
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 1000ffff     b       0+0054 <text_label\+0x54>
+[      ]*54: .*R_MIPS_PC16     text_label
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+       \.\.\.
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS jal-svr4pic noreorder
+#as: -32 -KPIC
+#source: jal-svr4pic-noreorder.s
+
+# Test the jal macro with -KPIC and `.set noreorder'.
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 3c1c0000     lui     gp,0x0
+[      ]*[0-9a-f]+: R_MIPS_HI16        _gp_disp
+[0-9a-f]+ <[^>]*> 279c0000     addiu   gp,gp,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        _gp_disp
+[0-9a-f]+ <[^>]*> 0399e021     addu    gp,gp,t9
+[0-9a-f]+ <[^>]*> afbc0000     sw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 03202009     jalr    a0,t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_GOT16       .text
+[0-9a-f]+ <[^>]*> 27390000     addiu   t9,t9,0
+[      ]*[0-9a-f]+: R_MIPS_LO16        .text
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      weak_text_label
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 8f990000     lw      t9,0\(gp\)
+[      ]*[0-9a-f]+: R_MIPS_CALL16      external_text_label
+[0-9a-f]+ <[^>]*> 0320f809     jalr    t9
+[0-9a-f]+ <[^>]*> 00000000     nop
+[0-9a-f]+ <[^>]*> 8fbc0000     lw      gp,0\(sp\)
+[0-9a-f]+ <[^>]*> 1000ffff     b       0+005c <text_label\+0x5c>
+[      ]*5c: .*R_MIPS_PC16     text_label
+[0-9a-f]+ <[^>]*> 00000000     nop
+       \.\.\.
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS jal-svr4pic
+#as: -32 -KPIC
+#source: jal-svr4pic.s
+#dump: mips1@jal-svr4pic-irix.d
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS JALR relocation against local symbol
+#as: -32
+#source: jal-svr4pic-local.s
+#dump: mips1@jal-svr4pic-local-irix.d
 
 #objdump: -dr --prefix-addresses --show-raw-insn
 #name: MIPS JALR relocation against local symbol
 #as: -32
-#notarget: *-*-irix*
 #source: jal-svr4pic-local.s
 #dump: mips1@jal-svr4pic-local.d
 
--- /dev/null
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS jal-svr4pic noreorder
+#as: -32 -KPIC
+#source: jal-svr4pic-noreorder.s
+#dump: mips1@jal-svr4pic-noreorder-irix.d