[Bug 1837522] Re: GCC Miscompilation of vector shift
Matthias Klose
doko at ubuntu.com
Thu Jul 25 14:10:38 UTC 2019
the fix for GCC 6 may be not needed, as it's not the default compiler in
any supported release. However GCC 5 needs the fix for 18.06 LTS.
** Also affects: gcc-6 (Ubuntu)
Importance: Undecided
Status: New
** Also affects: gcc-5 (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-7 in Ubuntu.
https://bugs.launchpad.net/bugs/1837522
Title:
GCC Miscompilation of vector shift
Status in Ubuntu on IBM z Systems:
Triaged
Status in gcc-5 package in Ubuntu:
New
Status in gcc-6 package in Ubuntu:
New
Status in gcc-7 package in Ubuntu:
New
Status in gcc-8 package in Ubuntu:
New
Bug description:
Vector shift miscompilation
---Steps to Reproduce---
t.c:
__vector int
foo (__vector int a, int s)
{
return a << (s + 3);
}
gcc -O3 -march=z13 t.c -S -mzvector
foo:
veslf %v24,%v24,0(%r2) <---- +3 is omitted
br %r14
Contact Information = andreas.krebbel at de.ibm.com
Userspace tool common name: GCC
The userspace tool has the following bit modes: 64
Backported fix has been applied to GCC 8 branch as r273493:
https://gcc.gnu.org/viewcvs?rev=273493&root=gcc&view=rev
S/390: Fix vector shift count operand
We currently use subst definitions to handle the different variants of shift
count operands. Unfortunately, in the vector shift pattern the shift count
operand is used directly. Without it being adjusted for the 'subst' variants the
displacement value is omitted resulting in a wrong shift count being applied.
This patch needs to be applied to older branches as well.
gcc/ChangeLog:
2019-07-15 Andreas Krebbel <krebbel at linux.ibm.com>
Backport from mainline
2019-07-01 Andreas Krebbel <krebbel at linux.ibm.com>
* config/s390/vector.md: Fix shift count operand printing.
gcc/testsuite/ChangeLog:
2019-07-15 Andreas Krebbel <krebbel at linux.ibm.com>
Backport from mainline
2019-07-01 Andreas Krebbel <krebbel at linux.ibm.com>
* gcc.target/s390/vector/vec-shift-2.c: New test.
Added:
branches/gcc-8-branch/gcc/testsuite/gcc.target/s390/vector/vec-shift-2.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/config/s390/vector.md
branches/gcc-8-branch/gcc/testsuite/ChangeLog
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-z-systems/+bug/1837522/+subscriptions
More information about the foundations-bugs
mailing list