re PR target/71677 (PowerPC ISA 3.0 DImode load/store needs a fix)
authorMichael Meissner <meissner@linux.vnet.ibm.com>
Thu, 30 Jun 2016 21:54:47 +0000 (21:54 +0000)
committerMichael Meissner <meissner@gcc.gnu.org>
Thu, 30 Jun 2016 21:54:47 +0000 (21:54 +0000)
commitec5385270a31c82747239c962fdbb55a7b45ffde
tree074b75dd2a88754b99e336800ee0dc60494c4223
parent55a0f21aba28fac542ec1b092089140f00eec2ed
re PR target/71677 (PowerPC ISA 3.0 DImode load/store needs a fix)

2016-06-30  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/71677
* config/rs6000/constraints.md (wY constraint): New constraint to
match the requirements for the LXSD and STXSD instructions.
* config/rs6000/predicates.md (offsettable_mem_14bit_operand): New
predicate to match the requirements for the LXSD and STXSD
instructions.
* config/rs6000/rs6000.md (mov<mode>_hardfloat32, FMOVE64 case):
Use constaint wY for LXSD/STXSD instructions instead of 'o' or 'Y'
to make sure that the bottom 2 bits of offset are 0, the address
form is offsettable, and no updating is done in the address mode.
(mov<mode>_hardfloat64, FMOVE64 case): Likewise.
(movdi_internal32): Likewise
(movdi_internal64): Likewise.

From-SVN: r237898
gcc/ChangeLog
gcc/config/rs6000/constraints.md
gcc/config/rs6000/predicates.md
gcc/config/rs6000/rs6000.md