[Bug tree-optimization/52445] [4.6/4.7 Regression] conditional store replacement causes segfault in generated code
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Mar 1 09:15:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52445
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-03-01 09:14:42 UTC ---
The quick fix that would IMHO brings us back to pre-161655 decisions would be
just to store also the offset and size into the hash table entries and use them
as a requirement for the lookups. I think that would essentially map to what
we did before. A better, but more complicated, change, would be to only keep
using ssa_name and store as lookup criteria as we do right now, add a linked
list of offset/sizes and consider non-trapping stores if the [offset,
offset+size) interval is subset of the non-trapping bytes. This would be able
to optimize even the cases where say there are is a larger store (or several
smaller stores) that cover the area. We might need to prune the chains in
nt_fini_block though.
Richard, do you think for 4.7.0/4.6.4 just implementing the simpler approach
would be fine?
More information about the Gcc-bugs
mailing list