Displaying 20 results from an estimated 198 matches for "passinfo".
2010 Oct 22
0
[LLVMdev] Crash with llc and vector code
...kPass() + 34258
17 llc 0x0000000100872b23 llvm::BasicBlockPass::~BasicBlockPass() + 35027
18 llc 0x0000000100872bbd llvm::BasicBlockPass::~BasicBlockPass() + 35181
19 llc 0x000000010002300a std::_Rb_tree<void const*, std::pair<void const* const, llvm::PassInfo const*>, std::_Select1st<std::pair<void const* const, llvm::PassInfo const*> >, std::less<void const*>, std::allocator<std::pair<void const* const, llvm::PassInfo const*> > >::_M_insert_unique(std::pair<void const* const, llvm::PassInfo const*> const&)...
2010 Oct 22
1
[LLVMdev] Crash with llc and vector code
...kPass() + 34258
17 llc 0x0000000100872b23 llvm::BasicBlockPass::~BasicBlockPass() + 35027
18 llc 0x0000000100872bbd llvm::BasicBlockPass::~BasicBlockPass() + 35181
19 llc 0x000000010002300a std::_Rb_tree<void const*, std::pair<void const* const, llvm::PassInfo const*>, std::_Select1st<std::pair<void const* const, llvm::PassInfo const*> >, std::less<void const*>, std::allocator<std::pair<void const* const, llvm::PassInfo const*> > >::_M_insert_unique(std::pair<void const* const, llvm::PassInfo const*> const&)...
2010 May 18
2
[LLVMdev] Possible memory leak in LLVM 2.5
...nged addAnalysisImplsPair to the following, which seems to have no side effects with what I am doing. Prior to that, AnalysisImpls contained thousands of entries and each time the vector gets realloced to accommodate more entries we lose a bigger chunk of memory.
void addAnalysisImplsPair(const PassInfo *PI, Pass *P) {
for (std::vector<std::pair<const PassInfo*, Pass*> >::iterator I =
AnalysisImpls.begin(); (I!=AnalysisImpls.end()); ++I)
{
if (I->first==PI && I->second==P)
{
// Return, if PassInfo and Pass are already in Analys...
2005 Jul 29
1
[LLVMdev] How to define a pass requiring a register allocation pass?
How to define a MachineFunctionPass requireing one of the register
allocation passes being executed first?
Should there be a PassInfo for register allocation in Pass.h?
Pass.h:
namespace llvm {
extern const PassInfo *PHIEliminationID;
extern const PassInfo *TwoAddressInstructionPassID;
extern const PassInfo *RegisterAllocationPassID; // <--
add this one?
There are four register allocation passes in CodeGe...
2010 Jul 23
1
[LLVMdev] "Cannot call createPass on PassInfo without default ctor!"
While trying to add a pass to the ARM back end I'm getting quite a lot of this assertion failure:
Pass.cpp:255: llvm::Pass* llvm::PassInfo::createPass() const: Assertion `NormalCtor && "Cannot call createPass on PassInfo without default ctor!"' failed.
A simple way to get it is to add two lines to ARMTargetMachine.cpp:
#include "llvm/Transforms/Scalar.h"
and
PM.add(createSinkingPass());
in addIns...
2010 May 18
0
[LLVMdev] Possible memory leak in LLVM 2.5
...ollowing, which seems to have no
> side effects with what I am doing. Prior to that, AnalysisImpls contained
> thousands of entries and each time the vector gets realloced to accommodate
> more entries we lose a bigger chunk of memory.
>
>
>
> void addAnalysisImplsPair(const PassInfo *PI, Pass *P) {
>
> for (std::vector<std::pair<const PassInfo*, Pass*> >::iterator I =
>
> AnalysisImpls.begin(); (I!=AnalysisImpls.end()); ++I)
>
> {
>
> if (I->first==PI && I->second==P)
>
> {
>
> ...
2016 Mar 24
0
Adding PassInfo to PassRegistry
How do i create PassInfo for a Pass and then register it on the PassRegistry?
I need to add TargetLibraryInfoWrapperPass to the registry, because addImmutablePass() function asserts because it doesn't find Info for the pass.
2013 Apr 12
2
[LLVMdev] Runtime exception in DominatorTree.getRootNode()
...lib 0x00007fff90d32cfa _sigtramp + 26
4 libsystem_c.dylib 0xfffffffffffffff8 _sigtramp + 1865208600
5 libsystem_c.dylib 0x00007fff64a41948 _sigtramp + 3553684584
6 libdyld.dylib 0x00007fff8afe2716 dyld_stub_binder_ + 13
7 LLVMSLVN.dylib 0x00000001081a8040 void
std::__destroy_aux<llvm::PassInfo const**>(llvm::PassInfo const**,
llvm::PassInfo const**, std::__true_type) + 19904
8 LLVMSLVN.dylib 0x00000001081998c1 (anonymous
namespace)::DVN::runOnFunction(llvm::Function&) + 65
9 opt 0x0000000105eb27b2
llvm::FPPassManager::runOnFunction(llvm::Function&) + 434
10...
2008 Dec 02
2
[LLVMdev] Error when using getAnalysis
...pass shows an example like what John wrote, calling a function pass within
a module pass on a per function basis. However, if I code it that way, I
still get the same error:
opt: /x/jeffhao/llvm/llvm/include/llvm/PassAnalysisSupport.h:232:
AnalysisType& llvm::Pass::getAnalysisID(const llvm::PassInfo*,
llvm::Function&) [with AnalysisType = llvm::LoopInfo]: Assertion
`ResultPass && "getAnalysis*() called on an analysis that was not "
"'required' by pass!"' failed.
If I remove the addRequired from getAnalysisUsage, I get this error:
opt: /x/jeffhao/ll...
2016 Mar 23
2
Help with pass manager
...ry::getPassRegistry();
if (!RunPass.empty()) {
if (!StartAfter.empty() || !StopAfter.empty()) {
errs() << "start-after and/or stop-after passes are redundant when run-pass is specified.\n";
return 1;
}
const PassInfo *PI = PR->getPassInfo(RunPass);
if (!PI) {
errs() << "run-pass pass is not registered.\n";
return 1;
}
StopAfterID = StartBeforeID = PI->getTypeInfo();
} else {
if (!StartAfter.empty()) {...
2007 Apr 25
2
[LLVMdev] ModulePass that requires FunctionPass
...(anonymous namespace)::PrintStackTrace()+0x1a)[0x86423ca]
opt((anonymous namespace)::SignalHandler(int)+0x110)[0x86426f2]
/lib/tls/libc.so.6[0x683898]
opt(std::vector<llvm::Pass*, std::allocator<llvm::Pass*>
>::begin()+0x19)[0x84e3bb7]
opt(llvm::PMTopLevelManager::findAnalysisPass(llvm::PassInfo
const*)+0x26)[0x85cc88a]
opt(llvm::PMDataManager::findAnalysisPass(llvm::PassInfo const*,
bool)+0xb7)[0x85cc827]
opt(llvm::PMDataManager::initializeAnalysisImpl(llvm::Pass*)+0x96)[0x85cd39e]
opt(llvm::FPPassManager::runOnFunction(llvm::Function&)+0xff)[0x85ce667]
opt(llvm::MPPassManager::getOnT...
2013 Apr 12
2
[LLVMdev] Runtime exception in DominatorTree.getRootNode()
...igtramp + 26
> 4 libsystem_c.dylib 0xfffffffffffffff8 _sigtramp + 1865208600
> 5 libsystem_c.dylib 0x00007fff64a41948 _sigtramp + 3553684584
> 6 libdyld.dylib 0x00007fff8afe2716 dyld_stub_binder_ + 13
> 7 LLVMSLVN.dylib 0x00000001081a8040 void
> std::__destroy_aux<llvm::PassInfo const**>(llvm::PassInfo const**,
> llvm::PassInfo const**, std::__true_type) + 19904
> 8 LLVMSLVN.dylib 0x00000001081998c1 (anonymous
> namespace)::DVN::runOnFunction(llvm::Function&) + 65
> 9 opt 0x0000000105eb27b2
> llvm::FPPassManager::runOnFunction(llvm:...
2008 Nov 30
3
[LLVMdev] Error when using getAnalysis
...}
virtual bool runOnModule(Module &M) {
LoopInfo &LI = getAnalysis<LoopInfo>();
}
I get following error when I try to run my pass :
opt:
/net/hc295/nwarkari/llvm/llvm-2.3/include/llvm/PassAnalysisSupport.h:193:
AnalysisType& llvm::Pass::getAnalysisID(const llvm::PassInfo*) const [with
AnalysisType = llvm::LoopInfo]: Assertion `ResultPass && "getAnalysis*()
called on an analysis that was not " "'required' by pass!"' failed.
opt[0x83cfa9d]
/lib/tls/libc.so.6(abort+0xe9)[0x15d289]
/lib/tls/libc.so.6(__assert_fail+0x101)[0x154da1...
2013 Apr 12
0
[LLVMdev] Runtime exception in DominatorTree.getRootNode()
...gtramp + 26
> 4 libsystem_c.dylib 0xfffffffffffffff8 _sigtramp + 1865208600
> 5 libsystem_c.dylib 0x00007fff64a41948 _sigtramp + 3553684584
> 6 libdyld.dylib 0x00007fff8afe2716 dyld_stub_binder_ + 13
> 7 LLVMSLVN.dylib 0x00000001081a8040 void
> std::__destroy_aux<llvm::PassInfo const**>(llvm::PassInfo const**,
> llvm::PassInfo const**, std::__true_type) + 19904
> 8 LLVMSLVN.dylib 0x00000001081998c1 (anonymous
> namespace)::DVN::runOnFunction(llvm::Function&) + 65
> 9 opt 0x0000000105eb27b2
> llvm::FPPassManager::runOnFunction(ll...
2008 May 05
1
[LLVMdev] LoopInfo::isAnalysis() unused?
...ng at the LoopInfo Analysis pass as an example, and found it
defined the isAnalysis() method to return true. I assumed the method was
overriden from some superclass (Pass, probably) and present in all analysis
passes.
However, a better look turns out that the method isn't really used anywhere.
PassInfo does define the same method which is used, but PassInfo is not a
superclass of LoopInfo. AFAICS, LoopInfo::isAnalysis
(include/llvm/Analysis/LoopInfo.h:924) is unused and can/should be removed?
Removing the method doesn't break compilation for me.
Gr.
Matthijs
-------------- next part ------...
2014 Oct 17
3
[LLVMdev] oprofile support?
...0x00 (No unit mask) count 5000000
samples % image name symbol name
38 57.5758 no-vmlinux /no-vmlinux
2 3.0303 ld-2.19.so _dl_lookup_symbol_x
2 3.0303 libLLVMCore.so
llvm::DenseMapBase<llvm::DenseMap<void const*, llvm::PassInfo const*,
llvm::DenseMapInfo<void const*> >, void const*, llvm::PassInfo const*,
llvm::DenseMapInfo<void const*> >::getHashValue(void const* const&)
2 3.0303 libLLVMCore.so std::vector<llvm::PassInfo
const*, std::allocator<llvm::PassInfo const*> >:...
2009 May 23
0
[LLVMdev] why RegisterPass<TargetData> initialize itself twice in my system
HI, Developers:
I linked libLTO.so in $LLVMROOT/Debug/lib
however, my program crashes in assertion at 149line [Pass.cpp]
void RegisterPass(const PassInfo &PI) {
bool Inserted =
PassInfoMap.insert(std::make_pair(PI.getTypeInfo(),&PI)).second;
assert(Inserted && "Pass registered multiple times!");
}
i confirm that there is only one static variable suspecting to call this
register routine to register "...
2016 Mar 24
2
Help with pass manager
...mpty()) {
>> if (!StartAfter.empty() || !StopAfter.empty()) {
>> errs() << "start-after and/or stop-after passes are redundant when run-pass is specified.\n";
>> return 1;
>> }
>> const PassInfo *PI = PR->getPassInfo(RunPass);
>> if (!PI) {
>> errs() << "run-pass pass is not registered.\n";
>> return 1;
>> }
>> StopAfterID = StartBeforeID = PI->getTypeInfo();
>>...
2015 Feb 24
2
[LLVMdev] Removing contention in PassRegistry accesses to speed up compiles
Hi,
We use LLVM libraries to compile C++ code and noticed slow downs when
multiple threads of a process were compiling at once. *perf *indicated that
most of the CPU time was spent in a spin lock, which was being
locked/unlocked from llvm::PassRegistry::getPassInfo().
We read the relevant LLVM code and found out that PassRegistry is a
ManagedStatic and is shared among all threads in case of a multi-threaded
setup. This sharing requires locking in PassRegistry's method, which
becomes source of the contention. To get rid of the contention, we made a
change...
2006 May 31
0
[LLVMdev] Adding an object to llc (analysis pass)
On Wed, 31 May 2006, Silken Tiger wrote:
>> that requires a BasicBlockPass, it will fail the same was as when a
>> ModulePass requires a FunctionPass.
> void MParSchedule::getAnalysisUsage(AnalysisUsage &AU) const {
> AU.setPreservesAll();
> }
>
> MParSchedule requires nothing and changes nothing. So hopefully the above code
> represents this fact?
Right