similar to: [LLVMdev] AliasAnalysis refactoring for the new pass manager

Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] AliasAnalysis refactoring for the new pass manager"

2015 Jun 15
2
[LLVMdev] AliasAnalysis refactoring for the new pass manager
> On 2015-Jun-13, at 09:12, David Blaikie <dblaikie at gmail.com> wrote: > > > > On Sat, Jun 13, 2015 at 12:52 AM, Chandler Carruth <chandlerc at gmail.com> wrote: > Greetings all, > > I'm working on refactoring the alias analysis layers to remove the usage of analysis groups and make the logic sharable between old and new pass managers, and I have a
2009 Nov 06
2
[LLVMdev] Functions: sret and readnone
Hi Stephan, > intrinsic float4 sample(int tex, float2 tc); > > float4 main(int tex, float2 tc) > { > float4 x = sample(tex, tc); > return 0.0; > } without additional information it would be wrong to remove the call to sample because it might write to a global variable. > As you can see, the call to the sample function is still present, > although the actual value
2015 Dec 03
3
Function attributes for LibFunc and its impact on GlobalsAA
----- Original Message ----- > From: "James Molloy via llvm-dev" <llvm-dev at lists.llvm.org> > To: "Vaivaswatha Nagaraj" <vn at compilertree.com> > Cc: "LLVM Dev" <llvm-dev at lists.llvm.org> > Sent: Thursday, December 3, 2015 4:41:46 AM > Subject: Re: [llvm-dev] Function attributes for LibFunc and its impact on GlobalsAA > >
2015 Jun 16
2
[LLVMdev] AliasAnalysis refactoring for the new pass manager
> On 2015-Jun-15, at 16:29, Chandler Carruth <chandlerc at gmail.com> wrote: > > On Mon, Jun 15, 2015 at 3:56 PM Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote: > I like this colour: > > enum class AliasKind /* or AliasCategory? */ { > Null, > Unknown, > Partial, > Complete > }; > > So, the only
2006 May 15
0
[LLVMdev] Re: __main() function and AliasSet
On Mon, 15 May 2006, Nai Xia wrote: > In other words, if I only use -steens-aa and the data_XXXs are all > external global variables( and so inComplete ), Sounds right! > the call to printf will > make the same effect, which I have tested it. > > Am I right ? :) If you've tested it then, yes you're right :). I haven't played with this stuff for a long time,
2011 Jul 21
1
[LLVMdev] AA bug?
I was reading the code in AliasAnalysis.cpp and happened to notice what looks like a bug. See the line marked by '*' below: AliasAnalysis::ModRefResult AliasAnalysis::getModRefInfo(const VAArgInst *V, const Location &Loc) { // If the va_arg address cannot alias the pointer in question, then the // specified memory cannot be accessed by the va_arg. if (!alias(getLocation(V),
2017 Oct 10
2
Expose aliasing information in getModRefInfo (or viceversa?)
> > Sigh > I should have taken the time to give a better example. > The must-alias part is irrelevant to an example (it only requires > read-onlyness) > > You said "LICM doesn't move calls, so we'd never really care about > must-alias for promotion". I was just pointing out other things move calls > any may want to know. > > If you want an example
2018 Jun 20
2
adding 2 new functions to the AliasAnalysis interface
Hi, RFC Im adding 2 new functions to the AliasAnalysis interface: 1) ModRefSameBufferCheck: this function will receive 2 memoryLocation as parameters, and returns true if the parameters are modifying or refering the same buffer or same memory block, false otherwise. 2) getAddressesDistance: the function will recieve 2 memoryLocation, if they are mod/ref-ing the same buffer/memory block, the
2017 Oct 10
4
Expose aliasing information in getModRefInfo (or viceversa?)
On Tue, Oct 10, 2017 at 1:05 PM, Hal Finkel <hfinkel at anl.gov> wrote: > > On 10/10/2017 02:49 PM, Alina Sbirlea wrote: > > Sigh >> I should have taken the time to give a better example. >> The must-alias part is irrelevant to an example (it only requires >> read-onlyness) >> >> You said "LICM doesn't move calls, so we'd never really
2006 May 15
2
[LLVMdev] Re: __main() function and AliasSet
Hi Chris, I took a haste look at the "Points-to Analysis in Almost Linear Time" by Steens , your PHD thesis and SteensGaard.cpp in LLVM this afternoon. So I think: 1. Actually the basic algorithm described originally by SteensGaard does not provide MOD/REF information for functions. 2. The context insensitive part of Data Structure Analysis (LocalAnalysis) can be deemed as an
2017 Jul 16
2
PartialAlias: different start addresses
On Sun, Jul 16, 2017 at 2:34 PM, Nuno Lopes <nunoplopes at sapo.pt> wrote: > On Sun, Jul 16, 2017, 12:45 PM Nuno Lopes wrote: >>> >>>> On 07/15/2017 04:51 AM, Nuno Lopes wrote: >>>> >>>>> On 07/14/2017 04:37 PM, Nuno Lopes wrote: >>>>>> >>>>>>> Thank you all for your replies.
2010 May 26
2
[LLVMdev] AliasAnalysis as a Loadable Module, Possible 2.6->2.7 issue
Hi all, First time posting to llvmdev, be gentle :). I'm working on an AliasAnalysis implementation and running into an issue on 2.7, that doesn't exist in 2.6 as far as I can tell. Short version: has anyone been able to load an AliasAnalysis module into 2.7's opt? Longer version: Even with a dummy pass implementation (just returns MayAlias for everything), I'm getting very
2017 Nov 28
1
Expose aliasing information in getModRefInfo (or viceversa?)
> In your new proposal, doing & on the result of getModRef() may yield unexpected results. Agreed. I made the change I proposed locally, and, while it simplifies some cases, it makes other bit-wise operations look unintuitive. > Maybe we should just hide all that in inline functions or something and make it an enum class Noted, and looking into this option. Hoping a couple of static
2017 Oct 10
2
Expose aliasing information in getModRefInfo (or viceversa?)
I'm trying to understand what is the result we'd seek in the example in D38569 (pasting here for quick access) double f(double a) { double b; double c,d; double (*fp) (double) __attribute__ ((const)); /* Partially redundant call */ if (a < 2.0) { fp = sin; c = fp (a); } else { c = 1.0; fp = cos; } d = fp (a);
2016 Aug 29
2
GVN / Alias Analysis issue with llvm.masked.scatter/gather intrinsics
this is definitely a bug in AA. 225 for (auto I = CS2.arg_begin(), E = CS2.arg_end(); I != E; ++I) { 226 const Value *Arg = *I; 227 if (!Arg->getType()->isPointerTy()) -> 228 continue; 229 unsigned CS2ArgIdx = std::distance(CS2.arg_begin(), I); 230 auto CS2ArgLoc = MemoryLocation::getForArgument(CS2, CS2ArgIdx, TLI);
2015 Jun 14
2
[LLVMdev] Expressing ambiguous points-to info in AliasAnalysis::alias(...) results?
Hi all, I'm playing around with implementing an existing non-LLVM AA algorithm as an LLVM AA pass. I'm looking for suggestions for getting it to fit in AliasAnalysis's worldview, so that it might eventually be a candidate for inclusion in LLVM. The algorithm maintains a may-point-to graph. Unfortunately the algorithm doesn't delete an "A-->B" edge when there's
2010 Jun 29
3
[LLVMdev] Queries of an invalidated AA ModulePass
Hi all, While working on a loadable Alias Analysis module pass, I'm running into the following issue: I'm finding my pass queried for results after it has had 'releaseMemory' called on it and its dependencies, but before runOnModule is called again (on my pass or its deps). As you might expect, this makes my pass rather unhappy (and I think correctly so). This happens with LICM
2017 Oct 10
2
Expose aliasing information in getModRefInfo (or viceversa?)
Yes, this is odd. On my clang.bc Without: 2.2967 ( 53.8%) 0.0242 ( 26.4%) 2.3210 ( 53.2%) 2.3227 ( 53.2%) Memory SSA 2.3364 ( 53.7%) 0.0246 ( 25.7%) 2.3610 ( 53.1%) 2.3636 ( 53.1%) Memory SSA 2.3353 ( 54.0%) 0.0258 ( 27.0%) 2.3611 ( 53.4%) 2.3632 ( 53.3%) Memory SSA With two getModRefInfo calls: 3.0302 ( 58.8%) 0.0328 ( 29.9%) 3.0630 ( 58.2%) 3.0858 ( 58.2%)
2015 Apr 29
2
[LLVMdev] AliasAnalysis calling failed in Pass interaction
Dear LLVM developers, I am Shen, a PhD student at Lehigh Univ. PA. Now I am implementing a Program Dependence Graph(PDG) on LLVM. I have 4 passes here: 1. ProgramDependenceGraph (a *ModulePass *on the highest level) 2. DataDependenceGraph (a Intermediate *FunctionPass*). 3. FlowDependenceAnalysis Pass (a intermediate *FunctionPass*) which uses llvm built-in AliasAnalysis (-basicaa) 4.
2008 Dec 09
1
[LLVMdev] AliasAnalysis tutorial 2
Hi ! In my quest of implementing my own AA, i understood that it doesn't work because i don't use the 'opt' tool but i create my own PassManager (this for other reasons). The problem is the same with other existing AA (AndersensPass or globalModRefPass) : these AApasses are not chained with the basicAA when they are created in PassManager ... So my question is now : how to