Re: Gimple Statement

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> "Mradul Maheshwari" <mradul@xxxxxxxxxxxxxx> writes:
>
>> I am trying to deduce the original statement from the set of gimple
>> statements. For eg.
>> These statement are in gimple
>>
>> x.0_1 = x;
>>
>> a.1_2 = (int) &a;
>>
>> *x.0_1 = a.1_2;
>>
>> their equivalent statement in c in *x = &a;
>>
>> how can I deduce this statement from these gimple statement?
>
> In what sense do you want to deduce the statement?  If you want to
> deduce precisely "*x = &a", you can't.  GIMPLE does not preserve all the
> information which is in the source code.  There could have been
> temporary variables which have been discarded, or this assignment could
> be part of a conditional or other statement, etc.  But you can see
> pretty clearly that the effect of the three GIMPLE statements you list
> above is indeed *x = &a.
>
> Ian
>
I want to deduce that the effect of these 3 statement is - that in the lhs
we are having x with 1 DEREFERENCING involved and the rhs is 'a' with
ADDRESOF involved. I want to store this information in some data structure
and then print it in a file.
This information precisely means that
-----lhs = x, dereferencing = 1, addressof = 0-----
-----rhs = a, dereferencing = 0, addressof = 1-----

I am trying to use some macros SSA_NAME_DEF_STMT and
SSA_NAME_IMM_USE_NODE. But still not able to figure out how to use them.

Mradul Maheshwari



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux