mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-04 07:44:22 +08:00
2010-01-13 Chao-ying Fu <fu@mips.com>
* ld-mips-elf/jr-to-b-1.d, ld-mips-elf/jr-to-b-2.d: New tests. * ld-mips-elf/jr-to-b-1.s, ld-mips-elf/jr-to-b-2.s: Source. * ld-mips-elf/mips-elf.exp: Run new tests.
This commit is contained in:
parent
38a7df635c
commit
1063d8cf71
@ -1,3 +1,9 @@
|
||||
2010-01-13 Chao-ying Fu <fu@mips.com>
|
||||
|
||||
* ld-mips-elf/jr-to-b-1.d, ld-mips-elf/jr-to-b-2.d: New tests.
|
||||
* ld-mips-elf/jr-to-b-1.s, ld-mips-elf/jr-to-b-2.s: Source.
|
||||
* ld-mips-elf/mips-elf.exp: Run new tests.
|
||||
|
||||
2010-01-13 Daniel Jacobowitz <dan@codesourcery.com>
|
||||
|
||||
* ld-arm/arm-elf.exp (armelftests): Assemble Cortex-A8 tests with
|
||||
|
25
ld/testsuite/ld-mips-elf/jr-to-b-1.d
Normal file
25
ld/testsuite/ld-mips-elf/jr-to-b-1.d
Normal file
@ -0,0 +1,25 @@
|
||||
#name: jr to b conversion
|
||||
#source: jr-to-b-1.s
|
||||
#as: -32 -mips1 -EB
|
||||
#ld: -shared -melf32btsmip
|
||||
#objdump: -d
|
||||
|
||||
.*: file format .*
|
||||
|
||||
|
||||
Disassembly of section \.text:
|
||||
|
||||
.* <s>:
|
||||
.*: 03e00008 jr ra
|
||||
.*: 24020001 li v0,1
|
||||
|
||||
.* <t>:
|
||||
.*: 3c1c.... lui gp,.*
|
||||
.*: 279c.... addiu gp,gp,.*
|
||||
.*: 0399e021 addu gp,gp,t9
|
||||
.*: 8f998018 lw t9,.*\(gp\)
|
||||
.*: 00000000 nop
|
||||
.*: 2739.... addiu t9,t9,.*
|
||||
.*: 1000fff7 b .* <s>
|
||||
.*: 00000000 nop
|
||||
#pass
|
42
ld/testsuite/ld-mips-elf/jr-to-b-1.s
Normal file
42
ld/testsuite/ld-mips-elf/jr-to-b-1.s
Normal file
@ -0,0 +1,42 @@
|
||||
.abicalls
|
||||
.text
|
||||
.align 2
|
||||
.set nomips16
|
||||
.ent s
|
||||
.type s, @function
|
||||
s:
|
||||
.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0
|
||||
.mask 0x00000000,0
|
||||
.fmask 0x00000000,0
|
||||
.set noreorder
|
||||
.set nomacro
|
||||
j $31
|
||||
li $2,1 # 0x1
|
||||
|
||||
.set macro
|
||||
.set reorder
|
||||
.end s
|
||||
.size s, .-s
|
||||
.align 2
|
||||
.globl t
|
||||
.set nomips16
|
||||
.ent t
|
||||
.type t, @function
|
||||
t:
|
||||
.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0
|
||||
.mask 0x00000000,0
|
||||
.fmask 0x00000000,0
|
||||
.set noreorder
|
||||
.cpload $25
|
||||
.set nomacro
|
||||
lw $25,%got(s)($28)
|
||||
nop
|
||||
addiu $25,$25,%lo(s)
|
||||
.reloc 1f,R_MIPS_JALR,s
|
||||
1: jr $25
|
||||
nop
|
||||
|
||||
.set macro
|
||||
.set reorder
|
||||
.end t
|
||||
.size t, .-t
|
25
ld/testsuite/ld-mips-elf/jr-to-b-2.d
Normal file
25
ld/testsuite/ld-mips-elf/jr-to-b-2.d
Normal file
@ -0,0 +1,25 @@
|
||||
#name: jr not to b conversion
|
||||
#source: jr-to-b-2.s
|
||||
#as: -32 -mips1 -EB
|
||||
#ld: -shared -melf32btsmip
|
||||
#objdump: -d
|
||||
|
||||
.*: file format .*
|
||||
|
||||
|
||||
Disassembly of section \.text:
|
||||
|
||||
.* <s>:
|
||||
.*: e820 jr ra
|
||||
.*: 6a01 li v0,1
|
||||
|
||||
.* <t>:
|
||||
.*: 3c1c.... lui gp,.*
|
||||
.*: 279c.... addiu gp,gp,.*
|
||||
.*: 0399e021 addu gp,gp,t9
|
||||
.*: 8f99.... lw t9,.*\(gp\)
|
||||
.*: 00000000 nop
|
||||
.*: 2739.... addiu t9,t9,.*
|
||||
.*: 03200008 jr t9
|
||||
.*: 00000000 nop
|
||||
#pass
|
42
ld/testsuite/ld-mips-elf/jr-to-b-2.s
Normal file
42
ld/testsuite/ld-mips-elf/jr-to-b-2.s
Normal file
@ -0,0 +1,42 @@
|
||||
.abicalls
|
||||
.text
|
||||
.align 2
|
||||
.set mips16
|
||||
.ent s
|
||||
.type s, @function
|
||||
s:
|
||||
.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0
|
||||
.mask 0x00000000,0
|
||||
.fmask 0x00000000,0
|
||||
.set noreorder
|
||||
.set nomacro
|
||||
j $31
|
||||
li $2,1
|
||||
.set macro
|
||||
.set reorder
|
||||
|
||||
.end s
|
||||
.size s, .-s
|
||||
.align 2
|
||||
.globl t
|
||||
.set nomips16
|
||||
.ent t
|
||||
.type t, @function
|
||||
t:
|
||||
.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0
|
||||
.mask 0x00000000,0
|
||||
.fmask 0x00000000,0
|
||||
.set noreorder
|
||||
.cpload $25
|
||||
.set nomacro
|
||||
lw $25,%got(s)($28)
|
||||
nop
|
||||
addiu $25,$25,%lo(s)
|
||||
.reloc 1f,R_MIPS_JALR,s
|
||||
1: jr $25
|
||||
nop
|
||||
|
||||
.set macro
|
||||
.set reorder
|
||||
.end t
|
||||
.size t, .-t
|
@ -522,3 +522,9 @@ if { $linux_gnu } {
|
||||
}
|
||||
|
||||
run_dump_test "undefined"
|
||||
|
||||
# Test the conversion from jr to b
|
||||
if { $linux_gnu } {
|
||||
run_dump_test "jr-to-b-1"
|
||||
run_dump_test "jr-to-b-2"
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user