This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Machine Description File help
- From: yoshi ge <moriandiz at yahoo dot co dot in>
- To: gcc at gcc dot gnu dot org
- Date: Mon, 8 Jul 2002 11:10:07 +0100 (BST)
- Subject: Machine Description File help
Dear All,
Anybody is there to help me to understand the
following from i386.md. Please don't tell me to read
online doc. To understand that I must do a lot of hard
work. If anybody explains me the following I will be
able to understand the online docs.
Regards,
Moriz
/****************************************************
(define_attr "memory" "none,load,store,both,unknown"
(cond [(eq_attr "type" "other,multi,str")
(const_string "unknown")
(eq_attr "type" "lea,fcmov,fpspc,cld")
(const_string "none")
(eq_attr "type" "push")
(if_then_else (match_operand 1 "memory_operand"
"")
(const_string "both")
(const_string "store"))
(eq_attr "type" "pop,setcc")
(if_then_else (match_operand 0 "memory_operand"
"")
(const_string "both")
(const_string "load"))
(eq_attr "type" "icmp,test")
(if_then_else (ior (match_operand 0
"memory_operand" "")
(match_operand 1 "memory_operand" ""))
(const_string "load")
(const_string "none"))
(eq_attr "type" "ibr")
(if_then_else (match_operand 0 "memory_operand"
"")
(const_string "load")
(const_string "none"))
(eq_attr "type" "call")
(if_then_else (match_operand 0
"constant_call_address_operand" "")
(const_string "none")
(const_string "load"))
(eq_attr "type" "callv")
(if_then_else (match_operand 1
"constant_call_address_operand" "")
(const_string "none")
(const_string "load"))
(and (eq_attr "type" "alu1,negnot")
(match_operand 1 "memory_operand" ""))
(const_string "both")
(and (match_operand 0 "memory_operand" "")
(match_operand 1 "memory_operand" ""))
(const_string "both")
(match_operand 0 "memory_operand" "")
(const_string "store")
(match_operand 1 "memory_operand" "")
(const_string "load")
(and (eq_attr "type"
"!icmp,test,alu1,negnot,fop1,fsgn,imov,imovx,fmov,fcmp,sse,mmx")
(match_operand 2 "memory_operand" ""))
(const_string "load")
(and (eq_attr "type" "icmov")
(match_operand 3 "memory_operand" ""))
(const_string "load")
]
(const_string "none")))
/**************************************************
________________________________________________________________________
Want to sell your car? advertise on Yahoo Autos Classifieds. It's Free!!
visit http://in.autos.yahoo.com