This is the mail archive of the gcc-bugs@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]

[Bug tree-optimization/19507] missed tree-optimization


------- Additional Comments From rguenth at tat dot physik dot uni-tuebingen dot de  2005-01-18 20:10 -------
Subject: Re:  missed tree-optimization

pinskia at gcc dot gnu dot org wrote:
> ------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-18 20:06 -------
> (In reply to comment #1)
> 
>>A C testcase with the missing jump threading(?):
>>
>>void bar(void);
>>
>>void foo(const _Bool *flag)
>>{
>>        if (*flag)
>>                bar();
>>        if (*flag)
>>                bar();
>>}
> 
> 
> No this one cannot be optimizated because we can change what is in flag in bar();

I meant this should be transformed to

if (!*flag)
   return;
bar();
if (*flag)
   bar();

this is done at RTL level, but not at tree level.  I should file a 
separate bug for this one, really.

Richard.



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19507


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