mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-03-01 13:26:47 +08:00
* gas/sh/pic.d, gas/sh/pic.s: New test.
* gas/sh/basic.exp: Run it.
This commit is contained in:
parent
ac3f04d7f1
commit
e93c640ed2
@ -1,12 +1,16 @@
|
||||
2002-02-06 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
* gas/sh/pic.d, gas/sh/pic.s: New test.
|
||||
* gas/sh/basic.exp: Run it.
|
||||
|
||||
2002-02-05 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* gas/ppc/test1elf64.d: Tweak arch name.
|
||||
|
||||
2002-02-04 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
* gas/testsuite/gas/sh/pcrel.d: New test.
|
||||
* gas/testsuite/gas/sh/pcrel.s: Sources for new test.
|
||||
* gas/testsuite/gas/sh/basic.exp: Run it.
|
||||
* gas/sh/pcrel.d, gas/sh/pcrel.s: New test.
|
||||
* gas/sh/basic.exp: Run it.
|
||||
|
||||
2002-02-04 Hans-Peter Nilsson <hp@bitrange.com>
|
||||
|
||||
|
@ -91,5 +91,7 @@ if [istarget sh*-*-*] then {
|
||||
# Test DSP instructions
|
||||
run_dump_test "dsp"
|
||||
|
||||
run_dump_test "pic"
|
||||
|
||||
run_dump_test "pcrel"
|
||||
}
|
||||
|
40
gas/testsuite/gas/sh/pic.d
Normal file
40
gas/testsuite/gas/sh/pic.d
Normal file
@ -0,0 +1,40 @@
|
||||
#objdump: -dr --prefix-addresses --show-raw-insn
|
||||
#name: SH PIC constructs
|
||||
# Test SH PIC constructs:
|
||||
|
||||
.*: file format elf.*sh.*
|
||||
|
||||
Disassembly of section \.text:
|
||||
0x00000000 c7 0a mova 0x0000002c,r0
|
||||
0x00000002 dc 0a mov\.l 0x0000002c,r12 ! 0x0
|
||||
0x00000004 3c 0c add r0,r12
|
||||
0x00000006 d0 0a mov\.l 0x00000030,r0 ! 0x0
|
||||
0x00000008 00 ce mov\.l @\(r0,r12\),r0
|
||||
0x0000000a 40 0b jsr @r0
|
||||
0x0000000c 00 09 nop
|
||||
0x0000000e d0 09 mov\.l 0x00000034,r0 ! 0x0
|
||||
0x00000010 30 cc add r12,r0
|
||||
0x00000012 40 0b jsr @r0
|
||||
0x00000014 00 09 nop
|
||||
0x00000016 d1 08 mov\.l 0x00000038,r1 ! 0x0
|
||||
0x00000018 c7 07 mova 0x00000038,r0
|
||||
0x0000001a 30 1c add r1,r0
|
||||
0x0000001c 40 0b jsr @r0
|
||||
0x0000001e 00 09 nop
|
||||
0x00000020 d0 06 mov\.l 0x0000003c,r0 ! 0x16
|
||||
0x00000022 40 0b jsr @r0
|
||||
0x00000024 00 09 nop
|
||||
0x00000026 d0 06 mov\.l 0x00000040,r0 ! 0x14
|
||||
0x00000028 40 0b jsr @r0
|
||||
0x0000002a 00 09 nop
|
||||
\.\.\.
|
||||
2c: R_SH_DIR32 GLOBAL_OFFSET_TABLE
|
||||
30: R_SH_GOT32 foo
|
||||
34: R_SH_GOTOFF foo
|
||||
38: R_SH_PLT32 foo
|
||||
0x0000003c 00 00 \.word 0x0000
|
||||
3c: R_SH_PLT32 foo
|
||||
0x0000003e 00 16 mov\.l r1,@\(r0,r0\)
|
||||
0x00000040 00 00 \.word 0x0000
|
||||
40: R_SH_PLT32 foo
|
||||
0x00000042 00 14 mov\.b r1,@\(r0,r0\)
|
41
gas/testsuite/gas/sh/pic.s
Normal file
41
gas/testsuite/gas/sh/pic.s
Normal file
@ -0,0 +1,41 @@
|
||||
.text
|
||||
.align
|
||||
|
||||
mova .Lgot, r0
|
||||
mov.l .Lgot, r12
|
||||
add r0, r12
|
||||
mov.l .Lfoogot, r0
|
||||
mov.l @(r0,r12), r0
|
||||
jsr @r0
|
||||
nop
|
||||
mov.l .Lfoogotoff, r0
|
||||
add r12, r0
|
||||
jsr @r0
|
||||
nop
|
||||
mov.l .Lfooplt, r1
|
||||
mova .Lfooplt, r0
|
||||
add r1, r0
|
||||
jsr @r0
|
||||
nop
|
||||
mov.l .Lfooplt_old, r0
|
||||
jsr @r0
|
||||
.LPLTcall_old:
|
||||
nop
|
||||
mov.l .Lfooplt_new, r0
|
||||
jsr @r0
|
||||
.LPLTcall_new:
|
||||
nop
|
||||
|
||||
.p2align 2
|
||||
.Lgot:
|
||||
.long GLOBAL_OFFSET_TABLE
|
||||
.Lfoogot:
|
||||
.long foo@GOT
|
||||
.Lfoogotoff:
|
||||
.long foo@GOTOFF
|
||||
.Lfooplt:
|
||||
.long foo@PLT
|
||||
.Lfooplt_old:
|
||||
.long foo@PLT + . - (.LPLTcall_old + 2)
|
||||
.Lfooplt_new:
|
||||
.long foo@PLT - (.LPLTcall_new + 2 - .)
|
Loading…
Reference in New Issue
Block a user