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: rtx structure


On 01 Nov 2006 08:14:36 -0800, Ian Lance Taylor <iant@google.com> wrote:
"Bharati Bhole" <bharati.bhole@gmail.com> writes:

> I am not able to understand the structure of rtx_def fully its too complicated.
> Could anybody please guide me. Its defined in rtl.h.
> struct rtx_def GTY((chain_next ("RTX_NEXT (&%h)"),
>                     chain_prev ("RTX_PREV (&%h)")))
> {
>    ENUM_BITFIELD(rtx_code) code: 16;
>   ENUM_BITFIELD(machine_mode) mode : 8;
>   unsigned int jump : 1;
>   unsigned int call : 1;
>   unsigned int unchanging : 1;
>   unsigned int volatil : 1;
>   unsigned int in_struct : 1;
>    unsigned int used : 1;
>   unsigned frame_related : 1;
>   unsigned return_val : 1;
>   union u {
>     rtunion fld[1];
>     HOST_WIDE_INT hwint[1];
>   } GTY ((special ("rtx_def"), desc ("GET_CODE (&%0)"))) u;
> };

What is your specific question?

The GTY construct is documented in gcc/doc/gty.texi.  Everything else
is pretty standard.  You can find the definition of ENUM_BITFIELD by
using grep.

Ian


I want to know what part of rtx each field in this structure stores. While tracing through gdb i tried to print the rtx, and i was not able to understand that. Could u please explain me it with a sample RTX that what value these fields have.

Bharati.


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