diff options
author | Nick Clifton <nickc@redhat.com> | 2006-07-12 09:02:00 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2006-07-12 09:02:00 +0000 |
commit | 01eaea5ad27ebd470a27ae2f3c9ffd50956d4caf (patch) | |
tree | 615f18d78f0c5a4369ba68af08e2e714dc7568d7 /gas/testsuite | |
parent | 743a4945a6a302c986ee2f2b6d113e33b968a2f8 (diff) | |
download | gdb-01eaea5ad27ebd470a27ae2f3c9ffd50956d4caf.zip gdb-01eaea5ad27ebd470a27ae2f3c9ffd50956d4caf.tar.gz gdb-01eaea5ad27ebd470a27ae2f3c9ffd50956d4caf.tar.bz2 |
* config/tc-sh.c (md_apply_fix): Do not allow the generic code in
fixup_segment() to repeat a range check on a value that have already
been checked here.
* gas/sh/basic.exp: Run "too_large" dump test.
* gas/sh/too_large.s: New test file. Check that .byte directives do not
generate a bogus overflow message.
* gas/sh/too_large.s: New test control file.
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gas/testsuite/gas/sh/basic.exp | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/sh/too_large.d | 9 | ||||
-rw-r--r-- | gas/testsuite/gas/sh/too_large.s | 39 |
4 files changed, 57 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index a4cd0e9..fcec568 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2006-07-12 Nick Clifton <nickc@redhat.com> + + * gas/sh/basic.exp: Run "too_large" dump test. + * gas/sh/too_large.s: New test file. Check that .byte directives + do not generate a bogus overflow message. + * gas/sh/too_large.s: New test control file. + 2006-07-05 Julian Brown <julian@codesourcery.com> * gas/arm/vfp-neon-syntax.d: Tweak expected fmsrr syntax. diff --git a/gas/testsuite/gas/sh/basic.exp b/gas/testsuite/gas/sh/basic.exp index 093048b..2f9424d 100644 --- a/gas/testsuite/gas/sh/basic.exp +++ b/gas/testsuite/gas/sh/basic.exp @@ -167,6 +167,8 @@ if [istarget sh*-*-*] then { # Test --allow-reg-prefix. run_dump_test "reg-prefix" + + run_dump_test "too_large" } } diff --git a/gas/testsuite/gas/sh/too_large.d b/gas/testsuite/gas/sh/too_large.d new file mode 100644 index 0000000..597e745 --- /dev/null +++ b/gas/testsuite/gas/sh/too_large.d @@ -0,0 +1,9 @@ +#name: Check for bogus overflow errors in .byte directives +#as: -big -relax -isa=sh4a +#nm: -n + +[ ]*U \.L318 +[ ]*U \.L319 +[ ]*U \.L320 +[ ]*U \.L321 +0+00100 t \.L307 diff --git a/gas/testsuite/gas/sh/too_large.s b/gas/testsuite/gas/sh/too_large.s new file mode 100644 index 0000000..b67b8f7 --- /dev/null +++ b/gas/testsuite/gas/sh/too_large.s @@ -0,0 +1,39 @@ + .file "too_large.c" + .text + nop + .align 8 +.L307: + .byte .L302-.L307 + .byte .L303-.L307 + .byte .L304-.L307 + .byte .L305-.L307 +.L304: + mov.l .L318,r1 + jsr @r1 + mov r8,r4 + lds r0,fpul + fsts fpul,fr1 + flds fr1,fpul + sts fpul,r0 + mov r14,r15 + lds.l @r15+,pr + mov.l @r15+,r14 + mov.l @r15+,r8 + rts + nop +.L305: + mov.l .L319,r7 + jsr @r7 + mov r8,r4 + lds r0,fpul + bra .L307 + fsts fpul,fr1 +.L303: + mov.l .L320,r6 + jsr @r6 + mov r8,r4 + lds r0,fpul + bra .L307 + fsts fpul,fr1 +.L302: + mov.l .L321,r5 |