search for: getpointer

Displaying 20 results from an estimated 32 matches for "getpointer".

2018 Jan 24
2
[llvm] r322838 - [ADT] Split optional to only include copy mechanics and dtor for non-trivial types.
...onal &O) : hasVal(O.hasVal) { > + OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); > } > + OptionalStorage(const OptionalStorage &O) : hasVal(O.hasVal) { > if (hasVal) > - new (storage.buffer) T(*O); > + new (storage.buffer) T(*O.getPointer()); > } > - > - Optional(T &&y) : hasVal(true) { new (storage.buffer) > T(std::forward<T>(y)); } > - > - Optional(Optional<T> &&O) : hasVal(O) { > - if (O) { > - new (storage.buffer) T(std::move(*O)); > + OptionalStorage(T &&a...
2018 Jan 24
0
[llvm] r322838 - [ADT] Split optional to only include copy mechanics and dtor for non-trivial types.
...hasVal) { >> + OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); >> } >> + OptionalStorage(const OptionalStorage &O) : hasVal(O.hasVal) { >> if (hasVal) >> - new (storage.buffer) T(*O); >> + new (storage.buffer) T(*O.getPointer()); >> } >> - >> - Optional(T &&y) : hasVal(true) { new (storage.buffer) >> T(std::forward<T>(y)); } >> - >> - Optional(Optional<T> &&O) : hasVal(O) { >> - if (O) { >> - new (storage.buffer) T(std::move(*O)); &...
2018 Jan 24
1
[llvm] r322838 - [ADT] Split optional to only include copy mechanics and dtor for non-trivial types.
...Storage(const T &y) : hasVal(true) { new (storage.buffer) > T(y); > >> } > >> + OptionalStorage(const OptionalStorage &O) : hasVal(O.hasVal) { > >> if (hasVal) > >> - new (storage.buffer) T(*O); > >> + new (storage.buffer) T(*O.getPointer()); > >> } > >> - > >> - Optional(T &&y) : hasVal(true) { new (storage.buffer) > >> T(std::forward<T>(y)); } > >> - > >> - Optional(Optional<T> &&O) : hasVal(O) { > >> - if (O) { > >> -...
2011 Nov 11
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...bias Grosser wrote: >>>> On 11/08/2011 11:29 PM, Hal Finkel wrote: Talking about this I >>>> looked again into ScalarEvolution. >>>> >>>> To analyze a load, you would do: >>>> >>>> LoadInst *Load = ... Value *Pointer = Load->getPointer(); const >>>> SCEV *PointerSCEV = SE->getSCEV(Pointer); const SCEVUnknown >>>> *PointerBase = >>>> dyn_cast<SCEVUnknown>(SE->getPointerBase(PointerSCEV)); >>>> >>>> if (!PointerBase) return 'Analysis failed' >>&gt...
2011 Nov 11
2
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
..., Tobias Grosser wrote: > >> On 11/08/2011 11:29 PM, Hal Finkel wrote: > >> Talking about this I looked again into ScalarEvolution. > >> > >> To analyze a load, you would do: > >> > >> LoadInst *Load = ... > >> Value *Pointer = Load->getPointer(); > >> const SCEV *PointerSCEV = SE->getSCEV(Pointer); > >> const SCEVUnknown *PointerBase = > >> dyn_cast<SCEVUnknown>(SE->getPointerBase(PointerSCEV)); > >> > >> if (!PointerBase) > >> return 'Analysis failed' > &g...
2014 Dec 19
2
[LLVMdev] [Patches][RFC] What to do about bitcode streaming.
...t;It might be even possible to drop the requirement for the size to be known: Replace the call to AtEndOfStream by just trying to read more and checking if it failed, but that is a bit more than I wanted to do for this." That is to remove some calls to getSize()? Is there any expectation that getPointer() will always a pointer within a contiguous region of memory? That is, getPointer() is non-virtual and always refers to the Data field, but the overriding implementation could still dynamically grow some buffer and change Data to point to a new buffer (could that be "protected" instead?)?...
2011 Nov 11
2
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...t create > any vector instructions. I also played a little with the vectorizer > options, but was not able to get this example vectorized. Is this > because the chain is too short? > > >>> One problem with the current implementation is that it relies on > >>> GetPointerBaseWithConstantOffset to determine if two loads or stores > >>> share the same base address. This fails with partially-unrolled loops > >>> because it cannot "undo" all of the additions to the offset induction > >>> variable in order to understand that...
2011 Nov 11
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...; On Thu, 2011-11-10 at 23:07 +0100, Tobias Grosser wrote: >> On 11/08/2011 11:29 PM, Hal Finkel wrote: >> Talking about this I looked again into ScalarEvolution. >> >> To analyze a load, you would do: >> >> LoadInst *Load = ... >> Value *Pointer = Load->getPointer(); >> const SCEV *PointerSCEV = SE->getSCEV(Pointer); >> const SCEVUnknown *PointerBase = >> dyn_cast<SCEVUnknown>(SE->getPointerBase(PointerSCEV)); >> >> if (!PointerBase) >> return 'Analysis failed' >> >> const Value *BaseVa...
2014 Dec 19
2
[LLVMdev] [Patches][RFC] What to do about bitcode streaming.
Hi Rafael, Would you mind waiting for Derek to come back from vacation to discuss this? We do use this code and could improve how it's used and tested within LLVM. Derek is the best person to discuss this, he'll be back in mid-January. Thanks, JF On Fri, Dec 19, 2014 at 6:41 AM, Rafael Espíndola < rafael.espindola at gmail.com> wrote: > > > I CC'ed llvmdev to put a
2018 May 22
2
DSE: Remove useless stores between malloc & memset
Full stack trace: opt: /home/xbolva00/LLVM/llvm/include/llvm/ADT/Optional.h:176: T* llvm::Optional<T>::getPointer() [with T = llvm::MemoryLocation]: Assertion `Storage.hasVal' failed. Stack dump: 0. Program arguments: opt aaa.ll -dse -S 1. Running pass 'Function Pass Manager' on module 'aaa.ll'. 2. Running pass 'Dead Store Elimination' on function '@calloc_strlen' LLVMSymbol...
2011 Nov 15
3
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...gt;>> On 11/08/2011 11:29 PM, Hal Finkel wrote: Talking about this I > >>>> looked again into ScalarEvolution. > >>>> > >>>> To analyze a load, you would do: > >>>> > >>>> LoadInst *Load = ... Value *Pointer = Load->getPointer(); const > >>>> SCEV *PointerSCEV = SE->getSCEV(Pointer); const SCEVUnknown > >>>> *PointerBase = > >>>> dyn_cast<SCEVUnknown>(SE->getPointerBase(PointerSCEV)); > >>>> > >>>> if (!PointerBase) return 'Analysi...
2011 Nov 10
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...-O3 -vectorize on it, does not create any vector instructions. I also played a little with the vectorizer options, but was not able to get this example vectorized. Is this because the chain is too short? >>> One problem with the current implementation is that it relies on >>> GetPointerBaseWithConstantOffset to determine if two loads or stores >>> share the same base address. This fails with partially-unrolled loops >>> because it cannot "undo" all of the additions to the offset induction >>> variable in order to understand that some of the loa...
2018 May 22
0
DSE: Remove useless stores between malloc & memset
...ut nothing for CallInst. Any suggestions how to do a proper one? I will look at it too. 2018-05-22 23:34 GMT+02:00 Dávid Bolvanský <david.bolvansky at gmail.com>: > Full stack trace: > > opt: /home/xbolva00/LLVM/llvm/include/llvm/ADT/Optional.h:176: T* > llvm::Optional<T>::getPointer() [with T = llvm::MemoryLocation]: > Assertion `Storage.hasVal' failed. > Stack dump: > 0. Program arguments: opt aaa.ll -dse -S > 1. Running pass 'Function Pass Manager' on module 'aaa.ll'. > 2. Running pass 'Dead Store Elimination' on function '@call...
2018 May 22
2
DSE: Remove useless stores between malloc & memset
...stions how to do a proper one? I will > look at it too. > > 2018-05-22 23:34 GMT+02:00 Dávid Bolvanský <david.bolvansky at gmail.com>: > >> Full stack trace: >> >> opt: /home/xbolva00/LLVM/llvm/include/llvm/ADT/Optional.h:176: T* >> llvm::Optional<T>::getPointer() [with T = llvm::MemoryLocation]: >> Assertion `Storage.hasVal' failed. >> Stack dump: >> 0. Program arguments: opt aaa.ll -dse -S >> 1. Running pass 'Function Pass Manager' on module 'aaa.ll'. >> 2. Running pass 'Dead Store Elimination' on...
2018 May 22
2
DSE: Remove useless stores between malloc & memset
...0 Dávid Bolvanský > <david.bolvansky at gmail.com <mailto:david.bolvansky at gmail.com>>: > > Full stack trace: > > opt: > /home/xbolva00/LLVM/llvm/include/llvm/ADT/Optional.h:176: > T* llvm::Optional<T>::getPointer() [with T = > llvm::MemoryLocation]: Assertion `Storage.hasVal' failed. > Stack dump: > 0.Program arguments: opt aaa.ll -dse -S > 1.Running pass 'Function Pass Manager' on module 'aaa.ll'. > 2.Running pas...
2018 May 22
2
DSE: Remove useless stores between malloc & memset
...) but still asserting... 2018-05-22 23:06 GMT+02:00 Dávid Bolvanský <david.bolvansky at gmail.com>: > Can you help a bit? > > I try to work with DSE but I got the following assert: > opt: /home/xbolva00/LLVM/llvm/include/llvm/ADT/Optional.h:176: T* > llvm::Optional<T>::getPointer() [with T = llvm::MemoryLocation]: > Assertion `Storage.hasVal' failed. > > static bool eliminateStrlen(CallInst *CI, BasicBlock::iterator &BBI, > AliasAnalysis *AA, MemoryDependenceResults *MD, > const DataLayout &D...
2018 May 22
0
DSE: Remove useless stores between malloc & memset
...will >> look at it too. >> >> 2018-05-22 23:34 GMT+02:00 Dávid Bolvanský <david.bolvansky at gmail.com>: >> >>> Full stack trace: >>> >>> opt: /home/xbolva00/LLVM/llvm/include/llvm/ADT/Optional.h:176: T* >>> llvm::Optional<T>::getPointer() [with T = llvm::MemoryLocation]: >>> Assertion `Storage.hasVal' failed. >>> Stack dump: >>> 0. Program arguments: opt aaa.ll -dse -S >>> 1. Running pass 'Function Pass Manager' on module 'aaa.ll'. >>> 2. Running pass 'Dead Store...
2018 May 22
0
DSE: Remove useless stores between malloc & memset
...o. >>> >>> 2018-05-22 23:34 GMT+02:00 Dávid Bolvanský <david.bolvansky at gmail.com>: >>> >>>> Full stack trace: >>>> >>>> opt: /home/xbolva00/LLVM/llvm/include/llvm/ADT/Optional.h:176: T* >>>> llvm::Optional<T>::getPointer() [with T = llvm::MemoryLocation]: >>>> Assertion `Storage.hasVal' failed. >>>> Stack dump: >>>> 0. Program arguments: opt aaa.ll -dse -S >>>> 1. Running pass 'Function Pass Manager' on module 'aaa.ll'. >>>> 2. Running...
2018 May 22
0
DSE: Remove useless stores between malloc & memset
...<david.bolvansky at gmail.com > <mailto:david.bolvansky at gmail.com>>: > > Can you help a bit? > > I try to work with DSE but I got the following assert: > opt: /home/xbolva00/LLVM/llvm/include/llvm/ADT/Optional.h:176: T* > llvm::Optional<T>::getPointer() [with T = llvm::MemoryLocation]: > Assertion `Storage.hasVal' failed. > > static bool eliminateStrlen(CallInst *CI, BasicBlock::iterator &BBI, > AliasAnalysis *AA, MemoryDependenceResults *MD, > const...
2019 Sep 03
2
SourceMgr vs EXPENSIVE_CHECKS
...5: In file included from /home/jayfoad2/git/llvm-project/llvm/include/llvm/Support/SourceMgr.h:20: In file included from /home/jayfoad2/git/llvm-project/llvm/include/llvm/ADT/PointerUnion.h:18: /home/jayfoad2/git/llvm-project/llvm/include/llvm/ADT/PointerIntPair.h:58:47: error: no member named 'getPointer' in 'llvm::PointerIntPairInfo<void *, 2, llvm::pointer_union_detail::PointerUnionUIntTraits<std::__debug::vector<unsigned char, std::allocator<unsigned char> > *, std::__debug::vector<unsigned short, std::allocator<unsigned short> > *, std::__debug::vector<u...