Re: Extending machine description for custom processor

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



First of all thank you for response! I gave me some start point and I
was able to investigate GCC a bit more. Now I see, that problem I have
to solve is too complicated to implement it in machine description. I
want to implement new RTL manipulate pass, which will handle it. Short
description of my problem: I have to find all instructions (mostly
move, arithmetic) which use constant numbers and do something with
this constant (copy it to register and execute custom instruction on
it). Sounds easy for the beginning.

I'm reading GCC internal documentations and RTL passes source code to
learn how to do that. I already know, that I'll have to iterate trough
all basic blocks and trough insns inside them to find what I'm looking
for (move, plus, sub etc. rtx expressions).

The problem is that I'm very confused with API for manipulating RTL. I
understand it's internal and unstable, but there's no single header,
which group it. These functions are spread trough many files and it's
almost impossible to get good overview. Another problem is that some
functions are generated during compilation (I only know about
functions for emitting rtx for instructions, are there any other?).

Ok, reading source code is some way to handle it, but GCC is simply
too huge. Maybe somewhere deep inside mailing lists there is some
discussion about internal API? Any document? At least maybe there is
any description of RTL API and how it's divided into multiple files?

I found here (http://gcc.gnu.org/wiki/GettingStarted) promissing link
for generated doxygen reference, but it's broken. Do yopu know any
similar page?

Thanks for help!


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux