Displaying 13 results from an estimated 13 matches for "md_tbaa".
2016 Nov 02
2
RFC: Drop support for old style scalar TBAA
In https://reviews.llvm.org/D26229 I've proposed dropping support for
old style scalar TBAA metadata.
Here is the proposed commit message:
"We've had support for auto upgrading old style scalar TBAA access
metadata into the "new" struct path aware TBAA metadata for 3 years now.
The only way to actually generate old style TBAA was explicitly through
the IRBuilder API. I
2013 Aug 12
0
[LLVMdev] Address space extension
...based on physical address spaces and create a
> "MemorySpaceAliasAnalysis" for those case where source language level
> information may help, right?
I was looking to the AliasAnalysis infrastructure and TBAA implementation
details. The only metadata kind currently supported is the MD_tbaa, in fact
AliasAnalysis::Location has exactly one field for the TBAA tag.
I think that deciding the aliasing based on the address space should happen
before considering type informations, so the TBAA extension would not be a
general solution.
Actually how a new independent alias analysis based on...
2013 Aug 12
2
[LLVMdev] Address space extension
...aces and
> create a
> > "MemorySpaceAliasAnalysis" for those case where source language level
> > information may help, right?
>
> I was looking to the AliasAnalysis infrastructure and TBAA implementation
> details. The only metadata kind currently supported is the MD_tbaa, in fact
> AliasAnalysis::Location has exactly one field for the TBAA tag.
>
> I think that deciding the aliasing based on the address space should happen
> before considering type informations, so the TBAA extension would not be a
> general solution.
>
I could see this going eit...
2013 Aug 12
1
[LLVMdev] Address space extension
On Mon, Aug 12, 2013 at 1:37 PM, Michele Scandale <
michele.scandale at gmail.com> wrote:
> > I don't think you need to change any of the existing MDNode's or AA
> passes. TBAA adds metadata because that information isn't in the IR
> itself, but your IR has the address spaces.
> >
> > Shouldn't the address space of the pointer and some additional
2016 Nov 08
2
RFC: Drop support for old style scalar TBAA
...gt; metadata representation and don't have an intermediate IR or
> bitcode parsing step that would have auto-upgraded the IR. In this
> case, the quickest way to keep your frontend working with the new
> representation is to change
>
> I->setMetadata(LLVMContext::MD_tbaa, MD);
>
> to
>
> I->setMetadata(LLVMContext::MD_tbaa, llvm::UpgradeTBAANode(*MD));
>
> llvm::UpgradeTBAA is present on tip-of-tree. If your version of
> LLVM is too old to have that utility then copy/pasting it in from
> tip-of-tree into your code base sho...
2013 Aug 12
0
[LLVMdev] Address space extension
...ate a
> > "MemorySpaceAliasAnalysis" for those case where source language level
> > information may help, right?
>
> I was looking to the AliasAnalysis infrastructure and TBAA implementation
> details. The only metadata kind currently supported is the MD_tbaa, in fact
> AliasAnalysis::Location has exactly one field for the TBAA tag.
>
> I think that deciding the aliasing based on the address space should happen
> before considering type informations, so the TBAA extension would not be a
> general solution.
>
>
>...
2013 Aug 11
2
[LLVMdev] Address space extension
On 08/11/2013 10:38 PM, Justin Holewinski wrote:
> On Sun, Aug 11, 2013 at 5:49 AM, Michele Scandale <michele.scandale at gmail.com
> <mailto:michele.scandale at gmail.com>> wrote:
>
> On 08/11/2013 08:41 AM, Micah Villmow wrote:
> > How about this as a solution.
> >
> > Add one hook into TargetInstrInfo, and one into TargetISelLowering.
2013 Aug 12
2
[LLVMdev] Address space extension
...orySpaceAliasAnalysis" for those case where source language
> level
> > > information may help, right?
> >
> > I was looking to the AliasAnalysis infrastructure and TBAA
> implementation
> > details. The only metadata kind currently supported is the MD_tbaa,
> in fact
> > AliasAnalysis::Location has exactly one field for the TBAA tag.
> >
> > I think that deciding the aliasing based on the address space should
> happen
> > before considering type informations, so the TBAA extension would
> not be a
> >...
2013 Aug 12
0
[LLVMdev] Address space extension
...ceAliasAnalysis" for those case where source language level
> > > information may help, right?
> >
> > I was looking to the AliasAnalysis infrastructure and TBAA implementation
> > details. The only metadata kind currently supported is the MD_tbaa, in
> fact
> > AliasAnalysis::Location has exactly one field for the TBAA tag.
> >
> > I think that deciding the aliasing based on the address space should
> happen
> > before considering type informations, so the TBAA extension woul...
2019 Apr 19
2
Question: How to access c++ vtable pointer to use as Value* in LLVM pass
...if the struct object is from a derived
class; iterating over the struct again, it looks like the vtable ptr
is tangled even deeper within the object:
%class.Base.base = type <{i32 (...)**, i32 }>
i32
I looked at the ThreadSanitizer.cpp pass for inspiration, and it seems
they are also using MD_tbaa as hints for whether a load/store
isVTableAccess(), but doesn't need the Value. Maybe MDNode metadata
could be of use here?
TLDR: How can I leverage a Value that is of StructType generated from
a C++ object to get its vtable ptr in LLVM to use as a Value for a
to-be-inserted function call??
T...
2013 Aug 12
2
[LLVMdev] Address space extension
...;MemorySpaceAliasAnalysis" for those case where source language level
>>>> information may help, right?
>>>
>>> I was looking to the AliasAnalysis infrastructure and TBAA implementation
>>> details. The only metadata kind currently supported is the MD_tbaa, in
>> fact
>>> AliasAnalysis::Location has exactly one field for the TBAA tag.
>>>
>>> I think that deciding the aliasing based on the address space should
>> happen
>>> before considering type informations, so the TBAA extension woul...
2016 Jul 20
2
load instruction erroneously removed by GVN v2
before inlining
all 20005
after inlining
somewhere here changed made it NoAlias
after Global Variable Optimizer
20014
20373 20255
20372 20254
before GVN
19993
20011 19991
20010 20030
It appears that TBAA metadata certainly changed after inlining and
subsequent passes. I have attached the .bc file. I think I will try to dump
out more TBAA metadata between passes. The method in
2018 May 19
2
tbaa error: Access type node must be a valid scalar type
Hi
I am upgrading my clang fork from 5.0 to 6.0 and I am hit by this error:
Access type node must be a valid scalar type
%4 = load %"struct.Foo::p.test1::"*, %"struct.Foo::p.test1::"**
%_param.addr, align 8, !tbaa !16
!16 = !{!15, !15, i64 0}
!15 = !{!"p.test1::", !13, i64 0, !13, i64 8}
It looks like !16 is referencing !15, which is a struct. !13 is
!13 =