Ticket #20 (new enhancement)

Opened 3 years ago

Last modified 3 years ago

Optimize ld-tigcc

Reported by: debrouxl Owned by:
Priority: critical Milestone: Version 1.00
Component: toolchain-ld-tigcc Version: 0.96
Keywords: Cc:

Description

ld-tigcc uses linked lists for its internal structures, making their code simpler than if using trees or whatever.

Using linked lists yields acceptably fast linking of small programs on modern computers... but it's VERY slow for linking PedroM + test suite (> 900 KB): more than 7 minutes on PpHd?'s computer. Profiling (  http://www.yaronet.com/posts.php?sl=&s=108648&p=4 ) shows that 90% of the linking time is spent traversing the linked lists...

The best ADT for the job looks like a form of BST that remains well-balanced without too much computational effort, like red-black trees.

Change History

comment:1 Changed 3 years ago by debrouxl

  • Milestone Version 1.00 deleted

comment:2 Changed 3 years ago by godzil

  • Version set to 0.96
  • Milestone set to Version 1.00
Note: See TracTickets for help on using tickets.