search for: getclobber

Displaying 14 results from an estimated 14 matches for "getclobber".

2010 Jul 16
2
[LLVMdev] MemoryDependenceAnalysis Bug or Feature?
...odRef: // If the call has no effect on the queried pointer, just ignore it. continue; case AliasAnalysis::Mod: // If we're in an invariant region, we can ignore calls that ONLY // modify the pointer. if (InvariantTag) continue; return MemDepResult::getClobber(Inst); case AliasAnalysis::Ref: // If the call is known to never store to the pointer, and if this is a // load query, we can safely ignore it (scan past it). if (isLoad) continue; +++ return MemDepResult::getDef(Inst); default: // Otherwise, there...
2010 Jul 18
2
[LLVMdev] MemoryDependenceAnalysis Bug or Feature?
...hy should a read-only call (which yields AliasAnalysis::Ref and is handled in this code fragment) be any different from e.g. a load. Isn't a read-only call effectively just a series of loads from a memory-dependence perspective? In other words, why does this code fragment return MemDepResult::getClobber() instead of MemDepResult::getDef() for a read-only call? On Sat, Jul 17, 2010 at 6:18 PM, Eugene Toder <eltoder at gmail.com> wrote: > Since isLoad == false means we're looking at a store, what this does > is making the store *p depend on the load *p. This is correct -- you >...
2010 Jul 17
0
[LLVMdev] MemoryDependenceAnalysis Bug or Feature?
...as no effect on the queried pointer, just ignore it. >        continue; >      case AliasAnalysis::Mod: >        // If we're in an invariant region, we can ignore calls that ONLY >        // modify the pointer. >        if (InvariantTag) continue; >        return MemDepResult::getClobber(Inst); >      case AliasAnalysis::Ref: >        // If the call is known to never store to the pointer, and if this is > a >        // load query, we can safely ignore it (scan past it). >        if (isLoad) >          continue; > +++    return MemDepResult::getDef(Inst); >  ...
2010 Jul 18
0
[LLVMdev] MemoryDependenceAnalysis Bug or Feature?
...ll (which yields > AliasAnalysis::Ref and is handled in this code fragment) be any different > from e.g. a load.  Isn't a read-only call effectively just a series of loads > from a memory-dependence perspective? > In other words, why does this code fragment return > MemDepResult::getClobber() instead of MemDepResult::getDef() for a read-only > call? > On Sat, Jul 17, 2010 at 6:18 PM, Eugene Toder <eltoder at gmail.com> wrote: >> >> Since isLoad == false means we're looking at a store, what this does >> is making the store *p depend on the load *p. Thi...
2015 Aug 07
2
load instruction erroneously removed by GVN
...if (MR == AliasAnalysis::ModRef) MR = AA->callCapturesBefore(Inst, MemLoc, DT); switch (MR) { case AliasAnalysis::NoModRef: // If the call has no effect on the queried pointer, just ignore it. continue; case AliasAnalysis::Mod: return MemDepResult::getClobber(Inst); case AliasAnalysis::Ref: // If the call is known to never store to the pointer, and if this is a // load query, we can safely ignore it (scan past it). if (isLoad) continue; default: // Otherwise, there is a potential dependence. Return a clob...
2015 Jan 21
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
...9;t know about any > // phi translation that may have happened along the way. > > // If we have a partial alias, then return this as a clobber for > the > // client to handle. > if (R == AliasAnalysis::PartialAlias) > return MemDepResult::getClobber(Inst); > #endif > > > > > > > Conservative new patch attached. > > > > > > > > (Note that i still updated the testcases, because we will *never* be > > able to legally return PartialAlias as they were written) > > > > Yes, sounds goo...
2015 Jan 21
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
...ly, it doesn't know about any > > // phi translation that may have happened along the way. > > > > // If we have a partial alias, then return this as a clobber for the > > // client to handle. > > if (R == AliasAnalysis::PartialAlias) > > return MemDepResult::getClobber(Inst) ; > > #endif > > > > > > > > > > > Conservative new patch attached. > > > > > > > > > > > > (Note that i still updated the testcases, because we will *never* > > > be > > > able to legally return Part...
2015 Aug 18
3
[RFC PATCH 1/2] [clang]: Add AuxAttr support
This patch adds EmitTypeAuxAttribute() function to CGDebugInfo, which allows other parts of clang issue auxiliary information through an enumeration type in Dwarf information. For example, by calling DI->EmitTypeAuxAttribute(type, "ID", 1234); We can get following information in dwarf: <1><3f>: Abbrev Number: 3 (DW_TAG_structure_type) <40> DW_AT_name
2015 Jan 23
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
...t know about any > > // phi translation that may have happened along the way. > > > > // If we have a partial alias, then return this as a clobber for > > the > > // client to handle. > > if (R == AliasAnalysis::PartialAlias) > > return MemDepResult::getClobber(Inst) ; > > #endif > > > > > > > > > > > Conservative new patch attached. > > > > > > > > > > > > (Note that i still updated the testcases, because we will *never* > > > be > > > able to legally...
2015 Jan 20
4
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
So, I can make all these testcases work, but it's a little tricky (it involves tracking some things, like GEP byte range, and then checking bases and using getObjectSize, much like BasicAA does). Because i really don't want to put that much "not well tested" code in a bugfix, and honestly, i'm not sure we will catch any cases here that BasicAA does not, i've attached a
2015 Jan 23
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
...hat may have happened along the way. >>> > >>> > // If we have a partial alias, then return this as a clobber for >>> > the >>> > // client to handle. >>> > if (R == AliasAnalysis::PartialAlias) >>> > return MemDepResult::getClobber(Inst) ; >>> > #endif >>> > >>> > > >>> > > >>> > > Conservative new patch attached. >>> > > >>> > > >>> > > >>> > > (Note that i still updated the testcases, bec...
2015 Jan 23
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
...t know about any > > // phi translation that may have happened along the way. > > > > // If we have a partial alias, then return this as a clobber for > > the > > // client to handle. > > if (R == AliasAnalysis::PartialAlias) > > return MemDepResult::getClobber(Inst) ; > > #endif > > > > > > > > > > > Conservative new patch attached. > > > > > > > > > > > > (Note that i still updated the testcases, because we will *never* > > > be > > > able to legally...
2015 Jan 24
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
...gt; // phi translation that may have happened along the way. > > > > > > // If we have a partial alias, then return this as a clobber for > > > the > > > // client to handle. > > > if (R == AliasAnalysis::PartialAlias) > > > return MemDepResult::getClobber(Inst) ; > > > #endif > > > > > > > > > > > > > > > Conservative new patch attached. > > > > > > > > > > > > > > > > (Note that i still updated the testcases, because we will *never* > > >...
2015 Jan 26
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
...y have happened along the way. > > > > > > > > // If we have a partial alias, then return this as a clobber for > > > > the > > > > // client to handle. > > > > if (R == AliasAnalysis::PartialAlias) > > > > return MemDepResult::getClobber(Inst) ; > > > > #endif > > > > > > > > > > > > > > > > > > > Conservative new patch attached. > > > > > > > > > > > > > > > > > > > > (Note that i still updated the testc...