This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: unrecognizable insn help
- From: Peter Barada <pbarada at mail dot wm dot sps dot mot dot com>
- To: tupshin at tupshin dot com
- Cc: gcc at gnu dot org
- Date: Fri, 28 Feb 2003 10:23:06 -0500
- Subject: Re: unrecognizable insn help
- References: <3E5ED411.3010808@tupshin.com>
>Are there any docs on how to interpret the call_insn that is spewed back
>as in below?
>
>I'm not sure of a reasonable way to debug my md file.
>
>-Tupshin
>
>../../gcc/libgcc2.c: In function `__mulhi3':
>../../gcc/libgcc2.c:365: unrecognizable insn:
>(call_insn/u 26 24 27 (set (reg:SI 0 r0)
> (call (mem:SI (reg/f:SI 34) [0 S4 A32])
> (const_int 0 [0x0]))) -1 (insn_list 25 (nil))
> (expr_list:REG_EH_REGION (const_int -1 [0xffffffff])
> (nil))
> (expr_list (clobber (reg/f:SI 14 sp))
> (nil)))
Well, this looks like RTL to call a function with the function address
located in (reg:SI 34) and returns a value in (reg:SI 0). The
base pattern for this is usually called "call_value". Your best bet
is to debug extract_insn/recog for this particular insn to see why it is
being rejected.
--
Peter Barada Peter dot Barada at motorola dot com
Wizard 781-852-2768 (direct)
WaveMark Solutions(wholly owned by Motorola) 781-270-0193 (fax)