search for: ispointertype

Displaying 7 results from an estimated 7 matches for "ispointertype".

Did you mean: ispointerty
2011 Dec 05
0
[LLVMdev] tbaa
...may alias, Mod/Ref Pointers: (i32* %1, 4), (i32* %x, 4), (i32** %p, 8), (i32** %q, 8), (float* %z, 4), (float** %t, 8), (i32* %2, 4) I guess it is because of the way how TBAA alias analysis treats pointers. See file: tools/clang/lib/CodeGen/CodeGenTBAA.cpp, line 147&148 147 if (Ty->isPointerType()) 148 return MetadataCache[Ty] = getTBAAInfoForNamedType("any pointer", 149 getChar()); For any pointer, no matter which object it points to, TBAA will generate the same type of tbaa metadata, which is called "any p...
2011 Dec 05
2
[LLVMdev] tbaa
Duncan Sands <baldrick <at> free.fr> writes: > > Hi Yi, > > > Could anyone tell me how exactly do I use "Type Based Alias Analysis"? > > > > I compiled the C program with Clang, and verified that there is tbaa > > metadata in the IR code. > > > > But then when I use "opt -tbaa input.c.bc -aa-eval" to check the results,
2006 May 17
2
[LLVMdev] Re: __main() function and AliasSet
...>getType(); if (const PointerType *PTy = dyn_cast<PointerType>(ArgTy)) N->mergeTypeInfo(PTy->getElementType(), H.getOffset()); } } for (; AI != E; ++AI) { // printf reads all pointer arguments. if (isPointerType((*AI)->getType())) if (DSNode *N = getValueDest(**AI).getNode()) N->setReadMarker(); } ----------------------------- So from my point of view, the ds-aa thinks "printf reads all pointer arguments", but does not take into account the "%n&...
2006 May 17
0
[LLVMdev] Re: __main() function and AliasSet
...F->getName() == "fprintf" || > F->getName() == "sprintf") { > CallSite::arg_iterator AI = CS.arg_begin(), E = CS.arg_end(); ... > for (; AI != E; ++AI) { > // printf reads all pointer arguments. > if (isPointerType((*AI)->getType())) > if (DSNode *N = getValueDest(**AI).getNode()) > N->setReadMarker(); > } > ----------------------------- > So from my point of view, the ds-aa thinks "printf reads all pointer arguments", Right. > but does...
2011 Dec 06
3
[LLVMdev] tbaa
...i32* %1, 4), > (i32* %x, 4), (i32** %p, 8), (i32** %q, 8), (float* %z, 4), (float** %t, > 8), (i32* %2, 4) > > I guess it is because of the way how TBAA alias analysis treats pointers. > See file: tools/clang/lib/CodeGen/CodeGenTBAA.cpp, line 147&148 > >    147   if (Ty->isPointerType()) >    148     return MetadataCache[Ty] = getTBAAInfoForNamedType("any pointer", >    149                                                        getChar()); > > For any pointer, no matter which object it points to, TBAA will generate > the same type of tbaa metadata, which...
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,
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