[Bug target/71201] New: PowerPC XXPERM instruction fails on ISA 3.0 system.
meissner at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu May 19 14:47:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71201
Bug ID: 71201
Summary: PowerPC XXPERM instruction fails on ISA 3.0 system.
Product: gcc
Version: 6.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: meissner at gcc dot gnu.org
Target Milestone: ---
GCC 6.1 added support for the XXPERM instruction for the PowerPC ISA 3.0. The
XXPERM instruction is essentially a 4 operand instruction, with only 3 operands
in the instruction (the target register overlaps with the first input
register). The Power9 hardware has fusion support where if the instruction
that precedes the XXPERM is a XXLOR move instruction to set the first input
argument, it is fused with the XXPERM. I added code to support this fusion.
Unfortunately, in running the testsuite on the power9 simulator, we discovered
that the test gcc.c-torture/execute/pr56866.c would fail because the fusion
alternatives confused the register allocator and/or the passes after the
register allocator.
More information about the Gcc-bugs
mailing list