This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: A question about RTL output
- From: Ian Lance Taylor <ian at airs dot com>
- To: Eric Fisher <joefoxreal at gmail dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: 23 Oct 2005 22:07:10 -0700
- Subject: Re: A question about RTL output
- References: <d6afecde0510232152p72b543ael@mail.gmail.com>
Eric Fisher <joefoxreal@gmail.com> writes:
> dp-bit.c: In function `__pack_d':
> dp-bit.c:435: error: unrecognizable insn:
> (insn 33 32 34 0 dp-bit.c:167 (set (reg:SI 159)
> (ltu:SI (reg:SI 158 [ <variable>.class ])
> (const_int 2 [0x2]))) -1 (insn_list 32 (nil))
> (nil))
> dp-bit.c:435: internal compiler error: in extract_insn, at recog.c:2083
> Please submit a full bug report,
> with preprocessed source if appropriate.
You have to find out where that instruction came from. gcc doesn't
just make this sort of thing up. It was generated from something in
your backend--a pattern in your .md file or explicit code in your .c
file.
This is done relatively easily in gdb by doing
break make_insn_raw if cfun->emit->x_cur_insn_uid == 33
which should give you the creation of the above insn. Then walk up
the stack to see what called it.
Ian