diff options
author | Alan Modra <amodra@gmail.com> | 2008-01-28 05:59:24 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2008-01-28 05:59:24 +0000 |
commit | 47f6dab9a3fb353b0faca52fcc07d2f57c4d906c (patch) | |
tree | 9cc0fcaf801807941794b51c5a6726a21692d0b6 /ld/testsuite/ld-spu/ovl2.d | |
parent | 8693ff0ffb451be8a54dceda84bfc78246271dd9 (diff) | |
download | binutils-gdb-47f6dab9a3fb353b0faca52fcc07d2f57c4d906c.tar.gz |
Rewrite SPU overlay handling code. Put overlay calls stubs in the
overlays where possible. Use a faster call stub, or optionally at
compile time, a more compact stub. Double size of _ovly_buf_table
so that low bit of _ovly_table.buf can be used as a "present" bit.
Reserve an extra _ovly_table entry for index zero.
Diffstat (limited to 'ld/testsuite/ld-spu/ovl2.d')
-rw-r--r-- | ld/testsuite/ld-spu/ovl2.d | 90 |
1 files changed, 53 insertions, 37 deletions
diff --git a/ld/testsuite/ld-spu/ovl2.d b/ld/testsuite/ld-spu/ovl2.d index bf62e0364f5..1cd1d33968b 100644 --- a/ld/testsuite/ld-spu/ovl2.d +++ b/ld/testsuite/ld-spu/ovl2.d @@ -7,40 +7,50 @@ Disassembly of section \.text: 00000100 <_start>: - 100: 33 00 06 00 brsl \$0,130 <00000000\.ovl_call\.f1_a1> # 130 - 100: SPU_REL16 f1_a1 - 104: 33 00 03 80 brsl \$0,120 <00000000\.ovl_call\.10:4> # 120 - 104: SPU_REL16 setjmp - 108: 32 7f ff 00 br 100 <_start> # 100 - 108: SPU_REL16 _start +.* brsl \$0,.* <00000000\.ovl_call\.f1_a1>.* +.*SPU_REL16 f1_a1 +.* brsl \$0,.* <00000000\.ovl_call\.10:4>.* +.*SPU_REL16 setjmp +.* br 100 <_start> # 100 +.*SPU_REL16 _start 0000010c <setjmp>: - 10c: 35 00 00 00 bi \$0 +.* bi \$0 00000110 <longjmp>: - 110: 35 00 00 00 bi \$0 - ... - -00000120 <00000000\.ovl_call.10:4>: - 120: 42 00 86 4f ila \$79,268 # 10c - 124: 40 20 00 00 nop \$0 - 128: 42 00 00 4e ila \$78,0 - 12c: 32 00 0a 80 br 180 <__ovly_load> # 180 - 12c: SPU_REL16 __ovly_load - -00000130 <00000000\.ovl_call.f1_a1>: - 130: 42 02 00 4f ila \$79,1024 # 400 - 134: 40 20 00 00 nop \$0 - 138: 42 00 00 ce ila \$78,1 - 13c: 32 00 08 80 br 180 <__ovly_load> # 180 - 13c: SPU_REL16 __ovly_load +.* bi \$0 +.* + +#00000118 <00000000\.ovl_call.f1_a1>: +#.* brsl \$75,.* <__ovly_load>.* +#.*00 04 04 00.* +# +#00000120 <00000000\.ovl_call.10:4>: +#.* brsl \$75,.* <__ovly_load>.* +#.*00 00 01 0c.* +# +#00000128 <_SPUEAR_f1_a2>: +#.* brsl \$75,.* <__ovly_load>.* +#.*00 08 04 00.* + +00000120 <00000000\.ovl_call.f1_a1>: +.* ila \$78,1 +.* lnop +.* ila \$79,1024 # 400 +.* br .* <__ovly_load>.* + +00000130 <00000000\.ovl_call.10:4>: +.* ila \$78,0 +.* lnop +.* ila \$79,268 # 10c +.* br .* <__ovly_load>.* 00000140 <_SPUEAR_f1_a2>: - 140: 42 02 00 4f ila \$79,1024 # 400 - 144: 40 20 00 00 nop \$0 - 148: 42 00 01 4e ila \$78,2 - 14c: 32 00 06 80 br 180 <__ovly_load> # 180 - 14c: SPU_REL16 __ovly_load +.* ila \$78,2 +.* lnop +.* ila \$79,1024 # 400 +.* br .* <__ovly_load>.* + #... Disassembly of section \.ov_a1: @@ -55,21 +65,27 @@ Disassembly of section \.ov_a2: \.\.\. Disassembly of section \.data: -00000410 <_ovly_table>: - 410: 00 00 04 00 .* - 414: 00 00 00 10 .* - 418: 00 00 02 d0 .* +00000410 <_ovly_table-0x10>: + \.\.\. 41c: 00 00 00 01 .* +00000420 <_ovly_table>: 420: 00 00 04 00 .* 424: 00 00 00 10 .* - 428: 00 00 02 e0 .* - 42c: 00 00 00 01 .* +# 428: 00 00 03 10 .* + 428: 00 00 03 30 .* + 42c: 00 00 00 02 .* + 430: 00 00 04 00 .* + 434: 00 00 00 10 .* +# 438: 00 00 03 20 .* + 438: 00 00 03 40 .* + 43c: 00 00 00 02 .* + +00000440 <_ovly_buf_table>: + \.\.\. -00000430 <_ovly_buf_table>: - 430: 00 00 00 00 .* Disassembly of section \.toe: -00000440 <_EAR_>: +00000450 <_EAR_>: \.\.\. Disassembly of section \.note\.spu_name: |