This is the mail archive of the gcc@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 file


Hi,

I have to write a machine description file for a chip.
For that, i am trying to understand the structure and
syntex 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 '*'.

Waiting for a prompt reply.
Thanks in advance.

Nitin
---------------------------
Nitin Jain (H-12/#A-415)
Computer Science and Engg,
IIT BOMBAY,
POWAI, MUMBAI 400076
Phone : 4748 (Lab)
        5608 (Hostel)
---------------------------



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