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]

What does this character mean in DLX's md file?


I've been studying DLX's md file for GCC. I have a question about the following lines in this
file, 

;;
;; Float compares.
;; The RTL for these is also generated in
;; gen_conditional_branch().
;;

(define_insn ""
  [(set (match_operand:CCFP 0 "register_operand" "=z")
        (match_operator:SF 1 "signed_comparison_operator"
         [(match_operand:SF 2 "register_operand" "f")
          (match_operand:SF 3 "register_operand" "f")]))]
  ""
  "%C1f\\t%2,%3"
  [(set_attr "type" "fp")
   (set_attr "mode" "SF")])

This pattern outputs float compare instruction. "%C" in the output template is defined in dlx.c to
be one of eq, ne, gt, lt, le and neq. DLX's assembly code for float compare has the format of "*f
op1, op2", where * is to be substituted by eq, ne, gt, ....  I don't know the meaning of the
numeric character "1" between "%C" and "f" in the output template.

Attached is DLX's md file.


	

	
		
___________________________________________________________ 
雅虎1G免费邮箱百分百防垃圾信 
http://cn.mail.yahoo.com/

Attachment: DLX.rar
Description: 2680642989-DLX.rar


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