diff options
author | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2009-07-01 16:53:26 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2009-07-01 16:53:26 +0000 |
commit | 4aa7f896a9e7bc90d6db7c4b9ba833e037ea0e7c (patch) | |
tree | e67e25d3f4e32b1f7071612dab2c1ccc5a395349 | |
parent | 3232e9d8b8877976b55a4c6715a025c7b240eb92 (diff) | |
download | gcc-4aa7f896a9e7bc90d6db7c4b9ba833e037ea0e7c.zip gcc-4aa7f896a9e7bc90d6db7c4b9ba833e037ea0e7c.tar.gz gcc-4aa7f896a9e7bc90d6db7c4b9ba833e037ea0e7c.tar.bz2 |
re PR target/40575 (FAIL: gcc.dg/falign-labels-1.c execution test)
PR target/40575
* pa.md (casesi32p): Use jump table label to determine the offset
of the jump table.
(casesi64p): Likewise.
From-SVN: r149144
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/pa/pa.md | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9b42f4f..022af0a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2009-07-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + PR target/40575 + * pa.md (casesi32p): Use jump table label to determine the offset + of the jump table. + (casesi64p): Likewise. + * pa.c (forward_branch_p): Return bool type. Use instruction addresses when available. Assert that INSN has a jump label. (pa_adjust_insn_length): Don't call forward_branch_p if INSN doesn't diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md index 1f5a69b..a20f406 100644 --- a/gcc/config/pa/pa.md +++ b/gcc/config/pa/pa.md @@ -7130,7 +7130,7 @@ (clobber (match_scratch:SI 2 "=&r")) (clobber (match_scratch:SI 3 "=&r"))] "flag_pic" - "{bl .+8,%2\;depi 0,31,2,%2|mfia %2}\;ldo {16|20}(%2),%2\;\ + "{bl .+8,%2\;depi 0,31,2,%2|mfia %2}\;ldo {%l1-.|%l1+4-.}(%2),%2\;\ {ldwx|ldw},s %0(%2),%3\;{addl|add,l} %2,%3,%3\;bv,n %%r0(%3)" [(set_attr "type" "multi") (set (attr "length") @@ -7148,7 +7148,7 @@ (clobber (match_scratch:DI 2 "=&r")) (clobber (match_scratch:DI 3 "=&r"))] "" - "mfia %2\;ldo 24(%2),%2\;ldw,s %0(%2),%3\;extrd,s %3,63,32,%3\;\ + "mfia %2\;ldo %l1+4-.(%2),%2\;ldw,s %0(%2),%3\;extrd,s %3,63,32,%3\;\ add,l %2,%3,%3\;bv,n %%r0(%3)" [(set_attr "type" "multi") (set_attr "length" "24")]) |