search for: performpromotion

Displaying 6 results from an estimated 6 matches for "performpromotion".

2007 May 29
4
[LLVMdev] Code generation issues
.../ Utils/PromoteMemoryToRegister.cpp:271 #5 0x08767021 in llvm::PromoteMemToReg (Allocas=@0xbff9c120, ET=@0x8b14c10, DF=@0x8b14d98, AST=0x0) at /home/bram/workspace/svn/aspicere2/trunk/llvm/lib/Transforms/ Utils/PromoteMemoryToRegister.cpp:812 #6 0x08744713 in (anonymous namespace)::SROA::performPromotion (this=0x8b14f38, F=@0x8bc8468) at /home/bram/workspace/svn/aspicere2/trunk/llvm/lib/Transforms/ Scalar/ScalarReplAggregates.cpp:130 #7 0x087445ba in (anonymous namespace)::SROA::runOnFunction (this=0x8b14f38, F=@0x8bc8468) at /home/bram/workspace/svn/aspicere2/trunk/llvm/lib/Transfo...
2012 Jul 07
0
[LLVMdev] Large integers
The Scalar Replacement of Aggregates pass (-scalarrepl) generates these big integers. We recently added a constructor parameter to limit the size of the wide integer loads. -----Original Message----- From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Mario Schwalbe Sent: Saturday, July 07, 2012 22:19 To: llvmdev at cs.uiuc.edu Subject: [LLVMdev] Large
2014 May 15
2
[LLVMdev] SROA is slow when compiling a large basic block
...I'm a bit confused about the cost here. Based on the code, I see us > walking each basic block at most once per alloca. Even at 150K > instructions, I wouldn't expect the loop to take *that* long. How many > allocas are you dealing with? > > I do see an outer loop in SROA::performPromotion. Are you possibly > triggering a large number of iterations there? That would make the inner > loop appear much more expensive. > > The unoptimized bitcode (compiled with clang -O0) has a large number of allocas (over 7000), which I think is also contributing to the long compilation t...
2007 May 29
0
[LLVMdev] Code generation issues
...ToRegister.cpp:271 > #5 0x08767021 in llvm::PromoteMemToReg (Allocas=@0xbff9c120, > ET=@0x8b14c10, DF=@0x8b14d98, AST=0x0) > at /home/bram/workspace/svn/aspicere2/trunk/llvm/lib/Transforms/ > Utils/PromoteMemoryToRegister.cpp:812 > #6 0x08744713 in (anonymous namespace)::SROA::performPromotion > (this=0x8b14f38, F=@0x8bc8468) > at /home/bram/workspace/svn/aspicere2/trunk/llvm/lib/Transforms/ > Scalar/ScalarReplAggregates.cpp:130 > #7 0x087445ba in (anonymous namespace)::SROA::runOnFunction > (this=0x8b14f38, F=@0x8bc8468) > at /home/bram/workspace/svn/aspicer...
2012 Jul 07
2
[LLVMdev] Large integers
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi devs, I'd like to ask for some advise about optimization passes. Which pass might be responsible for this LLVM IR and why? %0 = load i288* bitcast ([9 x i32]* @array to i288*), align 16 %1 = lshr i288 %0, 224 array is just a global constant array of 9 integers and the code only accesses individual elements. The LLVM version is 3.1. Thanks,
2014 May 15
4
[LLVMdev] SROA is slow when compiling a large basic block
I would like to get feedback from the community on how I can speed up the compilation of a function that has one huge basic block consisting of over 150K instructions. It takes about 10 minutes for clang to produce the object file and the function that is taking up the majority of the time is LoadAndStorePromoter::run, which is called when SROA is run: // Otherwise, we have mixed loads and