aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorSegher Boessenkool <segher@kernel.crashing.org>2018-09-03 17:51:37 +0200
committerSegher Boessenkool <segher@gcc.gnu.org>2018-09-03 17:51:37 +0200
commit158985b1a59e33d6536cb570bb5fbc9b79c96034 (patch)
tree236dbe0e4087ae8dcce3001fdc7913f5430a9bf8 /gcc
parentd4baef5be801769686d79735f08959c05555ff91 (diff)
downloadgcc-158985b1a59e33d6536cb570bb5fbc9b79c96034.zip
gcc-158985b1a59e33d6536cb570bb5fbc9b79c96034.tar.gz
gcc-158985b1a59e33d6536cb570bb5fbc9b79c96034.tar.bz2
rs6000: lxsdux / stxsdux do not exist
Our md files refer to {l,st}xsd%U<n>x, but no {l,st}xsdux insns exist. This patch removes the update forms. All these use constraint "Z" which does not allow update form, so there is no practical difference. * config/rs6000/rs6000.md (*mov<mode>_hardfloat32): Remove %U from the lxsdx and stxsdx alternatives. (*mov<mode>_hardfloat64): Ditto. * config/rs6000/vsx.md (*vsx_extract_<mode>_store): Ditto. From-SVN: r264064
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/rs6000/rs6000.md8
-rw-r--r--gcc/config/rs6000/vsx.md2
3 files changed, 12 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 981e706..4b5669c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2018-09-03 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/rs6000.md (*mov<mode>_hardfloat32): Remove %U from the
+ lxsdx and stxsdx alternatives.
+ (*mov<mode>_hardfloat64): Ditto.
+ * config/rs6000/vsx.md (*vsx_extract_<mode>_store): Ditto.
+
2018-09-03 Richard Biener <rguenther@suse.de>
PR tree-optimization/87200
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index c4ef878..e40dc42 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -7405,8 +7405,8 @@
fmr %0,%1
lxsd %0,%1
stxsd %1,%0
- lxsd%U1x %x0,%y1
- stxsd%U0x %x1,%y0
+ lxsdx %x0,%y1
+ stxsdx %x1,%y0
xxlor %x0,%x1,%x1
xxlxor %x0,%x0,%x0
#
@@ -7473,8 +7473,8 @@
fmr %0,%1
lxsd %0,%1
stxsd %1,%0
- lxsd%U1x %x0,%y1
- stxsd%U0x %x1,%y0
+ lxsdx %x0,%y1
+ stxsdx %x1,%y0
xxlor %x0,%x1,%x1
xxlxor %x0,%x0,%x0
li %0,0
diff --git a/gcc/config/rs6000/vsx.md b/gcc/config/rs6000/vsx.md
index 89e193a..e296be9 100644
--- a/gcc/config/rs6000/vsx.md
+++ b/gcc/config/rs6000/vsx.md
@@ -3265,7 +3265,7 @@
"VECTOR_MEM_VSX_P (<MODE>mode)"
"@
stfd%U0%X0 %1,%0
- stxsd%U0x %x1,%y0
+ stxsdx %x1,%y0
stxsd %1,%0"
[(set_attr "type" "fpstore")])