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]

Re: warning: source missing a mode?


On Thu, Feb 22, 2007 at 11:10:09AM +0100, Markus Franke wrote:
> ;; calls that return int in r1
> ;;
> (define_insn "call_val_internal_return_r1"
> [(parallel [(set (reg:SI 1)
>                   (call (match_operand:QI 0 "sym_ref_mem_operand" "")

Why would you have a specific pattern for (reg:SI 1) as
the return value?  I suggest you look at other ports for
guidence here.  Normal is something like


(define_insn "*call_value_1"
  [(set (match_operand 0 "" "")
        (call (mem:QI (match_operand:SI 1 "call_insn_operand" "rsm"))
              (match_operand:SI 2 "" "")))]
  ...)

where both the return value and the call have no mode specified.



r~


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