Hello GCC's people,

        What can you say me about this common WARNING
                in GCC-3.4.6, GCC-4.1-20060414 and GCC-4.2-20060415?

------------------------------------------------------------------------------

GCC-3.4.6:
----------
./genrecog ./config/i386/i386.md > tmp-recog.c
./config/i386/i386.md:16308: warning: operand 1 missing mode?

$ grep -n -A16 -B1 x86_movsicc_0_m1  i386.md
16307-
16308:(define_insn "x86_movsicc_0_m1"
16309-  [(set (match_operand:SI 0 "register_operand" "=r")
16310-  (if_then_else:SI (match_operand 1 "ix86_carry_flag_operator" "")
16311-    (const_int -1)
16312-    (const_int 0)))
16313-   (clobber (reg:CC 17))]
16314-  ""
16315-  "sbb{l}\t%0, %0"
16316-  ; Since we don't have the proper number of operands for an alu insn,
16317-  ; fill in all the blanks.
16318-  [(set_attr "type" "alu")
16319-   (set_attr "pent_pair" "pu")
16320-   (set_attr "memory" "none")
16321-   (set_attr "imm_disp" "false")
16322-   (set_attr "mode" "SI")
16323-   (set_attr "length_immediate" "0")])
16324-

------------------------------------------------------------------------------

GCC-4.1-20060414:
-----------------
build/genrecog ../.././gcc/config/i386/i386.md > tmp-recog.c
../.././gcc/config/i386/i386.md:18291: warning: operand 1 missing mode?

$ grep -n -A16 -B1 x86_movsicc_0_m1 i386.md
18290-
18291:(define_insn "x86_movsicc_0_m1"
18292-  [(set (match_operand:SI 0 "register_operand" "=r")
18293-  (if_then_else:SI (match_operand 1 "ix86_carry_flag_operator" "")
18294-    (const_int -1)
18295-    (const_int 0)))
18296-   (clobber (reg:CC FLAGS_REG))]
18297-  ""
18298-  "sbb{l}\t%0, %0"
18299-  ; Since we don't have the proper number of operands for an alu insn,
18300-  ; fill in all the blanks.
18301-  [(set_attr "type" "alu")
18302-   (set_attr "pent_pair" "pu")
18303-   (set_attr "memory" "none")
18304-   (set_attr "imm_disp" "false")
18305-   (set_attr "mode" "SI")
18306-   (set_attr "length_immediate" "0")])
18307-

------------------------------------------------------------------------------

GCC-4.2-20060415:
-----------------
build/genrecog ../.././gcc/config/i386/i386.md \
 insn-conditions.md > tmp-recog.c
../.././gcc/config/i386/i386.md:18497: warning: operand 1 missing mode?

$ grep -n -A16 -B1 x86_movsicc_0_m1 i386.md
18496-
18497:(define_insn "x86_movsicc_0_m1"
18498-  [(set (match_operand:SI 0 "register_operand" "=r")
18499-  (if_then_else:SI (match_operand 1 "ix86_carry_flag_operator" "")
18500-    (const_int -1)
18501-    (const_int 0)))
18502-   (clobber (reg:CC FLAGS_REG))]
18503-  ""
18504-  "sbb{l}\t%0, %0"
18505-  ; Since we don't have the proper number of operands for an alu insn,
18506-  ; fill in all the blanks.
18507-  [(set_attr "type" "alu")
18508-   (set_attr "pent_pair" "pu")
18509-   (set_attr "memory" "none")
18510-   (set_attr "imm_disp" "false")
18511-   (set_attr "mode" "SI")
18512-   (set_attr "length_immediate" "0")])
18513-

------------------------------------------------------------------------------

* Difference of x86_movsicc_0_m1 in GCC-3.4.6 vs GCC-4.1-20060414:
    (const_int -1)
    (const_int 0)))
-   (clobber (reg:CC 17))]
+   (clobber (reg:CC FLAGS_REG))]
  ""
  "sbb{l}\t%0, %0"

* Difference of x86_movsicc_0_m1 in GCC-4.1-20060414 vs GCC-4.2-20060415:
 None.

------------------------------------------------------------------------------

I've not probed GCC-3.3.6 and GCC-4.0.3 because i've not time!!!, i'm sorry ;)

                                                Sincerely yours, J.C.


Reply via email to