diff options
author | Maciej W. Rozycki <macro@linux-mips.org> | 2013-05-28 22:19:34 +0000 |
---|---|---|
committer | Maciej W. Rozycki <macro@linux-mips.org> | 2013-05-28 22:19:34 +0000 |
commit | f19ccbda970a50bf1b633aea25f04c0fa873b32c (patch) | |
tree | f6e24062f658f5bc3f617bf35ad2f06c6ffdce4e /gas/testsuite | |
parent | 418009c200310bee330ac27ab44cd9390a72bfef (diff) | |
download | gdb-f19ccbda970a50bf1b633aea25f04c0fa873b32c.zip gdb-f19ccbda970a50bf1b633aea25f04c0fa873b32c.tar.gz gdb-f19ccbda970a50bf1b633aea25f04c0fa873b32c.tar.bz2 |
gas/
* config/tc-mips.c (macro) <ld>: Don't use $zero for address
calculation.
gas/testsuite/
* gas/mips/ld-zero.d: New test.
* gas/mips/ld-zero-2.d: New test.
* gas/mips/ld-zero-3.d: New test.
* gas/mips/ld-zero-q.d: New test.
* gas/mips/ld-zero-u.d: New test.
* gas/mips/ecoff@ld-zero-3.d: New test.
* gas/mips/micromips@ld-zero-2.d: New test.
* gas/mips/micromips@ld-zero-3.d: New test.
* gas/mips/ld-zero.s: New test source.
* gas/mips/ld-zero-2.s: New test source.
* gas/mips/ld-zero-3.s: New test source.
* gas/mips/ld-zero-q.s: New test source.
* gas/mips/ld-zero-u.s: New test source.
* gas/mips/mips.exp: Run the new tests.
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/ChangeLog | 17 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ecoff@ld-zero-3.d | 4 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ld-zero-2.d | 11 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ld-zero-2.s | 7 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ld-zero-3.d | 17 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ld-zero-3.s | 9 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ld-zero-q.d | 11 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ld-zero-q.s | 7 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ld-zero-u.d | 15 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ld-zero-u.s | 8 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ld-zero.d | 23 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/ld-zero.s | 11 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/micromips@ld-zero-2.d | 13 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/micromips@ld-zero-3.d | 21 | ||||
-rw-r--r-- | gas/testsuite/gas/mips/mips.exp | 5 |
15 files changed, 179 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 6bd45d5..5253912 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,20 @@ +2013-05-28 Maciej W. Rozycki <macro@codesourcery.com> + + * gas/mips/ld-zero.d: New test. + * gas/mips/ld-zero-2.d: New test. + * gas/mips/ld-zero-3.d: New test. + * gas/mips/ld-zero-q.d: New test. + * gas/mips/ld-zero-u.d: New test. + * gas/mips/ecoff@ld-zero-3.d: New test. + * gas/mips/micromips@ld-zero-2.d: New test. + * gas/mips/micromips@ld-zero-3.d: New test. + * gas/mips/ld-zero.s: New test source. + * gas/mips/ld-zero-2.s: New test source. + * gas/mips/ld-zero-3.s: New test source. + * gas/mips/ld-zero-q.s: New test source. + * gas/mips/ld-zero-u.s: New test source. + * gas/mips/mips.exp: Run the new tests. + 2013-05-28 Yufeng Zhang <yufeng.zhang@arm.com> * gas/aarch64/tls.d: Update. diff --git a/gas/testsuite/gas/mips/ecoff@ld-zero-3.d b/gas/testsuite/gas/mips/ecoff@ld-zero-3.d new file mode 100644 index 0000000..4f682b1 --- /dev/null +++ b/gas/testsuite/gas/mips/ecoff@ld-zero-3.d @@ -0,0 +1,4 @@ +#objdump: -dr --prefix-addresses +#name: MIPS III load $zero +#source: ld-zero-3.s +#dump: ld-zero-3.d diff --git a/gas/testsuite/gas/mips/ld-zero-2.d b/gas/testsuite/gas/mips/ld-zero-2.d new file mode 100644 index 0000000..ddab515 --- /dev/null +++ b/gas/testsuite/gas/mips/ld-zero-2.d @@ -0,0 +1,11 @@ +#objdump: -dr --prefix-addresses +#as: -32 +#name: MIPS II load $zero + +.*: +file format .*mips.* + +Disassembly of section \.text: +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> ll zero,22136\(at\) + \.\.\. diff --git a/gas/testsuite/gas/mips/ld-zero-2.s b/gas/testsuite/gas/mips/ld-zero-2.s new file mode 100644 index 0000000..3bf4ca4 --- /dev/null +++ b/gas/testsuite/gas/mips/ld-zero-2.s @@ -0,0 +1,7 @@ + .text +foo: + ll $0, 0x12345678($2) + +# Force some (non-delay-slot) zero bytes, to make 'objdump' print ... + .align 4, 0 + .space 16 diff --git a/gas/testsuite/gas/mips/ld-zero-3.d b/gas/testsuite/gas/mips/ld-zero-3.d new file mode 100644 index 0000000..e8ae74d --- /dev/null +++ b/gas/testsuite/gas/mips/ld-zero-3.d @@ -0,0 +1,17 @@ +#objdump: -dr --prefix-addresses +#as: -mabi=o64 +#name: MIPS III load $zero + +.*: +file format .*mips.* + +Disassembly of section \.text: +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lwu zero,22136\(at\) +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> ld zero,22136\(at\) +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lld zero,22136\(at\) + \.\.\. diff --git a/gas/testsuite/gas/mips/ld-zero-3.s b/gas/testsuite/gas/mips/ld-zero-3.s new file mode 100644 index 0000000..7ca414c --- /dev/null +++ b/gas/testsuite/gas/mips/ld-zero-3.s @@ -0,0 +1,9 @@ + .text +foo: + lwu $0, 0x12345678($2) + ld $0, 0x12345678($2) + lld $0, 0x12345678($2) + +# Force some (non-delay-slot) zero bytes, to make 'objdump' print ... + .align 4, 0 + .space 16 diff --git a/gas/testsuite/gas/mips/ld-zero-q.d b/gas/testsuite/gas/mips/ld-zero-q.d new file mode 100644 index 0000000..1e92462 --- /dev/null +++ b/gas/testsuite/gas/mips/ld-zero-q.d @@ -0,0 +1,11 @@ +#objdump: -dr --prefix-addresses +#as: -32 +#name: MIPS R5900 load $zero + +.*: +file format .*mips.* + +Disassembly of section \.text: +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lq zero,22136\(at\) + \.\.\. diff --git a/gas/testsuite/gas/mips/ld-zero-q.s b/gas/testsuite/gas/mips/ld-zero-q.s new file mode 100644 index 0000000..972eb1c --- /dev/null +++ b/gas/testsuite/gas/mips/ld-zero-q.s @@ -0,0 +1,7 @@ + .text +foo: + lq $0, 0x12345678($2) + +# Force some (non-delay-slot) zero bytes, to make 'objdump' print ... + .align 4, 0 + .space 16 diff --git a/gas/testsuite/gas/mips/ld-zero-u.d b/gas/testsuite/gas/mips/ld-zero-u.d new file mode 100644 index 0000000..a54f9f2 --- /dev/null +++ b/gas/testsuite/gas/mips/ld-zero-u.d @@ -0,0 +1,15 @@ +#objdump: -dr --prefix-addresses +#as: -32 +#name: microMIPS load $zero + +.*: +file format .*mips.* +Disassembly of section \.text: +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> ori at,at,0x5000 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lwp zero,1656\(at\) +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> ori at,at,0x5000 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> ldp zero,1656\(at\) + \.\.\. diff --git a/gas/testsuite/gas/mips/ld-zero-u.s b/gas/testsuite/gas/mips/ld-zero-u.s new file mode 100644 index 0000000..c31e855 --- /dev/null +++ b/gas/testsuite/gas/mips/ld-zero-u.s @@ -0,0 +1,8 @@ + .text +foo: + lwp $0, 0x12345678($2) + ldp $0, 0x12345678($2) + +# Force some (non-delay-slot) zero bytes, to make 'objdump' print ... + .align 4, 0 + .space 16 diff --git a/gas/testsuite/gas/mips/ld-zero.d b/gas/testsuite/gas/mips/ld-zero.d new file mode 100644 index 0000000..6ee9260 --- /dev/null +++ b/gas/testsuite/gas/mips/ld-zero.d @@ -0,0 +1,23 @@ +#objdump: -dr --prefix-addresses +#as: -32 +#name: MIPS load $zero + +.*: +file format .*mips.* + +Disassembly of section \.text: +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lb zero,22136\(at\) +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lbu zero,22136\(at\) +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lh zero,22136\(at\) +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lhu zero,22136\(at\) +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lw zero,22136\(at\) + \.\.\. diff --git a/gas/testsuite/gas/mips/ld-zero.s b/gas/testsuite/gas/mips/ld-zero.s new file mode 100644 index 0000000..b8af6fe --- /dev/null +++ b/gas/testsuite/gas/mips/ld-zero.s @@ -0,0 +1,11 @@ + .text +foo: + lb $0, 0x12345678($2) + lbu $0, 0x12345678($2) + lh $0, 0x12345678($2) + lhu $0, 0x12345678($2) + lw $0, 0x12345678($2) + +# Force some (non-delay-slot) zero bytes, to make 'objdump' print ... + .align 4, 0 + .space 16 diff --git a/gas/testsuite/gas/mips/micromips@ld-zero-2.d b/gas/testsuite/gas/mips/micromips@ld-zero-2.d new file mode 100644 index 0000000..7fcdc44 --- /dev/null +++ b/gas/testsuite/gas/mips/micromips@ld-zero-2.d @@ -0,0 +1,13 @@ +#objdump: -dr --prefix-addresses +#as: -32 +#name: MIPS II load $zero +#source: ld-zero-2.s + +.*: +file format .*mips.* + +Disassembly of section \.text: +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> ori at,at,0x5000 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> ll zero,1656\(at\) + \.\.\. diff --git a/gas/testsuite/gas/mips/micromips@ld-zero-3.d b/gas/testsuite/gas/mips/micromips@ld-zero-3.d new file mode 100644 index 0000000..49c005b --- /dev/null +++ b/gas/testsuite/gas/mips/micromips@ld-zero-3.d @@ -0,0 +1,21 @@ +#objdump: -dr --prefix-addresses +#as: -32 +#name: MIPS III load $zero +#source: ld-zero-3.s + +.*: +file format .*mips.* + +Disassembly of section \.text: +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> ori at,at,0x5000 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lwu zero,1656\(at\) +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> addu at,v0,at +[0-9a-f]+ <[^>]*> lw zero,22136\(at\) +[0-9a-f]+ <[^>]*> lw at,22140\(at\) +[0-9a-f]+ <[^>]*> lui at,0x1234 +[0-9a-f]+ <[^>]*> ori at,at,0x5000 +[0-9a-f]+ <[^>]*> addu at,at,v0 +[0-9a-f]+ <[^>]*> lld zero,1656\(at\) + \.\.\. diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp index aef771a..1107fb6 100644 --- a/gas/testsuite/gas/mips/mips.exp +++ b/gas/testsuite/gas/mips/mips.exp @@ -698,6 +698,11 @@ if { [istarget mips*-*-vxworks*] } { [mips_arch_list_matching mips3 !singlefloat] } } + run_dump_test_arches "ld-zero" [mips_arch_list_matching mips1] + run_dump_test_arches "ld-zero-2" [mips_arch_list_matching mips2 !nollsc] + run_dump_test_arches "ld-zero-3" [mips_arch_list_matching mips3 !nollsc] + run_dump_test_arches "ld-zero-u" [mips_arch_list_matching micromips] + run_dump_test_arches "ld-zero-q" [mips_arch_list_matching r5900] if $elf { run_dump_test "ld-svr4pic" } if $elf { run_dump_test "ld-xgot" } run_dump_test_arches "li" [mips_arch_list_matching mips1] |