]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR target/58673 (ICE in final_scan_insn for movti_ppc64 with base+offset address)
authorMichael Meissner <meissner@linux.vnet.ibm.com>
Thu, 17 Oct 2013 17:06:24 +0000 (17:06 +0000)
committerMichael Meissner <meissner@gcc.gnu.org>
Thu, 17 Oct 2013 17:06:24 +0000 (17:06 +0000)
commit1ddbbbc0a8c5f1ff07002a3282b07dd24c367acf
tree3bc55cf98ca626982f1afea77e2a631b66ba7a23
parent206b48e4e7fcc47d9877fe5aaae9eaecde21b3bf
re PR target/58673 (ICE in final_scan_insn for movti_ppc64 with base+offset address)

[gcc]
2013-10-17  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/58673
* config/rs6000/rs6000.c (rs6000_legitimate_address_p): Only
restrict TImode addresses to single indirect registers if both
-mquad-memory and -mvsx-timode are used.
(rs6000_output_move_128bit): Use quad_load_store_p to determine if
we should emit load/store quad.  Remove using %y for quad memory
addresses.

* config/rs6000/rs6000.md (mov<mode>_ppc64, TI/PTImode): Add
constraints to allow load/store quad on machines where TImode is
not allowed in VSX registers.  Use 'n' instead of 'F' constraint
for TImode to load integer constants.

[gcc/testsuite]
2013-10-17  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/58673
* gcc.target/powerpc/pr58673-1.c: New file to test whether
-mquad-word + -mno-vsx-timode causes errors.
* gcc.target/powerpc/pr58673-2.c: Likewise.

From-SVN: r203781
gcc/ChangeLog
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/rs6000.md
gcc/testsuite/gcc.target/powerpc/pr58673-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/powerpc/pr58673-2.c [new file with mode: 0644]