This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RFA: performance improvement for PowerPC disassembly
- From: James Lemke <jwlemke at codesourcery dot com>
- To: <binutils at sourceware dot org>
- Date: Wed, 14 Mar 2012 12:09:58 -0400
- Subject: RFA: performance improvement for PowerPC disassembly
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
Attachment:
dis-binutils-contrib-01a.diff
Description: Text document