This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Ada bootstrap failure due to loop optimization and builtin_stack_alloc


Hello,

>     I don't quite understand what should be a problem there.  Unless some
>     statement in the example has some hideous semantics I do not
>     understand, the elements to T.7[whatever] are not really accessed in
>     that piece of dump; just the address of the array is taken and the
>     pointer is casted to some different type.  So unless T.10_29 is later
>     dereferenced, I do not see a problem.
> 
> But it is, in the next statement after what I showed.  Here's the full
> executable part of the .t36.dce3 dump of a further cut-down test case.
> What was deleted were the assignments to T.1.

OK; but it does not seem to be related to the builtin_stack_alloc problem.
There is probably a virtual operand for T.0 missing on the __builtin_memcmp
call (which might be some alias analysis problem), but there is nothing
wrong with the ADDR_EXPR.

Zdenek

> <bb 0>:
>   T.0[-2147483648]{lb: -2147483648 sz: 1} = 0;
>   T.0[-2147483647]{lb: -2147483648 sz: 1} = 0;
>   T.3_14 = &T.1[1 ...]{lb: 1 sz: 1};
>   T.4_15 = (boolean[-2147483648 .. -2147483647] *)T.3_14;
>   T.5_16 = __builtin_memcmp (T.4_15, &T.0, 2);
>   if (T.5_16 != 0) goto <L1>; else goto <L3>;
>  
> <L1>:;
>   __gnat_rcheck_16 ("c41203a.adb", 14);
>  
> <L3>:;
>   return;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]