First Last Prev Next    No search results available
Details
: [asmwriter] Asmwriter is really slow for functions with l...
Bug#: 422
: libraries
: Core LLVM classes
Status: RESOLVED
Resolution: FIXED
: All
: All
: 1.3
: P2
: normal
: 1.4

:
: quality-of-implementation, regression
:
:
  Show dependency tree - Show dependency graph
People
Reporter: Chris Lattner <sabre@nondot.org>
Assigned To: Reid Spencer <rspencer@reidspencer.com>

Attachments
testcase that is really slow (125.22 KB, application/octet-stream)
2004-08-15 16:38, Chris Lattner
Details


Note

You need to log in before you can comment on or make changes to this bug.

Related actions


Description:   Opened: 2004-08-15 16:37
It looks like one of the changes to the asmwriter made it recompute the
slotmachine for every value that needs a slot number.  If that is ALL values, we
spend lots of time computing SlotTable objects, only to throw them away.

The AsmWriter used to create the slot table once and use it.  The fact that it
does not anymore is a major regression from LLVM 1.2.

I'm attaching a testcase (from Marek Materzok) that takes minutes to disassemble.

-Chris
------- Comment #1 From Chris Lattner 2004-08-15 16:38:26 -------
Created an attachment (id=166) [details]
testcase that is really slow
------- Comment #2 From Reid Spencer 2004-08-16 02:26:20 -------
Mine. Confirmed. I'll look at it this week, its kinda complicated :)
------- Comment #3 From Reid Spencer 2004-08-16 02:50:58 -------
Turns out it wasn't all that complicated. The patch below corrects the problem.
Not sure how this slipped through the cracks but thanks go to Marek for finding
this and providing a test case.

http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20040816/017195.html

Patch passes 100% of Feature and Regression tests.

Test Results:

/usr/bin/time llvm-dis slow.bc -f
0.53user 0.01system 0:00.54elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (770major+767minor)pagefaults 0swaps

(slow.bc is the test case attached to this report)

First Last Prev Next    No search results available