search for: preservesall

Displaying 5 results from an estimated 5 matches for "preservesall".

Did you mean: preserve_all
2002 Oct 18
2
[LLVMdev] PassManager and dependencies
I can't seem to figure out how to tell the PassManager that one Pass requires the results of two other Passes, in such a way that it will not crash itself. Attached file is the simplest possible example of Passes A, B, and C, such that C's getAnalysisUsage(AU) method calls AU.addRequired<A>() and AU.addRequired<B>(). When I try to run opt -load ... -opt-c, it tells me:
2002 Oct 20
0
[LLVMdev] PassManager and dependencies
.... You're right, this error message is terrible. As it turns out, all of your passes invalidate all of the other passes, so C doesn't get A (which is invalidated by B). The problem turns out to be a really trivial bug: virtual void getAnalysisUsage(AnalysisUsage& AU) const { AU.preservesAll(); // This is the accessor, not the setter } which should call: AU.setPreservesAll(); On a different subject, I noticed that you tried to optimize out the string overhead for the name() methods: virtual const string& name() const { static string a("B"); return a; } ins...
2002 Oct 20
2
[LLVMdev] PassManager and dependencies
...this error message is terrible. As it turns out, all of >your passes invalidate all of the other passes, so C doesn't get A (which >is invalidated by B). The problem turns out to be a really trivial bug: > > virtual void getAnalysisUsage(AnalysisUsage& AU) const { > AU.preservesAll(); // This is the accessor, not the setter > } > >which should call: > AU.setPreservesAll(); > > Ouch. mea culpa. It would be a good idea for preservesAll and preservesCFG to have the same interface (since I, at least, thought that they did ;) >On a different subjec...
2002 Oct 21
0
[LLVMdev] API Change: AnalysisUsage
This is just a note to mention that I just checked in this change (and fallout from it): http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20021021/000876.html Which renames: AnalysisUsage::preservesAll -> getPreservesAll AnalysisUsage::preservesCFG -> setPreservesCFG to be consistent with the already existing setPreservesAll method. This was a very confusing arrangement that Casey recently pointed out. I fixed all uses of these that are in the CVS repository. When these updates reach...
2016 Jun 20
7
Suggestion / Help regarding new calling convention
Dear Community, To improve current interprocedural register allocation (IPRA) , we have planned to set callee saved registers to none for local functions, currently I am doing it in following way: if (F->hasLocalLinkage() && !F->hasAddressTaken()) { DEBUG(dbgs() << "Function has LocalLinkage \n"); F->setCallingConv(CallingConv::GHC); } but we think threre