Fix PR ada/43096
Eric Botcazou
ebotcazou@adacore.com
Sat Feb 27 00:07:00 GMT 2010
This is the failure of a couple of ACATS tests at -O2, visible in the results
on some platforms (arm-linux, sparc-linux, powerpc-linux) but generic under
the hood. The problem comes again from a bad interaction between the new
alias analysis code, in particular aliasing_component_refs_p, and some Ada
constructs. The core code expects a strong relationship between types that
can alias each other (same TYPE_CANONICAL) whereas the Ada types only have a
weaker one (same alias set).
The fix is a middle-ground solution that instructs same_type_for_tbaa to
return -1 (don't know) in this case. Tested on x86_64-suse-linux, pre-
approved by Richard in the audit trail, applied on the mainline.
2010-02-26 Eric Botcazou <ebotcazou@adacore.com>
PR ada/43096
* tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
the same alias set.
--
Eric Botcazou
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr43096.diff
Type: text/x-diff
Size: 1513 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20100227/b65aba26/attachment.bin>
More information about the Gcc-patches
mailing list