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