gcc internals question
Spundun Bhatt
spundun@ISI.EDU
Thu Feb 13 02:30:00 GMT 2003
Hi
I have 2 questions about my gcc port to a new architecture.
when giving an rtl dump.... gcc uses symbols like mem/f mem/s... as in
the next question's dump. What does the /s and /f mean?
My gcc is giving me ICE with an error for the following template.
bash-2.05b$ ./xgcc -B./ -c tmp.c
bash-2.05b$ ./xgcc -B./ -mstrict-align -c tmp.c
tmp.c: In function `read_pointer':
tmp.c:9: Internal compiler error:
tmp.c:9: internal error--unrecognizable insn:
(insn 14 13 15 (set (reg:SI 120)
(mem/s:SI (and:SI (reg:SI 117)
(const_int -4 [0xfffffffc])) 0)) -1 (nil)
(nil))
Notice that it didnt give error when compiled without -mstrict-aligne.
Anyway, I dont understand exactly why I get this error. Can anybody give
an explanation? I think I have some regular define_insn for "SI mem
move",and "SI and" placed properly. I thought gcc will automatically
disintegrate this insn into 2 and use those tmplates. (Ofcourse it will
have to move the const int -4 to a register).
I just dont know how to dif in to this error and I am completely stuck.
Does this give you any more information than its giving me?
Thanx a lot
Spundun
More information about the Gcc
mailing list