[Bug middle-end/70593] [6 Regression] Miscompilation of xen starting with r226901
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Apr 8 09:24:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70593
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |aoliva at gcc dot gnu.org,
| |bernds at gcc dot gnu.org,
| |law at gcc dot gnu.org
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Conflict graph:
After sorting:
Sorted Coalesce list:
(10000, 0) c_2 <-> c_5
(10000, 0) c_2 <-> a_6
(10000, 0) c_5 <-> _7(D)
Partition map
Partition 0 (x_1(D) - 1 )
Partition 1 (c_2 - 2 )
Partition 2 (c_5 - 5 )
Partition 3 (a_6 - 6 )
Partition 4 (_7(D) - 7 )
Coalesce list: (2)c_2 & (5)c_5 [map: 1, 2] : Success -> 1
Coalesce list: (2)c_2 & (6)a_6 [map: 1, 3] : Success -> 1
Coalesce list: (5)c_2 & (7)_7(D) [map: 1, 4] : Success -> 1
After Coalescing:
Partition map
Partition 0 (x_1(D) - 1 )
Partition 1 (c_2 - 2 5 6 7 )
There should be some conflict that a_6 and c_5 can't be in the same partitions,
they are different vars, and used in different asm outputs. But guess what
confuses the coalesce handling is that that have matching constraint and the
same value in those.
Perhaps just build_ssa_conflict_graph isn't ready to handle statements with
multiple SSA_OP_DEFs (where we need to arrange for conflicts in between the
partitions in different outputs)?
More information about the Gcc-bugs
mailing list