This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
(set (reg:SI ) (scratch:SI)) unrecognizable insn
- From: "Kim, Eunchan" <helpbygrace at gmail dot com>
- To: gcc-help at gcc dot gnu dot org
- Date: Sat, 3 Oct 2009 18:03:30 +0900
- Subject: (set (reg:SI ) (scratch:SI)) unrecognizable insn
Hello everyone.
Here is Thanksgiving day. Everyone went to hometown. But still i'm
porting gcc. :(
anyway, while i'm compiling libgcc, i got a error message.
>>-----------
../../../../sdk/gcc-4.3.3/libgcc/../gcc/unwind-dw2.c: In function
‘uw_install_context_1’:
../../../../sdk/gcc-4.3.3/libgcc/../gcc/unwind-dw2.c:1532: error:
unrecognizable insn:
(insn 217 80 81 14
../../../../sdk/gcc-4.3.3/libgcc/../gcc/unwind-dw2.c:1503 (set (reg:SI
1 r1)
(scratch:SI)) -1 (nil))
../../../../sdk/gcc-4.3.3/libgcc/../gcc/unwind-dw2.c:1532: internal
compiler error: in extract_insn, at recog.c:1990
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
--------------<<
the statement is memcpy in unwind-dw2.c:1503
>>------------ unwind-dw2.c:1500-1505
if (dwarf_reg_size_table[i] == sizeof (_Unwind_Word))
{
w = (_Unwind_Internal_Ptr) t;
memcpy (c, &w, sizeof (_Unwind_Word));
}
else
-----------------<<
memcpy is just a function call. so i can not understand why the
compiler try to set some value into register.
Also, i've known that (scratch:m ) is used with clobber RTL. But
scratch is used without (clobber ) in the error message.
Do i specify this RTL into machine description file? or... did i write
something wrong ?
-- Eunchan