This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Newbie



If it is possible, I would like to begin with a small project to get
familiar with GCC code. I have been through the "Simple GCC projects"
web page and I would be interested in project such as "Convert
reorg.c to use the flow graph".

Could someone help me to get involved ?

I cannot but reinforce Laurynas' hints. Unfortunately, you picked a rather complicated project, and I'm surprised that it is listed under "simple"! In fact, it would probably be as easy to rewrite reorg.c completely; which is probably not the hardest GCC task on Earth, but not simple either.


You can look also at http://gcc.gnu.org/wiki/Speedup_areas including

* Bitmaps, also called sparse bit sets, are implemented using a linked list with a cache. This is probably not the most time-efficient representation, and it is not unusual for bitmap functions to show up high on the execution profile. Try to understand which bitmaps can be replaced by ebitmaps.

* pointer_set and pointer_map are underused.

* Avoid recursive tree walks

* Rewrite for loops over the linked list of instructions (insns), so that they work on basic blocks and then on the insns for each basic block.

* cxx_binding should be 16 bytes, not 20.

Paolo


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]