RFA: performance improvement for PowerPC disassembly
James Lemke
jwlemke@codesourcery.com
Wed Mar 14 16:10:00 GMT 2012
The VLE port caused me to look at performance here. Currently we use a simple
linear search. A binary search seemed like a big change with potential
problems for matching the correct extended mnemonic. Instead, I modified the
existing linear search to start "near" the desired value rather than always at
the beginning of the table. This gives substantial performance gains with
minimal new complexity.
On gcc1-power7.osuosl.org I built powerpc-unknown-linux-gnu with and w/o this
patch.
These are median times:
$ time install/bin/objdump-00 -d /lib/libc.so.6 >/dev/null
real 0m1.539s
user 0m1.529s
sys 0m0.009s
$ time install/bin/objdump-01 -d /lib/libc.so.6 >/dev/null
real 0m0.870s
user 0m0.851s
sys 0m0.007s
Dejagnu test results before and after the patch are identical for gas,
binutils, ld, gcc, g++, and gfortran.
A bootstrap of powerpc-unknown-linux-gnu is running now.
--
Jim Lemke
Mentor Graphics / CodeSourcery
Orillia Ontario, +1-613-963-1073
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: dis-binutils-contrib-01a.diff
URL: <https://sourceware.org/pipermail/binutils/attachments/20120314/f46490f9/attachment.ksh>
More information about the Binutils
mailing list