This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
learning
- From: David Welch <gcc at dwelch dot com>
- To: gcc at gcc dot gnu dot org
- Date: Fri, 11 Apr 2003 16:25:54 -0600
- Subject: learning
I am trying to learn about GCC internals and have been tinkering with
backends if I could only understand
the RTL a little better. Here is an example:
test.c:10: unrecognizable insn:
(insn 6 5 7 (set (reg/v:SI 23)
(mem/f:SI (reg/f:SI 25) [2 x+0 S4 A32])) -1 (insn_list 5 (nil))
(expr_list:REG_DEAD (reg/f:SI 25)
(nil)))
test.c:10: Internal compiler error in extract_insn, at gcc/recog.c:2148
And I have read the GCC Compiler Collection Internals and yet dont quite
get it. Right now I am trying to understand
GO_IF_LEGITIMATE_ADDRESS and tinkering with it causes all kinds of problems
(as you can imagine)...
Anyway, what do the /v and /f, etc mean in say reg/v:SI? And of course the
big question, what kind of instruction or expression is it looking for
here? Is this a move instruction for a register with offset to register or
something?
Is there something other than the GCCint that I should be reading or
referencing?
Thanks
David