* gas/mmix/op-0-1.d, gas/mmix/pushj-c.d, gas/mmix/weak1.d: Add
--no-pushj-stubs option. * gas/mmix/reloclab-r.d, gas/mmix/reloclab.d: Add --no-stubs option. * gas/mmix/reloclab.l: Adjust for PUSHJ stub. * gas/mmix/pushj-cs.d, gas/mmix/reloclab-s.d, gas/mmix/relax2.s, gas/mmix/relax2.d, gas/mmix/op-0-1s.d, gas/mmix/reloclab-rs.d, gas/mmix/weak1-s.d: New tests.
This commit is contained in:
parent
88fc725d2f
commit
3314fb38c1
@ -1,3 +1,14 @@
|
||||
2003-10-18 Hans-Peter Nilsson <hp@bitrange.com>
|
||||
|
||||
* gas/mmix/op-0-1.d, gas/mmix/pushj-c.d, gas/mmix/weak1.d: Add
|
||||
--no-pushj-stubs option.
|
||||
* gas/mmix/reloclab-r.d, gas/mmix/reloclab.d: Add --no-stubs
|
||||
option.
|
||||
* gas/mmix/reloclab.l: Adjust for PUSHJ stub.
|
||||
* gas/mmix/pushj-cs.d, gas/mmix/reloclab-s.d, gas/mmix/relax2.s,
|
||||
gas/mmix/relax2.d, gas/mmix/op-0-1s.d, gas/mmix/reloclab-rs.d,
|
||||
gas/mmix/weak1-s.d: New tests.
|
||||
|
||||
2003-10-17 Ian Lance Taylor <ian@wasabisystems.com>
|
||||
|
||||
* gas/arm/iwmmxt-bad.s: New file.
|
||||
|
@ -1,5 +1,5 @@
|
||||
#objdump: -srt
|
||||
#as: -x
|
||||
#as: -x --no-stubs
|
||||
|
||||
.*: file format elf64-mmix
|
||||
|
||||
|
22
gas/testsuite/gas/mmix/op-0-1s.d
Normal file
22
gas/testsuite/gas/mmix/op-0-1s.d
Normal file
@ -0,0 +1,22 @@
|
||||
#objdump: -srt
|
||||
#source: op-0-1.s
|
||||
#as: -x
|
||||
|
||||
.*: file format elf64-mmix
|
||||
SYMBOL TABLE:
|
||||
0+ l d \.text 0+
|
||||
0+ l d \.data 0+
|
||||
0+ l d \.bss 0+
|
||||
0+ l \*ABS\* 0+ zero0
|
||||
0+ l \*ABS\* 0+ zero1
|
||||
0+ l \*ABS\* 0+ zero2
|
||||
0+ g F \.text 0+ Main
|
||||
RELOCATION RECORDS FOR \[\.text\]:
|
||||
OFFSET TYPE VALUE
|
||||
0+ R_MMIX_JMP \*ABS\*
|
||||
0+14 R_MMIX_GETA \*ABS\*
|
||||
0+24 R_MMIX_PUSHJ_STUBBABLE \*ABS\*
|
||||
Contents of section \.text:
|
||||
0000 f0000000 fd000000 fd000000 fd000000 .*
|
||||
0010 fd000000 f4070000 fd000000 fd000000 .*
|
||||
0020 fd000000 f2080000 .*
|
@ -1,4 +1,4 @@
|
||||
#as: -x
|
||||
#as: -x --no-pushj-stubs
|
||||
#objdump: -tdr
|
||||
|
||||
.*: file format elf64-mmix
|
||||
|
18
gas/testsuite/gas/mmix/pushj-cs.d
Normal file
18
gas/testsuite/gas/mmix/pushj-cs.d
Normal file
@ -0,0 +1,18 @@
|
||||
#as: -x
|
||||
#source: pushj-c.s
|
||||
#objdump: -tdr
|
||||
|
||||
.*: file format elf64-mmix
|
||||
SYMBOL TABLE:
|
||||
0+ l d .text 0+
|
||||
0+ l d .data 0+
|
||||
0+ l d .bss 0+
|
||||
ffff0000ffff0000 l \*ABS\* 0+ i1
|
||||
ffff0000ffff0000 l \*ABS\* 0+ i2
|
||||
0+ g F .text 0+ Main
|
||||
Disassembly of section \.text:
|
||||
0+ <Main>:
|
||||
0: f2010000 pushj \$1,0 <Main>
|
||||
0: R_MMIX_PUSHJ_STUBBABLE \*ABS\*\+0xffff0000ffff0000
|
||||
4: f2020000 pushj \$2,4 <Main\+0x4>
|
||||
4: R_MMIX_PUSHJ_STUBBABLE i2
|
251
gas/testsuite/gas/mmix/relax2.d
Normal file
251
gas/testsuite/gas/mmix/relax2.d
Normal file
@ -0,0 +1,251 @@
|
||||
#objdump: -r
|
||||
#as: -x
|
||||
|
||||
.*: file format elf64-mmix
|
||||
R.* \[\.text\.a0\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.a0
|
||||
0+40018 R_MMIX_PUSHJ \.text\.a0\+0x0+4
|
||||
R.* \[\.text\.b0\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b0
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b0\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ \.text\.b0\+0x0+8
|
||||
R.* \[\.text\.c0\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ ca0
|
||||
0+14 R_MMIX_PUSHJ cb0
|
||||
R.* \[\.text\.d0\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da0
|
||||
0+14 R_MMIX_PUSHJ db0
|
||||
0+28 R_MMIX_PUSHJ dc0
|
||||
R.* \[\.text\.a1\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.a1
|
||||
0+40018 R_MMIX_PUSHJ_STUBBABLE \.text\.a1\+0x0+4
|
||||
R.* \[\.text\.b1\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b1
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b1\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ_STUBBABLE \.text\.b1\+0x0+8
|
||||
R.* \[\.text\.c1\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ ca1
|
||||
0+14 R_MMIX_PUSHJ_STUBBABLE cb1
|
||||
R.* \[\.text\.d1\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da1
|
||||
0+14 R_MMIX_PUSHJ db1
|
||||
0+28 R_MMIX_PUSHJ_STUBBABLE dc1
|
||||
|
||||
# The following shows a limitation of the PUSHJ relaxation code when
|
||||
# PUSHJ:s are close, and about 256k away from the section limit: On the
|
||||
# first relaxation iteration, the first (or second) PUSHJ looks like it
|
||||
# could reach a stub. However, the last PUSHJ is expanded and on the
|
||||
# second iteration, the stubbed PUSHJ has to be expanded too because it
|
||||
# can't reach the stubs anymore. This continues for the next iterations,
|
||||
# because the max stub size is five tetrabytes (4-bytes). At the expense
|
||||
# of much more complex relaxation code (including the relaxation machinery
|
||||
# in write.c), this is fixable. Anyway, as long as PUSHJ:s aren't closer
|
||||
# than five instructions, the existing code does suffice; we're just here
|
||||
# to check that the border case *works* and doesn't generate invalid code.
|
||||
|
||||
R.* \[\.text\.a2\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.a2
|
||||
0+40018 R_MMIX_PUSHJ \.text\.a2\+0x0+4
|
||||
R.* \[\.text\.b2\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b2
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b2\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ \.text\.b2\+0x0+8
|
||||
R.* \[\.text\.c2\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ ca2
|
||||
0+14 R_MMIX_PUSHJ cb2
|
||||
R.* \[\.text\.d2\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da2
|
||||
0+14 R_MMIX_PUSHJ db2
|
||||
0+28 R_MMIX_PUSHJ dc2
|
||||
R.* \[\.text\.a3\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.a3
|
||||
0+40018 R_MMIX_PUSHJ \.text\.a3\+0x0+4
|
||||
R.* \[\.text\.b3\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b3
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b3\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ \.text\.b3\+0x0+8
|
||||
R.* \[\.text\.c3\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ ca3
|
||||
0+14 R_MMIX_PUSHJ cb3
|
||||
R.* \[\.text\.d3\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da3
|
||||
0+14 R_MMIX_PUSHJ db3
|
||||
0+28 R_MMIX_PUSHJ dc3
|
||||
R.* \[\.text\.a4\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.a4
|
||||
0+40018 R_MMIX_PUSHJ \.text\.a4\+0x0+4
|
||||
R.* \[\.text\.b4\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b4
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b4\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ \.text\.b4\+0x0+8
|
||||
R.* \[\.text\.c4\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ ca4
|
||||
0+14 R_MMIX_PUSHJ cb4
|
||||
R.* \[\.text\.d4\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da4
|
||||
0+14 R_MMIX_PUSHJ db4
|
||||
0+28 R_MMIX_PUSHJ dc4
|
||||
R.* \[\.text\.a5\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.a5
|
||||
0+40018 R_MMIX_PUSHJ \.text\.a5\+0x0+4
|
||||
R.* \[\.text\.b5\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b5
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b5\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ \.text\.b5\+0x0+8
|
||||
R.* \[\.text\.c5\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ ca5
|
||||
0+14 R_MMIX_PUSHJ cb5
|
||||
R.* \[\.text\.d5\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da5
|
||||
0+14 R_MMIX_PUSHJ db5
|
||||
0+28 R_MMIX_PUSHJ dc5
|
||||
R.* \[\.text\.a6\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a6
|
||||
0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a6\+0x0+4
|
||||
R.* \[\.text\.b6\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b6
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b6\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ_STUBBABLE \.text\.b6\+0x0+8
|
||||
R.* \[\.text\.c6\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ_STUBBABLE ca6
|
||||
0+4 R_MMIX_PUSHJ_STUBBABLE cb6
|
||||
R.* \[\.text\.d6\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da6
|
||||
0+14 R_MMIX_PUSHJ db6
|
||||
0+28 R_MMIX_PUSHJ_STUBBABLE dc6
|
||||
R.* \[\.text\.a7\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a7
|
||||
0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a7\+0x0+4
|
||||
R.* \[\.text\.b7\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b7
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b7\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ \.text\.b7\+0x0+8
|
||||
R.* \[\.text\.c7\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ_STUBBABLE ca7
|
||||
0+4 R_MMIX_PUSHJ_STUBBABLE cb7
|
||||
R.* \[\.text\.d7\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da7
|
||||
0+14 R_MMIX_PUSHJ db7
|
||||
0+28 R_MMIX_PUSHJ dc7
|
||||
R.* \[\.text\.a8\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a8
|
||||
0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a8\+0x0+4
|
||||
R.* \[\.text\.b8\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b8
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b8\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ \.text\.b8\+0x0+8
|
||||
R.* \[\.text\.c8\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ_STUBBABLE ca8
|
||||
0+4 R_MMIX_PUSHJ_STUBBABLE cb8
|
||||
R.* \[\.text\.d8\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da8
|
||||
0+14 R_MMIX_PUSHJ db8
|
||||
0+28 R_MMIX_PUSHJ dc8
|
||||
R.* \[\.text\.a9\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a9
|
||||
0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a9\+0x0+4
|
||||
R.* \[\.text\.b9\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b9
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b9\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ \.text\.b9\+0x0+8
|
||||
R.* \[\.text\.c9\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ_STUBBABLE ca9
|
||||
0+4 R_MMIX_PUSHJ_STUBBABLE cb9
|
||||
R.* \[\.text\.d9\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da9
|
||||
0+14 R_MMIX_PUSHJ db9
|
||||
0+28 R_MMIX_PUSHJ dc9
|
||||
R.* \[\.text\.a10\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a10
|
||||
0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a10\+0x0+4
|
||||
R.* \[\.text\.b10\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ \.text\.b10
|
||||
0+40018 R_MMIX_PUSHJ \.text\.b10\+0x0+4
|
||||
0+4002c R_MMIX_PUSHJ \.text\.b10\+0x0+8
|
||||
R.* \[\.text\.c10\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ_STUBBABLE ca10
|
||||
0+4 R_MMIX_PUSHJ_STUBBABLE cb10
|
||||
R.* \[\.text\.d10\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ da10
|
||||
0+14 R_MMIX_PUSHJ db10
|
||||
0+28 R_MMIX_PUSHJ dc10
|
||||
R.* \[\.text\.a11\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a11
|
||||
0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a11\+0x0+4
|
||||
R.* \[\.text\.b11\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.b11
|
||||
0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.b11\+0x0+4
|
||||
0+4000c R_MMIX_PUSHJ_STUBBABLE \.text\.b11\+0x0+8
|
||||
R.* \[\.text\.c11\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ_STUBBABLE ca11
|
||||
0+4 R_MMIX_PUSHJ_STUBBABLE cb11
|
||||
R.* \[\.text\.d11\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ_STUBBABLE da11
|
||||
0+4 R_MMIX_PUSHJ_STUBBABLE db11
|
||||
0+8 R_MMIX_PUSHJ_STUBBABLE dc11
|
||||
R.* \[\.text\.a12\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a12
|
||||
0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a12\+0x0+4
|
||||
R.* \[\.text\.b12\]:
|
||||
O.*
|
||||
0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.b12
|
||||
0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.b12\+0x0+4
|
||||
0+4000c R_MMIX_PUSHJ_STUBBABLE \.text\.b12\+0x0+8
|
||||
R.* \[\.text\.c12\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ_STUBBABLE ca12
|
||||
0+4 R_MMIX_PUSHJ_STUBBABLE cb12
|
||||
R.* \[\.text\.d12\]:
|
||||
O.*
|
||||
0+ R_MMIX_PUSHJ_STUBBABLE da12
|
||||
0+4 R_MMIX_PUSHJ_STUBBABLE db12
|
||||
0+8 R_MMIX_PUSHJ_STUBBABLE dc12
|
35
gas/testsuite/gas/mmix/relax2.s
Normal file
35
gas/testsuite/gas/mmix/relax2.s
Normal file
@ -0,0 +1,35 @@
|
||||
# PUSHJ stub border-cases: two with either or both stubs unreachable,
|
||||
# local symbols, ditto non-local labels, similar with three PUSHJs.
|
||||
|
||||
Main SWYM
|
||||
|
||||
.irp x,0,1,2,3,4,5,6,7,8,9,10,11,12
|
||||
|
||||
.section .text.a\x,"ax"
|
||||
aa\x: .space 4,0
|
||||
a\x: .space 65536*4,0
|
||||
PUSHJ $33,aa\x
|
||||
PUSHJ $22,a\x
|
||||
.space 65535*4-4*\x
|
||||
|
||||
.section .text.b\x,"ax"
|
||||
bbb\x: .space 4,0
|
||||
bb\x: .space 4,0
|
||||
b\x: .space 65535*4
|
||||
PUSHJ $12,bbb\x
|
||||
PUSHJ $13,bb\x
|
||||
PUSHJ $14,b\x
|
||||
.space 65535*4-4*\x
|
||||
|
||||
.section .text.c\x,"ax"
|
||||
c\x: PUSHJ $100,ca\x
|
||||
PUSHJ $101,cb\x
|
||||
.space 65535*4-4*\x
|
||||
|
||||
.section .text.d\x,"ax"
|
||||
d\x: PUSHJ $99,da\x
|
||||
PUSHJ $98,db\x
|
||||
PUSHJ $97,dc\x
|
||||
.space 65535*4-4*\x
|
||||
|
||||
.endr
|
@ -1,5 +1,5 @@
|
||||
#objdump: -dr
|
||||
#as: -linkrelax -x
|
||||
#as: -linkrelax -x --no-stubs
|
||||
#source: reloclab.s
|
||||
.*: file format elf64-mmix
|
||||
|
||||
|
42
gas/testsuite/gas/mmix/reloclab-rs.d
Normal file
42
gas/testsuite/gas/mmix/reloclab-rs.d
Normal file
@ -0,0 +1,42 @@
|
||||
#objdump: -dr
|
||||
#as: -linkrelax -x
|
||||
#source: reloclab.s
|
||||
|
||||
.*: file format elf64-mmix
|
||||
Disassembly of section \.text:
|
||||
0000000000000000 <Main>:
|
||||
0: f0000000 jmp 0 <Main>
|
||||
0: R_MMIX_JMP foo\+0x8
|
||||
4: fd000000 swym 0,0,0
|
||||
8: fd000000 swym 0,0,0
|
||||
c: fd000000 swym 0,0,0
|
||||
10: fd000000 swym 0,0,0
|
||||
14: f0000004 jmp 24 <here>
|
||||
14: R_MMIX_ADDR27 \.text\+0x24
|
||||
18: f4080003 geta \$8,24 <here>
|
||||
18: R_MMIX_ADDR19 \.text\+0x24
|
||||
1c: 46630002 bod \$99,24 <here>
|
||||
1c: R_MMIX_ADDR19 \.text\+0x24
|
||||
20: fd000000 swym 0,0,0
|
||||
0000000000000024 <here>:
|
||||
24: 42de0000 bz \$222,24 <here>
|
||||
24: R_MMIX_CBRANCH bar\+0x10
|
||||
28: fd000000 swym 0,0,0
|
||||
2c: fd000000 swym 0,0,0
|
||||
30: fd000000 swym 0,0,0
|
||||
34: fd000000 swym 0,0,0
|
||||
38: fd000000 swym 0,0,0
|
||||
000000000000003c <there>:
|
||||
3c: f4040000 geta \$4,3c <there>
|
||||
3c: R_MMIX_GETA baz
|
||||
40: fd000000 swym 0,0,0
|
||||
44: fd000000 swym 0,0,0
|
||||
48: fd000000 swym 0,0,0
|
||||
4c: f2070000 pushj \$7,4c <there\+0x10>
|
||||
4c: R_MMIX_PUSHJ_STUBBABLE foobar
|
||||
50: f1fffffb jmp 3c <there>
|
||||
50: R_MMIX_ADDR27 \.text\+0x3c
|
||||
54: f558fffa geta \$88,3c <there>
|
||||
54: R_MMIX_ADDR19 \.text\+0x3c
|
||||
58: 476ffff9 bod \$111,3c <there>
|
||||
58: R_MMIX_ADDR19 \.text\+0x3c
|
36
gas/testsuite/gas/mmix/reloclab-s.d
Normal file
36
gas/testsuite/gas/mmix/reloclab-s.d
Normal file
@ -0,0 +1,36 @@
|
||||
#objdump: -dr
|
||||
#source: reloclab.s
|
||||
#as: -x
|
||||
|
||||
.*: file format elf64-mmix
|
||||
Disassembly of section \.text:
|
||||
0000000000000000 <Main>:
|
||||
0: f0000000 jmp 0 <Main>
|
||||
0: R_MMIX_JMP foo\+0x8
|
||||
4: fd000000 swym 0,0,0
|
||||
8: fd000000 swym 0,0,0
|
||||
c: fd000000 swym 0,0,0
|
||||
10: fd000000 swym 0,0,0
|
||||
14: f0000004 jmp 24 <here>
|
||||
18: f4080003 geta \$8,24 <here>
|
||||
1c: 46630002 bod \$99,24 <here>
|
||||
20: fd000000 swym 0,0,0
|
||||
0000000000000024 <here>:
|
||||
24: 42de0000 bz \$222,24 <here>
|
||||
24: R_MMIX_CBRANCH bar\+0x10
|
||||
28: fd000000 swym 0,0,0
|
||||
2c: fd000000 swym 0,0,0
|
||||
30: fd000000 swym 0,0,0
|
||||
34: fd000000 swym 0,0,0
|
||||
38: fd000000 swym 0,0,0
|
||||
000000000000003c <there>:
|
||||
3c: f4040000 geta \$4,3c <there>
|
||||
3c: R_MMIX_GETA baz
|
||||
40: fd000000 swym 0,0,0
|
||||
44: fd000000 swym 0,0,0
|
||||
48: fd000000 swym 0,0,0
|
||||
4c: f2070000 pushj \$7,4c <there\+0x10>
|
||||
4c: R_MMIX_PUSHJ_STUBBABLE foobar
|
||||
50: f1fffffb jmp 3c <there>
|
||||
54: f558fffa geta \$88,3c <there>
|
||||
58: 476ffff9 bod \$111,3c <there>
|
@ -1,5 +1,5 @@
|
||||
#objdump: -dr
|
||||
#as: -x
|
||||
#as: -x --no-stubs
|
||||
|
||||
.*: file format elf64-mmix
|
||||
|
||||
|
@ -24,13 +24,9 @@ GAS for MMIX .*/reloclab\.s page 1
|
||||
10 FD000000
|
||||
10 FD000000
|
||||
11 004c F2070000 PUSHJ \$7,foobar
|
||||
11 FD000000
|
||||
11 FD000000
|
||||
11 FD000000
|
||||
11 FD000000
|
||||
12 0060 F1FFFFF7 JMP there
|
||||
13 0064 F558FFF6 GETA \$88,there
|
||||
14 0068 476FFFF5 BOD \$111,there
|
||||
12 0050 F1FFFFFB JMP there
|
||||
13 0054 F558FFFA GETA \$88,there
|
||||
14 0058 476FFFF9 BOD \$111,there
|
||||
GAS for MMIX .*/reloclab\.s page 2
|
||||
|
||||
|
||||
|
19
gas/testsuite/gas/mmix/weak1-s.d
Normal file
19
gas/testsuite/gas/mmix/weak1-s.d
Normal file
@ -0,0 +1,19 @@
|
||||
#as: -x
|
||||
#source: weak1.s
|
||||
#objdump: -str
|
||||
|
||||
# Like weak1, but with PUSHJ stubs.
|
||||
|
||||
.*: file format elf64-mmix
|
||||
SYMBOL TABLE:
|
||||
0+ l d \.text 0+
|
||||
0+ l d \.data 0+
|
||||
0+ l d \.bss 0+
|
||||
0+ w \.text 0+ foo
|
||||
0+4 g \.text 0+ main
|
||||
RELOCATION RECORDS FOR \[\.text\]:
|
||||
OFFSET TYPE VALUE
|
||||
0+8 R_MMIX_64 foo
|
||||
0+4 R_MMIX_PUSHJ_STUBBABLE foo
|
||||
Contents of section \.text:
|
||||
0000 f8010000 f20f0000 00000000 00000000 .*
|
@ -1,4 +1,4 @@
|
||||
#as: -x
|
||||
#as: -x --no-pushj-stubs
|
||||
#objdump: -str
|
||||
|
||||
# Relaxation thought a weak symbol was within reach.
|
||||
|
Loading…
x
Reference in New Issue
Block a user