[LLVMbugs] [Bug 181] NEW: C++ front-end has a very inefficient implementation of the LLVM type-system
bugzilla-daemon at zion.cs.uiuc.edu
bugzilla-daemon at zion.cs.uiuc.edu
Sat Dec 13 21:09:02 PST 2003
http://llvm.cs.uiuc.edu/bugs/show_bug.cgi?id=181
Summary: C++ front-end has a very inefficient implementation of
the LLVM type-system
Product: tools
Version: 1.0
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: llvm-g++
AssignedTo: sabre at nondot.org
ReportedBy: sabre at nondot.org
I tried compiling "Gerald's testcase" from:
http://gcc.gnu.org/PR?8361
The LLVM optimizer is _incredibly_ more efficient than the GCC optimizer,
especially the tree-ssa one, but the LLVM C++-Frontend is very slow. I built a
profiled version of the C++ front-end and ran it on the testcase. This is the
profile I got:
time seconds seconds calls s/call s/call name
86.53 130.81 130.81 1771685490 0.00 0.00 llvm_type_is_deep_equal
3.50 136.10 5.29 382442 0.00 0.00
llvm_type_get_cannonical_version
1.17 137.86 1.77 15010941 0.00 0.00 DeleteFunctionOnlyEntries
1.13 139.57 1.71 1359 0.00 0.00 llvm_type_print_struct_expand
0.65 140.55 0.98 348 0.00 0.00 llvm_type_create_opaque
0.61 141.47 0.92 7599 0.00 0.00 llvm_expand_function_start
Looking kinda fishy. Perhaps I should actually use a hash-table in the
C-Frontend. Hrm. :) I wish GCC wasn't GPL'd so that I didn't have to
reinvent VMCore in the C front-end.
-Chris
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
More information about the llvm-bugs
mailing list