Bharati Bhole writes: > On 11/2/06, Andrew Haley <aph@xxxxxxxxxx> wrote: > > Bharati Bhole writes: > > > On 11/2/06, Daniel Berlin <dberlin@xxxxxxxxxxx> wrote: > > > > > 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. > > > > > > > > > > > > > The macros used to access the rtl fields in rtl.h explain what part of > > > > each field they access and what they treat that object as. > > > > > > > > The definitions of rtl in rtl.def define what each portion of a piece > > > > of valid RTL is structured as. > > > > > Bharati. > > > > > > > > > > > > > > > I have gone through the structure but i still dont get it. > > > Could anybody please tell me, if the following insn is a sample insn, > > > how will the rtx structure look like - > > > (define_insn "subsi3_carry_zext" > > > [(set (match_operand:DI 0 "register_operand" "=rm,r") > > > (zero_extend:DI > > > (minus:SI (match_operand:SI 1 "register_operand" "0,0") > > > (plus:SI (match_operand:SI 3 > > > "ix86_carry_flag_operator" "") > > > (match_operand:SI 2 "general_operand" "ri,rm"))))) > > > (clobber (reg:CC FLAGS_REG))] > > > "TARGET_64BIT && ix86_binary_operator_ok (MINUS, SImode, operands)" > > > "sbb{l}\t{%2, %k0|%k0, %2}" > > > [(set_attr "type" "alu") > > > (set_attr "pent_pair" "pu") > > > (set_attr "mode" "SI")]) > > > > But this isn't a simple insn, it's a machine description pattern. > > These are described in Section 13, Machine Descriptions. > Yes, this is a machine description pattern. In the genrecog.c file the > .md file is read and from each insn the RTL template is filled in the > RTX structure. So i want to know that how this insn ie the RTL teplate > from this insn will be filled in the RTX structure. I mean what part > of the template, each field of RTX structure will store? Could anybody > please tell me that? Possibly, but it would be better for you to find out for yourself. Have you tried putting a breakpoint on make_insn_raw ? Andrew.