diff options
author | Chris Lattner <sabre@nondot.org> | 2003-10-16 16:53:07 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2003-10-16 16:53:07 +0000 |
commit | c3cc71abbcac9a5d172e64002e2262c8f1a41967 (patch) | |
tree | 6d3541b73b92cdd464067268ef1e1974e31e1c97 /lib/Bytecode/Reader/Reader.cpp | |
parent | 202884fd9b575396f7ca220755cc4e3dac9b5a97 (diff) |
Completely rewrite support for the Value::use_* list. Now, all operations on
this list (except use_size()) are constant time. Before the killUse method
(used whenever something stopped using a value) was linear time, and thus
very very slow for large programs.
This speeds GCCAS up _substantially_ on large programs: almost 2x for 176.gcc:
176.gcc: 77.07s -> 37.38s
177.mesa: 7.59s -> 5.57s
252.eon: 21.02s -> 19.52s (*)
253.perlbmk: 11.40s -> 13.05s
254.gap: 7.25s -> 7.42s
252.eon would speed up a whole lot more, but optimization time is being
dominated by the inlining pass, which needs to be fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9160 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Bytecode/Reader/Reader.cpp')
0 files changed, 0 insertions, 0 deletions