* ld-mips-elf/reloc-1[ab].s: New source files.
* ld-mips-elf/reloc-1-{n32,n64,rel}.d: New tests. * ld-mips-elf/reloc-2[ab].s: New source files. * ld-mips-elf/reloc-2.{d,ld}: New test. * ld-mips-elf/reloc-3[ab].s: New source files. * ld-mips-elf/reloc-3-{r,srec}.d: New tests. * ld-mips-elf/mips-elf.exp: Run them.
This commit is contained in:
parent
30ac9238df
commit
18ab192184
|
@ -1,3 +1,13 @@
|
||||||
|
2003-12-18 Richard Sandiford <rsandifo@redhat.com>
|
||||||
|
|
||||||
|
* ld-mips-elf/reloc-1[ab].s: New source files.
|
||||||
|
* ld-mips-elf/reloc-1-{n32,n64,rel}.d: New tests.
|
||||||
|
* ld-mips-elf/reloc-2[ab].s: New source files.
|
||||||
|
* ld-mips-elf/reloc-2.{d,ld}: New test.
|
||||||
|
* ld-mips-elf/reloc-3[ab].s: New source files.
|
||||||
|
* ld-mips-elf/reloc-3-{r,srec}.d: New tests.
|
||||||
|
* ld-mips-elf/mips-elf.exp: Run them.
|
||||||
|
|
||||||
2003-12-07 Richard Sandiford <rsandifo@redhat.com>
|
2003-12-07 Richard Sandiford <rsandifo@redhat.com>
|
||||||
|
|
||||||
* ld-mips-elf/elf-rel-xgot-n32.d: Fix offset for "lw $5,dl1+34($5)".
|
* ld-mips-elf/elf-rel-xgot-n32.d: Fix offset for "lw $5,dl1+34($5)".
|
||||||
|
|
|
@ -79,3 +79,21 @@ if { $embedded_elf } {
|
||||||
|
|
||||||
run_dump_test "region1"
|
run_dump_test "region1"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if $embedded_elf {
|
||||||
|
# This could work on other targets too, but would need the appropriate
|
||||||
|
# ld -m switch.
|
||||||
|
run_dump_test "reloc-1-rel"
|
||||||
|
}
|
||||||
|
if $has_newabi {
|
||||||
|
run_dump_test "reloc-1-n32"
|
||||||
|
if $linux_gnu {
|
||||||
|
# Uses a linux-specific ld -m switch
|
||||||
|
run_dump_test "reloc-1-n64"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
run_dump_test "reloc-2"
|
||||||
|
if $embedded_elf {
|
||||||
|
run_dump_test "reloc-3-r"
|
||||||
|
run_dump_test "reloc-3-srec"
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,199 @@
|
||||||
|
#source: reloc-1a.s -mabi=n32
|
||||||
|
#source: reloc-1b.s -mabi=n32
|
||||||
|
#ld: -r
|
||||||
|
#readelf: --relocs
|
||||||
|
|
||||||
|
Relocation section '\.rela\.text' .*
|
||||||
|
.*
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ ffff7ff0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff7ff0
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ ffff8000
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8000
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 0
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ ffff8010
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8010
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ ffff8020
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8020
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 20
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 20
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 8030
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8030
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* _start \+ ffff7ff0
|
||||||
|
.* R_MIPS_LO16 .* _start \+ ffff7ff0
|
||||||
|
.* R_MIPS_HI16 .* _start \+ ffff8000
|
||||||
|
.* R_MIPS_LO16 .* _start \+ ffff8000
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 0
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 0
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 7ff0
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 7ff0
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 8010
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 8010
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ ffff7ff0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff7ff0
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ ffff8000
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8000
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 0
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ ffff8010
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8010
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ ffff8020
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8020
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 20
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 20
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 8030
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8030
|
||||||
|
#
|
||||||
|
# Relocations against sdg
|
||||||
|
#
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ fffffffc
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ 0
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ 4
|
||||||
|
#
|
||||||
|
# Relocations against sdla. .sdata should be the first piece of gp-relative
|
||||||
|
# data, which the linker script should put _gp - 0x7ff0.
|
||||||
|
#
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff801c
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff8020
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff8024
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* \.text \+ fffffffc
|
||||||
|
.* R_MIPS_26 .* \.text \+ 0
|
||||||
|
.* R_MIPS_26 .* \.text \+ 4
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* \.text \+ 1c
|
||||||
|
.* R_MIPS_26 .* \.text \+ 20
|
||||||
|
.* R_MIPS_26 .* \.text \+ 24
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* _start \+ fffffffc
|
||||||
|
.* R_MIPS_26 .* _start \+ 0
|
||||||
|
.* R_MIPS_26 .* _start \+ 4
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 7fe0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7fe0
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ fff0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ fff0
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 17fe0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 17fe0
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18000
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 8000
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8000
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 10010
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 10010
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 18020
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18020
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* _start \+ ffff7ff0
|
||||||
|
.* R_MIPS_LO16 .* _start \+ ffff7ff0
|
||||||
|
.* R_MIPS_HI16 .* _start \+ ffff8000
|
||||||
|
.* R_MIPS_LO16 .* _start \+ ffff8000
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 0
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 0
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 7ff0
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 7ff0
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 8010
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 8010
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 7fe0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7fe0
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ fff0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ fff0
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 17fe0
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 17fe0
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18000
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 8000
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8000
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 10010
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 10010
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 18020
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18020
|
||||||
|
#
|
||||||
|
# Relocations against sdg
|
||||||
|
#
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ fffffffc
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ 0
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ 4
|
||||||
|
#
|
||||||
|
# Relocations against sdlb
|
||||||
|
#
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff803c
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff8040
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff8044
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* \.text \+ ffec
|
||||||
|
.* R_MIPS_26 .* \.text \+ fff0
|
||||||
|
.* R_MIPS_26 .* \.text \+ fff4
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* \.text \+ 1000c
|
||||||
|
.* R_MIPS_26 .* \.text \+ 10010
|
||||||
|
.* R_MIPS_26 .* \.text \+ 10014
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* _start \+ fffffffc
|
||||||
|
.* R_MIPS_26 .* _start \+ 0
|
||||||
|
.* R_MIPS_26 .* _start \+ 4
|
||||||
|
#pass
|
|
@ -0,0 +1,459 @@
|
||||||
|
#source: reloc-1a.s -mabi=64 -EB
|
||||||
|
#source: reloc-1b.s -mabi=64 -EB
|
||||||
|
#ld: -melf64btsmip -r
|
||||||
|
#readelf: --relocs
|
||||||
|
|
||||||
|
Relocation section '\.rela\.text' .*
|
||||||
|
.*
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ ffff7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ ffff8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ ffff8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ ffff8020
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8020
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 20
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 20
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 8030
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8030
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* _start \+ ffff7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* _start \+ ffff7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* _start \+ ffff8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* _start \+ ffff8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ ffff7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ ffff8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ ffff8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ ffff8020
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ ffff8020
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 20
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 20
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 8030
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8030
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against sdg
|
||||||
|
#
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ fffffffc
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ 4
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against sdla. .sdata should be the first piece of gp-relative
|
||||||
|
# data, which the linker script should put _gp - 0x7ff0.
|
||||||
|
#
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff801c
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff8020
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff8024
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* \.text \+ fffffffc
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* \.text \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* \.text \+ 4
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* \.text \+ 1c
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* \.text \+ 20
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* \.text \+ 24
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* _start \+ fffffffc
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* _start \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* _start \+ 4
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 7fe0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7fe0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ fff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ fff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 17fe0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 17fe0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 10010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 10010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* \.text \+ 18020
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18020
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.* R_MIPS_HI16 .* _start \+ ffff7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* _start \+ ffff7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* _start \+ ffff8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* _start \+ ffff8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_HI16 .* _start \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* _start \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 7fe0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7fe0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 7ff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ fff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ fff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 17fe0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 17fe0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 8010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 10010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 10010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18000
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GOT16 .* \.text \+ 18020
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_LO16 .* \.text \+ 18020
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against sdg
|
||||||
|
#
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ fffffffc
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GPREL16 .* sdg \+ 4
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against sdlb
|
||||||
|
#
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff803c
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff8040
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_GPREL16 .* \.sdata \+ ffff8044
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* \.text \+ ffec
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* \.text \+ fff0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* \.text \+ fff4
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* \.text \+ 1000c
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* \.text \+ 10010
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* \.text \+ 10014
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.* R_MIPS_26 .* _start \+ fffffffc
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* _start \+ 0
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_26 .* _start \+ 4
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
.* R_MIPS_NONE *
|
||||||
|
#pass
|
|
@ -0,0 +1,356 @@
|
||||||
|
#source: reloc-1a.s
|
||||||
|
#source: reloc-1b.s
|
||||||
|
#ld: -r
|
||||||
|
#objdump: -dr
|
||||||
|
|
||||||
|
.*: file format .*
|
||||||
|
|
||||||
|
Disassembly of section \.text:
|
||||||
|
|
||||||
|
.* <.*>:
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.*: 3c04ffff lui a0,0xffff
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
|
||||||
|
.* <t32a>:
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848020 addiu a0,a0,-32736
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24840020 addiu a0,a0,32
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848030 addiu a0,a0,-32720
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.*: 3c04ffff lui a0,0xffff
|
||||||
|
.*: R_MIPS_HI16 _start
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: R_MIPS_LO16 _start
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 _start
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: R_MIPS_LO16 _start
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 _start
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: R_MIPS_LO16 _start
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 _start
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: R_MIPS_LO16 _start
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_HI16 _start
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: R_MIPS_LO16 _start
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.*: 3c04ffff lui a0,0xffff
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848020 addiu a0,a0,-32736
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24840020 addiu a0,a0,32
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848030 addiu a0,a0,-32720
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
#
|
||||||
|
# Relocations against sdg
|
||||||
|
#
|
||||||
|
.*: 2484fffc addiu a0,a0,-4
|
||||||
|
.*: R_MIPS_GPREL16 sdg
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: R_MIPS_GPREL16 sdg
|
||||||
|
.*: 24840004 addiu a0,a0,4
|
||||||
|
.*: R_MIPS_GPREL16 sdg
|
||||||
|
#
|
||||||
|
# Relocations against sdla
|
||||||
|
#
|
||||||
|
.*: 2484801c addiu a0,a0,-32740
|
||||||
|
.*: R_MIPS_GPREL16 \.sdata\+0x7ff0
|
||||||
|
.*: 24848020 addiu a0,a0,-32736
|
||||||
|
.*: R_MIPS_GPREL16 \.sdata\+0x7ff0
|
||||||
|
.*: 24848024 addiu a0,a0,-32732
|
||||||
|
.*: R_MIPS_GPREL16 \.sdata\+0x7ff0
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.*: 0fffffff jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c000000 jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c000001 jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.*: 0c000007 jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c000008 jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c000009 jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.*: 0fffffff jal .*
|
||||||
|
.*: R_MIPS_26 _start
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c000000 jal .*
|
||||||
|
.*: R_MIPS_26 _start
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c000001 jal .*
|
||||||
|
.*: R_MIPS_26 _start
|
||||||
|
.*: 00000000 nop
|
||||||
|
\.\.\.
|
||||||
|
|
||||||
|
.* <tstartb>:
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24847fe0 addiu a0,a0,32736
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 2484fff0 addiu a0,a0,-16
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24847fe0 addiu a0,a0,32736
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
|
||||||
|
.* <t32b>:
|
||||||
|
.*: 3c040002 lui a0,0x2
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24840010 addiu a0,a0,16
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040002 lui a0,0x2
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040002 lui a0,0x2
|
||||||
|
.*: R_MIPS_HI16 \.text
|
||||||
|
.*: 24848020 addiu a0,a0,-32736
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.*: 3c04ffff lui a0,0xffff
|
||||||
|
.*: R_MIPS_HI16 _start
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: R_MIPS_LO16 _start
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 _start
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: R_MIPS_LO16 _start
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 _start
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: R_MIPS_LO16 _start
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_HI16 _start
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: R_MIPS_LO16 _start
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_HI16 _start
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: R_MIPS_LO16 _start
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24847fe0 addiu a0,a0,32736
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 2484fff0 addiu a0,a0,-16
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24847fe0 addiu a0,a0,32736
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040002 lui a0,0x2
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24840010 addiu a0,a0,16
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040002 lui a0,0x2
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
.*: 3c040002 lui a0,0x2
|
||||||
|
.*: R_MIPS_GOT16 \.text
|
||||||
|
.*: 24848020 addiu a0,a0,-32736
|
||||||
|
.*: R_MIPS_LO16 \.text
|
||||||
|
#
|
||||||
|
# Relocations against sdg
|
||||||
|
#
|
||||||
|
.*: 2484fffc addiu a0,a0,-4
|
||||||
|
.*: R_MIPS_GPREL16 sdg
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: R_MIPS_GPREL16 sdg
|
||||||
|
.*: 24840004 addiu a0,a0,4
|
||||||
|
.*: R_MIPS_GPREL16 sdg
|
||||||
|
#
|
||||||
|
# Relocations against sdlb
|
||||||
|
#
|
||||||
|
.*: 2484803c addiu a0,a0,-32708
|
||||||
|
.*: R_MIPS_GPREL16 \.sdata\+0x7ff0
|
||||||
|
.*: 24848040 addiu a0,a0,-32704
|
||||||
|
.*: R_MIPS_GPREL16 \.sdata\+0x7ff0
|
||||||
|
.*: 24848044 addiu a0,a0,-32700
|
||||||
|
.*: R_MIPS_GPREL16 \.sdata\+0x7ff0
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.*: 0c003ffb jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c003ffc jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c003ffd jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.*: 0c004003 jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c004004 jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c004005 jal .*
|
||||||
|
.*: R_MIPS_26 \.text
|
||||||
|
.*: 00000000 nop
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.*: 0fffffff jal .*
|
||||||
|
.*: R_MIPS_26 _start
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c000000 jal .*
|
||||||
|
.*: R_MIPS_26 _start
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c000001 jal .*
|
||||||
|
.*: R_MIPS_26 _start
|
||||||
|
.*: 00000000 nop
|
||||||
|
\.\.\.
|
|
@ -0,0 +1,100 @@
|
||||||
|
.globl _start
|
||||||
|
.globl sdg
|
||||||
|
.set noreorder
|
||||||
|
.ent tstarta
|
||||||
|
tstarta:
|
||||||
|
_start:
|
||||||
|
lui $4,%hi(tstarta - 0x8010)
|
||||||
|
addiu $4,$4,%lo(tstarta - 0x8010)
|
||||||
|
lui $4,%hi(tstarta - 0x8000)
|
||||||
|
addiu $4,$4,%lo(tstarta - 0x8000)
|
||||||
|
lui $4,%hi(tstarta)
|
||||||
|
addiu $4,$4,%lo(tstarta)
|
||||||
|
lui $4,%hi(tstarta + 0x7ff0)
|
||||||
|
addiu $4,$4,%lo(tstarta + 0x7ff0)
|
||||||
|
t32a:
|
||||||
|
lui $4,%hi(tstarta + 0x8010)
|
||||||
|
addiu $4,$4,%lo(tstarta + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%hi(t32a - 0x8010)
|
||||||
|
addiu $4,$4,%lo(t32a - 0x8010)
|
||||||
|
lui $4,%hi(t32a - 0x8000)
|
||||||
|
addiu $4,$4,%lo(t32a - 0x8000)
|
||||||
|
lui $4,%hi(t32a)
|
||||||
|
addiu $4,$4,%lo(t32a)
|
||||||
|
lui $4,%hi(t32a + 0x7ff0)
|
||||||
|
addiu $4,$4,%lo(t32a + 0x7ff0)
|
||||||
|
lui $4,%hi(t32a + 0x8010)
|
||||||
|
addiu $4,$4,%lo(t32a + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%hi(_start - 0x8010)
|
||||||
|
addiu $4,$4,%lo(_start - 0x8010)
|
||||||
|
lui $4,%hi(_start - 0x8000)
|
||||||
|
addiu $4,$4,%lo(_start - 0x8000)
|
||||||
|
lui $4,%hi(_start)
|
||||||
|
addiu $4,$4,%lo(_start)
|
||||||
|
lui $4,%hi(_start + 0x7ff0)
|
||||||
|
addiu $4,$4,%lo(_start + 0x7ff0)
|
||||||
|
lui $4,%hi(_start + 0x8010)
|
||||||
|
addiu $4,$4,%lo(_start + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%got(tstarta - 0x8010)
|
||||||
|
addiu $4,$4,%lo(tstarta - 0x8010)
|
||||||
|
lui $4,%got(tstarta - 0x8000)
|
||||||
|
addiu $4,$4,%lo(tstarta - 0x8000)
|
||||||
|
lui $4,%got(tstarta)
|
||||||
|
addiu $4,$4,%lo(tstarta)
|
||||||
|
lui $4,%got(tstarta + 0x7ff0)
|
||||||
|
addiu $4,$4,%lo(tstarta + 0x7ff0)
|
||||||
|
lui $4,%got(tstarta + 0x8010)
|
||||||
|
addiu $4,$4,%lo(tstarta + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%got(t32a - 0x8010)
|
||||||
|
addiu $4,$4,%lo(t32a - 0x8010)
|
||||||
|
lui $4,%got(t32a - 0x8000)
|
||||||
|
addiu $4,$4,%lo(t32a - 0x8000)
|
||||||
|
lui $4,%got(t32a)
|
||||||
|
addiu $4,$4,%lo(t32a)
|
||||||
|
lui $4,%got(t32a + 0x7ff0)
|
||||||
|
addiu $4,$4,%lo(t32a + 0x7ff0)
|
||||||
|
lui $4,%got(t32a + 0x8010)
|
||||||
|
addiu $4,$4,%lo(t32a + 0x8010)
|
||||||
|
|
||||||
|
addiu $4,$4,%gp_rel(sdg - 4)
|
||||||
|
addiu $4,$4,%gp_rel(sdg)
|
||||||
|
addiu $4,$4,%gp_rel(sdg + 4)
|
||||||
|
|
||||||
|
addiu $4,$4,%gp_rel(sdla - 4)
|
||||||
|
addiu $4,$4,%gp_rel(sdla)
|
||||||
|
addiu $4,$4,%gp_rel(sdla + 4)
|
||||||
|
|
||||||
|
jal tstarta - 4
|
||||||
|
nop
|
||||||
|
jal tstarta
|
||||||
|
nop
|
||||||
|
jal tstarta + 4
|
||||||
|
nop
|
||||||
|
|
||||||
|
jal t32a - 4
|
||||||
|
nop
|
||||||
|
jal t32a
|
||||||
|
nop
|
||||||
|
jal t32a + 4
|
||||||
|
nop
|
||||||
|
|
||||||
|
jal _start - 4
|
||||||
|
nop
|
||||||
|
jal _start
|
||||||
|
nop
|
||||||
|
jal _start + 4
|
||||||
|
nop
|
||||||
|
|
||||||
|
.org 0xfff0
|
||||||
|
|
||||||
|
.end tstarta
|
||||||
|
|
||||||
|
.section .sdata
|
||||||
|
.space 16
|
||||||
|
sdg:
|
||||||
|
sdla:
|
||||||
|
.space 16
|
|
@ -0,0 +1,95 @@
|
||||||
|
.set noreorder
|
||||||
|
.ent tstartb
|
||||||
|
tstartb:
|
||||||
|
lui $4,%hi(tstartb - 0x8010) # .text + 0x7fe0
|
||||||
|
addiu $4,$4,%lo(tstartb - 0x8010)
|
||||||
|
lui $4,%hi(tstartb - 0x8000) # .text + 0x7ff0
|
||||||
|
addiu $4,$4,%lo(tstartb - 0x8000)
|
||||||
|
lui $4,%hi(tstartb) # .text + 0xfff0
|
||||||
|
addiu $4,$4,%lo(tstartb)
|
||||||
|
lui $4,%hi(tstartb + 0x7ff0) # .text + 0x17fe0
|
||||||
|
addiu $4,$4,%lo(tstartb + 0x7ff0)
|
||||||
|
t32b:
|
||||||
|
lui $4,%hi(tstartb + 0x8010) # .text + 0x18000
|
||||||
|
addiu $4,$4,%lo(tstartb + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%hi(t32b - 0x8010) # .text + 0x8000
|
||||||
|
addiu $4,$4,%lo(t32b - 0x8010)
|
||||||
|
lui $4,%hi(t32b - 0x8000) # .text + 0x8010
|
||||||
|
addiu $4,$4,%lo(t32b - 0x8000)
|
||||||
|
lui $4,%hi(t32b) # .text + 0x10010
|
||||||
|
addiu $4,$4,%lo(t32b)
|
||||||
|
lui $4,%hi(t32b + 0x7ff0) # .text + 0x18000
|
||||||
|
addiu $4,$4,%lo(t32b + 0x7ff0)
|
||||||
|
lui $4,%hi(t32b + 0x8010) # .text + 0x18020
|
||||||
|
addiu $4,$4,%lo(t32b + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%hi(_start - 0x8010)
|
||||||
|
addiu $4,$4,%lo(_start - 0x8010)
|
||||||
|
lui $4,%hi(_start - 0x8000)
|
||||||
|
addiu $4,$4,%lo(_start - 0x8000)
|
||||||
|
lui $4,%hi(_start)
|
||||||
|
addiu $4,$4,%lo(_start)
|
||||||
|
lui $4,%hi(_start + 0x7ff0)
|
||||||
|
addiu $4,$4,%lo(_start + 0x7ff0)
|
||||||
|
lui $4,%hi(_start + 0x8010)
|
||||||
|
addiu $4,$4,%lo(_start + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%got(tstartb - 0x8010) # .text + 0x7fe0
|
||||||
|
addiu $4,$4,%lo(tstartb - 0x8010)
|
||||||
|
lui $4,%got(tstartb - 0x8000) # .text + 0x7ff0
|
||||||
|
addiu $4,$4,%lo(tstartb - 0x8000)
|
||||||
|
lui $4,%got(tstartb) # .text + 0xfff0
|
||||||
|
addiu $4,$4,%lo(tstartb)
|
||||||
|
lui $4,%got(tstartb + 0x7ff0) # .text + 0x17fe0
|
||||||
|
addiu $4,$4,%lo(tstartb + 0x7ff0)
|
||||||
|
lui $4,%got(tstartb + 0x8010) # .text + 0x18000
|
||||||
|
addiu $4,$4,%lo(tstartb + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%got(t32b - 0x8010) # .text + 0x8000
|
||||||
|
addiu $4,$4,%lo(t32b - 0x8010)
|
||||||
|
lui $4,%got(t32b - 0x8000) # .text + 0x8010
|
||||||
|
addiu $4,$4,%lo(t32b - 0x8000)
|
||||||
|
lui $4,%got(t32b) # .text + 0x10010
|
||||||
|
addiu $4,$4,%lo(t32b)
|
||||||
|
lui $4,%got(t32b + 0x7ff0) # .text + 0x18000
|
||||||
|
addiu $4,$4,%lo(t32b + 0x7ff0)
|
||||||
|
lui $4,%got(t32b + 0x8010) # .text + 0x18020
|
||||||
|
addiu $4,$4,%lo(t32b + 0x8010)
|
||||||
|
|
||||||
|
addiu $4,$4,%gp_rel(sdg - 4)
|
||||||
|
addiu $4,$4,%gp_rel(sdg)
|
||||||
|
addiu $4,$4,%gp_rel(sdg + 4)
|
||||||
|
|
||||||
|
addiu $4,$4,%gp_rel(sdlb - 4)
|
||||||
|
addiu $4,$4,%gp_rel(sdlb)
|
||||||
|
addiu $4,$4,%gp_rel(sdlb + 4)
|
||||||
|
|
||||||
|
jal tstartb - 4 # .text + 0xffec
|
||||||
|
nop
|
||||||
|
jal tstartb # .text + 0xfff0
|
||||||
|
nop
|
||||||
|
jal tstartb + 4 # .text + 0xfff4
|
||||||
|
nop
|
||||||
|
|
||||||
|
jal t32b - 4 # .text + 0x1000c
|
||||||
|
nop
|
||||||
|
jal t32b # .text + 0x10010
|
||||||
|
nop
|
||||||
|
jal t32b + 4 # .text + 0x10014
|
||||||
|
nop
|
||||||
|
|
||||||
|
jal _start - 4
|
||||||
|
nop
|
||||||
|
jal _start
|
||||||
|
nop
|
||||||
|
jal _start + 4
|
||||||
|
nop
|
||||||
|
|
||||||
|
.space 16
|
||||||
|
.end tstartb
|
||||||
|
|
||||||
|
.section .sdata
|
||||||
|
.space 16
|
||||||
|
sdlb:
|
||||||
|
.space 16
|
|
@ -0,0 +1,169 @@
|
||||||
|
#source: reloc-2a.s -EB -mabi=32
|
||||||
|
#source: reloc-2b.s -EB -mabi=32
|
||||||
|
#ld: --oformat=srec -Treloc-2.ld
|
||||||
|
#objdump: -D -mmips:4000 --endian=big
|
||||||
|
|
||||||
|
.*: file format .*
|
||||||
|
|
||||||
|
Disassembly of section .*:
|
||||||
|
|
||||||
|
.* <.*>:
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.*: 3c040020 lui a0,0x20
|
||||||
|
.*: 2484fff0 addiu a0,a0,-16
|
||||||
|
.*: 3c040020 lui a0,0x20
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 2484fff0 addiu a0,a0,-16
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24840010 addiu a0,a0,16
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.*: 3c040020 lui a0,0x20
|
||||||
|
.*: 24840010 addiu a0,a0,16
|
||||||
|
.*: 3c040020 lui a0,0x20
|
||||||
|
.*: 24840020 addiu a0,a0,32
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24848020 addiu a0,a0,-32736
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24840010 addiu a0,a0,16
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24840030 addiu a0,a0,48
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.*: 3c040020 lui a0,0x20
|
||||||
|
.*: 2484fff0 addiu a0,a0,-16
|
||||||
|
.*: 3c040020 lui a0,0x20
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 2484fff0 addiu a0,a0,-16
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24840010 addiu a0,a0,16
|
||||||
|
#
|
||||||
|
# Relocations against sdg
|
||||||
|
#
|
||||||
|
.*: 2484edd8 addiu a0,a0,-4648
|
||||||
|
.*: 2484eddc addiu a0,a0,-4644
|
||||||
|
.*: 2484ede0 addiu a0,a0,-4640
|
||||||
|
#
|
||||||
|
# Relocations against sdla
|
||||||
|
#
|
||||||
|
.*: 2484edd8 addiu a0,a0,-4648
|
||||||
|
.*: 2484eddc addiu a0,a0,-4644
|
||||||
|
.*: 2484ede0 addiu a0,a0,-4640
|
||||||
|
#
|
||||||
|
# Relocations against tstarta
|
||||||
|
#
|
||||||
|
.*: 0c081fff jal 0x207ffc
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c082000 jal 0x208000
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c082001 jal 0x208004
|
||||||
|
.*: 00000000 nop
|
||||||
|
#
|
||||||
|
# Relocations against t32a
|
||||||
|
#
|
||||||
|
.*: 0c082007 jal 0x20801c
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c082008 jal 0x208020
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c082009 jal 0x208024
|
||||||
|
.*: 00000000 nop
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.*: 0c081fff jal 0x207ffc
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c082000 jal 0x208000
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c082001 jal 0x208004
|
||||||
|
.*: 00000000 nop
|
||||||
|
\.\.\.
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 2484ffe0 addiu a0,a0,-32
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 2484fff0 addiu a0,a0,-16
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24847ff0 addiu a0,a0,32752
|
||||||
|
.*: 3c040022 lui a0,0x22
|
||||||
|
.*: 2484ffe0 addiu a0,a0,-32
|
||||||
|
.*: 3c040022 lui a0,0x22
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24840010 addiu a0,a0,16
|
||||||
|
.*: 3c040022 lui a0,0x22
|
||||||
|
.*: 24848010 addiu a0,a0,-32752
|
||||||
|
.*: 3c040022 lui a0,0x22
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: 3c040022 lui a0,0x22
|
||||||
|
.*: 24840020 addiu a0,a0,32
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.*: 3c040020 lui a0,0x20
|
||||||
|
.*: 2484fff0 addiu a0,a0,-16
|
||||||
|
.*: 3c040020 lui a0,0x20
|
||||||
|
.*: 24840000 addiu a0,a0,0
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24848000 addiu a0,a0,-32768
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 2484fff0 addiu a0,a0,-16
|
||||||
|
.*: 3c040021 lui a0,0x21
|
||||||
|
.*: 24840010 addiu a0,a0,16
|
||||||
|
#
|
||||||
|
# Relocations against sdg
|
||||||
|
#
|
||||||
|
.*: 2484edd8 addiu a0,a0,-4648
|
||||||
|
.*: 2484eddc addiu a0,a0,-4644
|
||||||
|
.*: 2484ede0 addiu a0,a0,-4640
|
||||||
|
#
|
||||||
|
# Relocations against sdl2
|
||||||
|
#
|
||||||
|
.*: 2484edf8 addiu a0,a0,-4616
|
||||||
|
.*: 2484edfc addiu a0,a0,-4612
|
||||||
|
.*: 2484ee00 addiu a0,a0,-4608
|
||||||
|
#
|
||||||
|
# Relocations against tstartb
|
||||||
|
#
|
||||||
|
.*: 0c085ffb jal 0x217fec
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c085ffc jal 0x217ff0
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c085ffd jal 0x217ff4
|
||||||
|
.*: 00000000 nop
|
||||||
|
#
|
||||||
|
# Relocations against t32b
|
||||||
|
#
|
||||||
|
.*: 0c086003 jal 0x21800c
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c086004 jal 0x218010
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c086005 jal 0x218014
|
||||||
|
.*: 00000000 nop
|
||||||
|
#
|
||||||
|
# Relocations against _start
|
||||||
|
#
|
||||||
|
.*: 0c081fff jal 0x207ffc
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c082000 jal 0x208000
|
||||||
|
.*: 00000000 nop
|
||||||
|
.*: 0c082001 jal 0x208004
|
||||||
|
.*: 00000000 nop
|
||||||
|
\.\.\.
|
||||||
|
#pass
|
|
@ -0,0 +1,9 @@
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
. = 0x208000;
|
||||||
|
.text : { *(.text) }
|
||||||
|
. = 0x400000;
|
||||||
|
_gp = 0x401234;
|
||||||
|
.sdata : { *(.sdata) }
|
||||||
|
/DISCARD/ : { *(*) }
|
||||||
|
}
|
|
@ -0,0 +1,78 @@
|
||||||
|
.globl _start
|
||||||
|
.globl sdg
|
||||||
|
.set noreorder
|
||||||
|
.ent tstarta
|
||||||
|
tstarta:
|
||||||
|
_start:
|
||||||
|
lui $4,%hi(tstarta - 0x8010)
|
||||||
|
addiu $4,$4,%lo(tstarta - 0x8010)
|
||||||
|
lui $4,%hi(tstarta - 0x8000)
|
||||||
|
addiu $4,$4,%lo(tstarta - 0x8000)
|
||||||
|
lui $4,%hi(tstarta)
|
||||||
|
addiu $4,$4,%lo(tstarta)
|
||||||
|
lui $4,%hi(tstarta + 0x7ff0)
|
||||||
|
addiu $4,$4,%lo(tstarta + 0x7ff0)
|
||||||
|
t32a:
|
||||||
|
lui $4,%hi(tstarta + 0x8010)
|
||||||
|
addiu $4,$4,%lo(tstarta + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%hi(t32a - 0x8010)
|
||||||
|
addiu $4,$4,%lo(t32a - 0x8010)
|
||||||
|
lui $4,%hi(t32a - 0x8000)
|
||||||
|
addiu $4,$4,%lo(t32a - 0x8000)
|
||||||
|
lui $4,%hi(t32a)
|
||||||
|
addiu $4,$4,%lo(t32a)
|
||||||
|
lui $4,%hi(t32a + 0x7ff0)
|
||||||
|
addiu $4,$4,%lo(t32a + 0x7ff0)
|
||||||
|
lui $4,%hi(t32a + 0x8010)
|
||||||
|
addiu $4,$4,%lo(t32a + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%hi(_start - 0x8010)
|
||||||
|
addiu $4,$4,%lo(_start - 0x8010)
|
||||||
|
lui $4,%hi(_start - 0x8000)
|
||||||
|
addiu $4,$4,%lo(_start - 0x8000)
|
||||||
|
lui $4,%hi(_start)
|
||||||
|
addiu $4,$4,%lo(_start)
|
||||||
|
lui $4,%hi(_start + 0x7ff0)
|
||||||
|
addiu $4,$4,%lo(_start + 0x7ff0)
|
||||||
|
lui $4,%hi(_start + 0x8010)
|
||||||
|
addiu $4,$4,%lo(_start + 0x8010)
|
||||||
|
|
||||||
|
addiu $4,$4,%gp_rel(sdg - 4)
|
||||||
|
addiu $4,$4,%gp_rel(sdg)
|
||||||
|
addiu $4,$4,%gp_rel(sdg + 4)
|
||||||
|
|
||||||
|
addiu $4,$4,%gp_rel(sdla - 4)
|
||||||
|
addiu $4,$4,%gp_rel(sdla)
|
||||||
|
addiu $4,$4,%gp_rel(sdla + 4)
|
||||||
|
|
||||||
|
jal tstarta - 4
|
||||||
|
nop
|
||||||
|
jal tstarta
|
||||||
|
nop
|
||||||
|
jal tstarta + 4
|
||||||
|
nop
|
||||||
|
|
||||||
|
jal t32a - 4
|
||||||
|
nop
|
||||||
|
jal t32a
|
||||||
|
nop
|
||||||
|
jal t32a + 4
|
||||||
|
nop
|
||||||
|
|
||||||
|
jal _start - 4
|
||||||
|
nop
|
||||||
|
jal _start
|
||||||
|
nop
|
||||||
|
jal _start + 4
|
||||||
|
nop
|
||||||
|
|
||||||
|
.org 0xfff0
|
||||||
|
|
||||||
|
.end tstarta
|
||||||
|
|
||||||
|
.section .sdata
|
||||||
|
.space 16
|
||||||
|
sdg:
|
||||||
|
sdla:
|
||||||
|
.space 16
|
|
@ -0,0 +1,73 @@
|
||||||
|
.set noreorder
|
||||||
|
.ent tstartb
|
||||||
|
tstartb:
|
||||||
|
lui $4,%hi(tstartb - 0x8010) # .text + 0x7fe0
|
||||||
|
addiu $4,$4,%lo(tstartb - 0x8010)
|
||||||
|
lui $4,%hi(tstartb - 0x8000) # .text + 0x7ff0
|
||||||
|
addiu $4,$4,%lo(tstartb - 0x8000)
|
||||||
|
lui $4,%hi(tstartb) # .text + 0xfff0
|
||||||
|
addiu $4,$4,%lo(tstartb)
|
||||||
|
lui $4,%hi(tstartb + 0x7ff0) # .text + 0x17fe0
|
||||||
|
addiu $4,$4,%lo(tstartb + 0x7ff0)
|
||||||
|
t32b:
|
||||||
|
lui $4,%hi(tstartb + 0x8010) # .text + 0x18000
|
||||||
|
addiu $4,$4,%lo(tstartb + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%hi(t32b - 0x8010) # .text + 0x8000
|
||||||
|
addiu $4,$4,%lo(t32b - 0x8010)
|
||||||
|
lui $4,%hi(t32b - 0x8000) # .text + 0x8010
|
||||||
|
addiu $4,$4,%lo(t32b - 0x8000)
|
||||||
|
lui $4,%hi(t32b) # .text + 0x10010
|
||||||
|
addiu $4,$4,%lo(t32b)
|
||||||
|
lui $4,%hi(t32b + 0x7ff0) # .text + 0x18000
|
||||||
|
addiu $4,$4,%lo(t32b + 0x7ff0)
|
||||||
|
lui $4,%hi(t32b + 0x8010) # .text + 0x18020
|
||||||
|
addiu $4,$4,%lo(t32b + 0x8010)
|
||||||
|
|
||||||
|
lui $4,%hi(_start - 0x8010)
|
||||||
|
addiu $4,$4,%lo(_start - 0x8010)
|
||||||
|
lui $4,%hi(_start - 0x8000)
|
||||||
|
addiu $4,$4,%lo(_start - 0x8000)
|
||||||
|
lui $4,%hi(_start)
|
||||||
|
addiu $4,$4,%lo(_start)
|
||||||
|
lui $4,%hi(_start + 0x7ff0)
|
||||||
|
addiu $4,$4,%lo(_start + 0x7ff0)
|
||||||
|
lui $4,%hi(_start + 0x8010)
|
||||||
|
addiu $4,$4,%lo(_start + 0x8010)
|
||||||
|
|
||||||
|
addiu $4,$4,%gp_rel(sdg - 4)
|
||||||
|
addiu $4,$4,%gp_rel(sdg)
|
||||||
|
addiu $4,$4,%gp_rel(sdg + 4)
|
||||||
|
|
||||||
|
addiu $4,$4,%gp_rel(sdlb - 4)
|
||||||
|
addiu $4,$4,%gp_rel(sdlb)
|
||||||
|
addiu $4,$4,%gp_rel(sdlb + 4)
|
||||||
|
|
||||||
|
jal tstartb - 4 # .text + 0xffec
|
||||||
|
nop
|
||||||
|
jal tstartb # .text + 0xfff0
|
||||||
|
nop
|
||||||
|
jal tstartb + 4 # .text + 0xfff4
|
||||||
|
nop
|
||||||
|
|
||||||
|
jal t32b - 4 # .text + 0x1000c
|
||||||
|
nop
|
||||||
|
jal t32b # .text + 0x10010
|
||||||
|
nop
|
||||||
|
jal t32b + 4 # .text + 0x10014
|
||||||
|
nop
|
||||||
|
|
||||||
|
jal _start - 4
|
||||||
|
nop
|
||||||
|
jal _start
|
||||||
|
nop
|
||||||
|
jal _start + 4
|
||||||
|
nop
|
||||||
|
|
||||||
|
.space 16
|
||||||
|
.end tstartb
|
||||||
|
|
||||||
|
.section .sdata
|
||||||
|
.space 16
|
||||||
|
sdlb:
|
||||||
|
.space 16
|
|
@ -0,0 +1,83 @@
|
||||||
|
#source: reloc-3a.s -mabi=32 -membedded-pic
|
||||||
|
#source: reloc-3b.s -mabi=32 -membedded-pic
|
||||||
|
#ld: -r
|
||||||
|
#objdump: -dr
|
||||||
|
|
||||||
|
.*: file format .*
|
||||||
|
|
||||||
|
Disassembly of section \.text:
|
||||||
|
|
||||||
|
.* <.*>:
|
||||||
|
#
|
||||||
|
# Relocations against lda
|
||||||
|
#
|
||||||
|
.*: 3c04ffff lui a0,0xffff
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 \.text2
|
||||||
|
.*: 24847ffc addiu a0,a0,32764
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 \.text2
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 \.text2
|
||||||
|
.*: 24848014 addiu a0,a0,-32748
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 \.text2
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 \.text2
|
||||||
|
.*: 2484001c addiu a0,a0,28
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 \.text2
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 \.text2
|
||||||
|
.*: 24848014 addiu a0,a0,-32748
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 \.text2
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 \.text2
|
||||||
|
.*: 2484803c addiu a0,a0,-32708
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 \.text2
|
||||||
|
\.\.\.
|
||||||
|
|
||||||
|
.* <.*>:
|
||||||
|
#
|
||||||
|
# Relocations against gd
|
||||||
|
#
|
||||||
|
.*: 3c04ffff lui a0,0xffff
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 gd
|
||||||
|
.*: 24847ff4 addiu a0,a0,32756
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 gd
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 gd
|
||||||
|
.*: 2484800c addiu a0,a0,-32756
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 gd
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 gd
|
||||||
|
.*: 24840014 addiu a0,a0,20
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 gd
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 gd
|
||||||
|
.*: 2484800c addiu a0,a0,-32756
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 gd
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 gd
|
||||||
|
.*: 24848034 addiu a0,a0,-32716
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 gd
|
||||||
|
#
|
||||||
|
# Relocations against ldb
|
||||||
|
#
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 \.text2
|
||||||
|
.*: 2484802c addiu a0,a0,-32724
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 \.text2
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 \.text2
|
||||||
|
.*: 24848044 addiu a0,a0,-32700
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 \.text2
|
||||||
|
.*: 3c040000 lui a0,0x0
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 \.text2
|
||||||
|
.*: 2484004c addiu a0,a0,76
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 \.text2
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 \.text2
|
||||||
|
.*: 24848044 addiu a0,a0,-32700
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 \.text2
|
||||||
|
.*: 3c040001 lui a0,0x1
|
||||||
|
.*: R_MIPS_GNU_REL_HI16 \.text2
|
||||||
|
.*: 2484806c addiu a0,a0,-32660
|
||||||
|
.*: R_MIPS_GNU_REL_LO16 \.text2
|
||||||
|
\.\.\.
|
|
@ -0,0 +1,54 @@
|
||||||
|
#source: reloc-3a.s -mabi=32 -membedded-pic -EB
|
||||||
|
#source: reloc-3b.s -mabi=32 -membedded-pic -EB
|
||||||
|
#ld: --oformat=srec -Treloc-3.ld
|
||||||
|
#objdump: -D -mmips:4000 --endian=big
|
||||||
|
|
||||||
|
.*: file format .*
|
||||||
|
|
||||||
|
Disassembly of section .*:
|
||||||
|
|
||||||
|
.* <.*>:
|
||||||
|
# .text2 - tstarta = 0x108000
|
||||||
|
# .text2 - tstartb = 0x098010
|
||||||
|
#
|
||||||
|
# Relocations against lda
|
||||||
|
#
|
||||||
|
.*: 3c040010 lui a0,0x10
|
||||||
|
.*: 2484fff8 addiu a0,a0,-8
|
||||||
|
.*: 3c040010 lui a0,0x10
|
||||||
|
.*: 24840008 addiu a0,a0,8
|
||||||
|
.*: 3c040011 lui a0,0x11
|
||||||
|
.*: 24848008 addiu a0,a0,-32760
|
||||||
|
.*: 3c040011 lui a0,0x11
|
||||||
|
.*: 2484fff8 addiu a0,a0,-8
|
||||||
|
.*: 3c040011 lui a0,0x11
|
||||||
|
.*: 24840018 addiu a0,a0,24
|
||||||
|
\.\.\.
|
||||||
|
#
|
||||||
|
# Relocations against gd
|
||||||
|
#
|
||||||
|
.*: 3c04000f lui a0,0xf
|
||||||
|
.*: 24840004 addiu a0,a0,4
|
||||||
|
.*: 3c04000f lui a0,0xf
|
||||||
|
.*: 24840014 addiu a0,a0,20
|
||||||
|
.*: 3c040010 lui a0,0x10
|
||||||
|
.*: 24848014 addiu a0,a0,-32748
|
||||||
|
.*: 3c040010 lui a0,0x10
|
||||||
|
.*: 24840004 addiu a0,a0,4
|
||||||
|
.*: 3c040010 lui a0,0x10
|
||||||
|
.*: 24840024 addiu a0,a0,36
|
||||||
|
#
|
||||||
|
# Relocations against ldb
|
||||||
|
#
|
||||||
|
.*: 3c04000f lui a0,0xf
|
||||||
|
.*: 24840010 addiu a0,a0,16
|
||||||
|
.*: 3c04000f lui a0,0xf
|
||||||
|
.*: 24840020 addiu a0,a0,32
|
||||||
|
.*: 3c040010 lui a0,0x10
|
||||||
|
.*: 24848020 addiu a0,a0,-32736
|
||||||
|
.*: 3c040010 lui a0,0x10
|
||||||
|
.*: 24840010 addiu a0,a0,16
|
||||||
|
.*: 3c040010 lui a0,0x10
|
||||||
|
.*: 24840030 addiu a0,a0,48
|
||||||
|
\.\.\.
|
||||||
|
#pass
|
|
@ -0,0 +1,8 @@
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
. = 0x208000;
|
||||||
|
.text : { *(.text) }
|
||||||
|
. = 0x310000;
|
||||||
|
.text2 : { *(.text2) }
|
||||||
|
/DISCARD/ : { *(*) }
|
||||||
|
}
|
|
@ -0,0 +1,38 @@
|
||||||
|
.globl _start
|
||||||
|
.globl gd
|
||||||
|
.ent tstarta
|
||||||
|
tstarta:
|
||||||
|
_start:
|
||||||
|
la $4,lda-tstarta-0x8010
|
||||||
|
# (.text2+8-0x8010) - tstarta [+ (tstarta+0x4)]
|
||||||
|
# relocation: .text2 - 0x8004
|
||||||
|
# final value: .text2 - tstarta - 0x8008
|
||||||
|
|
||||||
|
la $4,lda-tstarta-0x8000
|
||||||
|
# (.text2+8-0x8000) - tstarta [+ (tstarta+0xc)]
|
||||||
|
# relocation: .text2 - 0x7fec
|
||||||
|
# final value: .text2 - tstarta - 0x7ff8
|
||||||
|
|
||||||
|
la $4,lda-tstarta
|
||||||
|
# (.text2+8) - tstarta [+ (tstarta+0x14)]
|
||||||
|
# relocation: .text2 + 0x1c
|
||||||
|
# final value: .text2 - tstarta + 0x8
|
||||||
|
|
||||||
|
la $4,lda-tstarta+0x7ff0
|
||||||
|
# (.text2+8+0x7ff0) - tstarta [+ (tstarta+0x1c)]
|
||||||
|
# relocation: .text2 + 0x8014
|
||||||
|
# final value: .text2 - tstarta + 0x7ff8
|
||||||
|
|
||||||
|
la $4,lda-tstarta+0x8010 # (.text2+8)-(tstarta+0x8010)+0x24
|
||||||
|
# (.text2+8+0x8010) - tstarta [+ (tstarta+0x24)]
|
||||||
|
# relocation: .text2 + 0x803c
|
||||||
|
# final value: .text2 - tstarta + 0x8018
|
||||||
|
|
||||||
|
.end tstarta
|
||||||
|
|
||||||
|
.org 0xfff0
|
||||||
|
.section .text2
|
||||||
|
.word 1
|
||||||
|
gd: .word 2
|
||||||
|
lda: .word 3
|
||||||
|
.word 4
|
|
@ -0,0 +1,58 @@
|
||||||
|
.globl _start
|
||||||
|
.globl gd
|
||||||
|
.ent tstartb
|
||||||
|
tstartb:
|
||||||
|
la $4,gd-tstartb-0x8010
|
||||||
|
# (gd-0x8010) - tstartb [+ (tstartb+0x4)]
|
||||||
|
# relocation: gd - 0x800c
|
||||||
|
# final value: gd - tstartb - 0x8010
|
||||||
|
|
||||||
|
la $4,gd-tstartb-0x8000
|
||||||
|
# (gd-0x8000) - tstartb [+ (tstartb+0xc)]
|
||||||
|
# relocation: gd - 0x7ff4
|
||||||
|
# final value: gd - tstartb - 0x8000
|
||||||
|
|
||||||
|
la $4,gd-tstartb
|
||||||
|
# (gd) - tstartb [+ (tstartb+0x14)]
|
||||||
|
# relocation: gd + 0x14
|
||||||
|
# final value: gd - tstartb
|
||||||
|
|
||||||
|
la $4,gd-tstartb+0x7ff0
|
||||||
|
# (gd+0x7ff0) - tstartb [+ (tstartb+0x1c)]
|
||||||
|
# relocation: gd + 0x800c
|
||||||
|
# final value: gd - tstartb + 0x7ff0
|
||||||
|
|
||||||
|
la $4,gd-tstartb+0x8010
|
||||||
|
# (gd+0x8010) - tstartb [+ (tstartb+0x24)]
|
||||||
|
# relocation: gd + 0x8034
|
||||||
|
# final value: gd - tstartb + 0x8010
|
||||||
|
|
||||||
|
la $4,ldb-tstartb-0x8010
|
||||||
|
# (.text2+0x10-0x8010) - tstartb [+ (tstartb+0x2c)]
|
||||||
|
# relocation: .text2 - 0x7fd4
|
||||||
|
# final value: .text2 - tstartb - 0x8000
|
||||||
|
|
||||||
|
la $4,ldb-tstartb-0x8000
|
||||||
|
# (.text2+0x10-0x8000) - tstartb [+ (tstartb+0x34)]
|
||||||
|
# relocation: .text2 - 0x7fbc
|
||||||
|
# final value: .text2 - tstartb - 0x7ff0
|
||||||
|
|
||||||
|
la $4,ldb-tstartb
|
||||||
|
# (.text2+0x10) - tstartb [+ (tstartb+0x3c)]
|
||||||
|
# relocation: .text2 + 0x4c
|
||||||
|
# final value: .text2 - tstartb + 0x10
|
||||||
|
|
||||||
|
la $4,ldb-tstartb+0x7ff0
|
||||||
|
# (.text2+0x10+0x7ff0) - tstartb [+ (tstartb+0x44)]
|
||||||
|
# relocation: .text2 + 0x8044
|
||||||
|
# final value: .text2 - tstartb + 0x8000
|
||||||
|
|
||||||
|
la $4,ldb-tstartb+0x8010
|
||||||
|
# (.text2+0x10+0x8010) - tstartb [+ (tstartb+0x4c)]
|
||||||
|
# relocation: .text2 + 0x806c
|
||||||
|
# final value: .text2 - tstartb + 0x8020
|
||||||
|
|
||||||
|
.end tstartb
|
||||||
|
.space 16
|
||||||
|
.section .text2
|
||||||
|
ldb: .word 5
|
Loading…
Reference in New Issue