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]

Problem in .md(Machine Description) file


Hi,

I have to write a machine description file for a chip.
For that, i am trying to understand the structure and
systex of the machine description file of i386.

My problem is that why a 'define_insn' with a name
that start with '*' is used. Is it used for generating
RTL insn or for other purpose?

for example:
-------------------------------------------------
(define_insn "*cmphi_minus_1"
  [(set (reg 17)
        (compare (minus:HI (match_operand:HI 0
"nonimmediate_operand" "rm,r")
                           (match_operand:HI 1
"general_operand" "ri,mr"))
                 (const_int 0)))]
  "ix86_match_ccmode (insn, CCGOCmode)"
  "cmp{w}\t{%1, %0|%0, %1}"
  [(set_attr "type" "icmp")
   (set_attr "mode" "HI")])
--------------------------------------------------
If it is used to generate RTL insn then what is the
difference between this and 'define_insn' with name
that does not start with '*'.

Waitinf for a prompt reply.
Thanks in advance.


=====
-------------------------------------------------------------------
Nitin Jain,                       
H-8 ,Room No: 24
I.I.T.Bombay, Powai, Mumbai.
Mail-id: nitin-mbm@yahoo.com 
         nitinj@cse.iitb.ac.in
-------------------------------------------------------------------

__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com


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