This is the mail archive of the gcc-help@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: [gimple] temporary variable


charfi asma <charfiasma@yahoo.fr> writes:

> when generating gimple using gcc 4.4.2 from 
>
> int a =5;
> int b=10;
> if (a++ +b != 0)
> return 0;
> else
> return 1;
>
> we obtain this code
>
> int a;
> int b;
> a = 5;
> b = 10;
> D.1715 = a + b;
> retval.0 = D.1715 != 0;
> a = a + 1;
> if (retval.0 != 0) goto <D.1716>; else goto <D.1717>;
> ....
>
> why retval.0 is added ? why we do not produce if (D.1715 !=0) directly ?

For a more precise answer it would help if you give a complete test
case and tell us which dump you are looking at.

In general GIMPLE is generated without optimizations.  The expectation
is that future optimizations will clean up any issues.  In other
words, nobody really pays attentions to details like whether another
variable is introduced early in the process.

Ian


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