Displaying 4 results from an estimated 4 matches for "lhs_byvalarg".
Did you mean:
rhs_byvalarg
2013 Jan 15
2
[LLVMdev] [cfe-dev] no-alias generated as result of restrict function arguments
...lhs_alloca = isa<AllocaInst>(LHSPtr);
+ bool rhs_alloca = isa<AllocaInst>(RHSPtr);
+ bool lhs_global = isa<GlobalValue>(LHSPtr);
+ bool rhs_global = isa<GlobalValue>(RHSPtr);
+
+ bool lhs_noaliasarg = false;
+ bool rhs_noaliasarg = false;
+ bool lhs_byvalarg = false;
+ bool rhs_byvalarg = false;
+ if (const Argument *A = dyn_cast<Argument>(LHSPtr)) {
+ lhs_noaliasarg = A->hasNoAliasAttr();
+ lhs_byvalarg = A->hasByValAttr();
}
+ if (const Argument *A = dyn_cast<Argument>(RHSPtr)) {
+ rhs_noal...
2013 Jan 16
0
[LLVMdev] [cfe-dev] no-alias generated as result of restrict function arguments
...<Argument>(RHSPtr))
- if (LHSInst->getParent()->getParent() == RHSArg->getParent() &&
- Pred == CmpInst::ICMP_EQ)
- return ConstantInt::get(ITy, false);
- }
+ bool lhs_noaliasarg = false;
+ bool rhs_noaliasarg = false;
+ bool lhs_byvalarg = false;
+ bool rhs_byvalarg = false;
+ if (const Argument *A = dyn_cast<Argument>(LHSPtr)) {
+ lhs_noaliasarg = A->hasNoAliasAttr();
+ lhs_byvalarg = A->hasByValAttr();
+ }
+ if (const Argument *A = dyn_cast<Argument>(RHSPtr)) {
+ rhs_noal...
2012 Dec 12
0
[LLVMdev] [cfe-dev] no-alias generated as result of restrict function arguments
On Wed, Dec 12, 2012 at 1:26 PM, Joerg Sonnenberger
<joerg at britannica.bec.de> wrote:
> On Wed, Dec 12, 2012 at 11:01:01AM -0800, Dan Gohman wrote:
>> > Is that
>> > assumption violated if I explicitly cast away const and pass the result
>> > to a function with NoAlias argument?
>>
>> Not immediately, no. It means that you can't access the
2012 Dec 12
3
[LLVMdev] [cfe-dev] no-alias generated as result of restrict function arguments
On Wed, Dec 12, 2012 at 11:01:01AM -0800, Dan Gohman wrote:
> > Is that
> > assumption violated if I explicitly cast away const and pass the result
> > to a function with NoAlias argument?
>
> Not immediately, no. It means that you can't access the constant
> pointer's pointee directly within the noalias argument's scope. Access
> to that object must go