This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RE: [PATCH] Speed up ld by about 5 times on Windows.
- From: "Sonal Santan" <sonal dot santan at xilinx dot com>
- To: "Nick Clifton" <nickc at redhat dot com>
- Cc: <binutils at sourceware dot org>
- Date: Mon, 24 Jul 2006 10:42:53 -0700
- Subject: RE: [PATCH] Speed up ld by about 5 times on Windows.
Thanks a lot!
Sonal
-----Original Message-----
From: binutils-owner@sourceware.org
[mailto:binutils-owner@sourceware.org] On Behalf Of Nick Clifton
Sent: Sunday, July 23, 2006 8:32 AM
To: Sonal Santan
Cc: binutils@sourceware.org
Subject: Re: [PATCH] Speed up ld by about 5 times on Windows.
Hi Sonal,
> Thanks for trying my patch. I have fixed the regressions seen for ELF
> based toolchains. An updated patch is attached with this mail.
Thanks for submitting this revised patch. I am sorry that it took me so
long to get around to reviewing it.
The revised form of the patch is fine and I have applied to the sources.
I had to make two changes however:
1. In the output_section_callback_fast() function you were declaring
the 'node' and 'tree' variables in the body of the code rather than at
the start of the function. Although GCC does allow this other compilers
do not, and we want the binutils sources to conform to the ISO C90 C
language specification.
2. You did not supply a ChangeLog entry, so I have created one for
you.
Cheers
Nick
ld/ChangeLog
2006-07-23 Sonal Santan <sonal.santan@xilinx.com>
* ldlang.c (lang_section_bst): New structure for sorting
sections
by name.
(wild_sort_fast): New function: Insert a section into a binary
search tree.
(output_section_callback_fast): New function: Store a section in
BST.
(output_section_callback_tree_to_list): New function: Convert a
BST into a list.
(analyze_walk_wild_section_handler): Initialize handler_data
elements.
(wild): If the data is sorted by name use the BST method to sort
the names.