ZengNan <[EMAIL PROTECTED]> writes: > (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.
It is the operand number which is used to determine what to print for %C. In this case the match_operator:SF, which is operand 1 in the pattern (the 1 appears explicitly above). Ian