[LLVMbugs] [Bug 623] NEW: request for -malloc2alloca optimization pass

Robert L. Bocchino Jr. bocchino at uiuc.edu
Tue Aug 30 15:01:15 PDT 2005


The heap2stack pass is not currently part of mainline LLVM; it's in my 
tree.  If you are interested in the pass, I can tar it up and send it 
to you with instructions on how to install and use it.

I'd also be interested in seeing how the pass works on Python.  One 
reason I haven't checked in the pass yet is that it's hard to test (and 
isn't all that useful) for C/C++, which is mostly what LLVM supports 
today.  It would be more useful for languages like Python and Java 
(when we have a working Java frontend).


On Aug 30, 2005, at 8:55 AM, Vikram S. Adve wrote:

> Rob Bocchino has already written such a pass -- perhaps he can tell 
> you more about how to use it.  It relies on an experimental pointer 
> and escape analysis called DSA (analyze -tddatastructure) so please 
> check results carefully.
> --Vikram
> http://www.cs.uiuc.edu/~vadve
> http://llvm.cs.uiuc.edu/
> Begin forwarded message:
>> From: bugzilla-daemon at cs.uiuc.edu
>> Date: August 30, 2005 6:22:38 AM CDT
>> To: llvmbugs at cs.uiuc.edu
>> Subject: [LLVMbugs] [Bug 623] NEW: request for -malloc2alloca 
>> optimization pass
>> http://llvm.cs.uiuc.edu/bugs/show_bug.cgi?id=623
>>            Summary: request for -malloc2alloca optimization pass
>>            Product: tools
>>            Version: trunk
>>           Platform: PC
>>         OS/Version: Linux
>>             Status: NEW
>>           Severity: enhancement
>>           Priority: P2
>>          Component: opt
>>         AssignedTo: unassignedbugs at nondot.org
>>         ReportedBy: eric at vanrietpaap.nl
>> If such an optimization pass would do escape analysis pypy-llvm might 
>> be able to
>> use a lot less malloc. These are currently in pypy-llvm costly 
>> becausewe use the
>> Boehm garbage collector that obviously need to do more that a normal 
>> malloc and
>> free.
>> Because the actual Boehm malloc is called GC_malloc this would need 
>> to be an
>> alias of malloc. In general it would be nice to be able tell the 
>> optimizers
>> about aliases of known functions (could that be useful for 
>> simplify-libcalls
>> translations, just guessing here). Or maybe this is already possible 
>> by
>> implementing an internal malloc in the .ll file. Not sure here, will 
>> have to try
>> that later.
>> [If part two makes sence then this enhancement request should have 
>> been split]
>> ------- You are receiving this mail because: -------
>> You are on the CC list for the bug, or are watching someone who is.
>> _______________________________________________
>> LLVMbugs mailing list
>> LLVMbugs at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs
Robert L. Bocchino Jr.
Ph.D. Student, Computer Science
University of Illinois, Urbana-Champaign
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/enriched
Size: 2677 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20050830/faade7c2/attachment.bin>

More information about the llvm-bugs mailing list