Displaying 3 results from an estimated 3 matches for "scevvalue".
2011 Nov 14
1
[LLVMdev] How to make Polly ignore some non-affine memory accesses
...100
> @@ -145,6 +145,8 @@
> /// @return True if the call instruction is valid, false otherwise.
> static bool isValidCallInst(CallInst&CI);
>
> + const Value *GetBaseValue(const SCEV *S) const;
Why is this function needed? For me it looks like it implements
the same as
SCEVValue *Operand = dyn_cast<SCEVValue>(getPointerOperand())
if (!Operand)
return invalid Value;
return Operand->getValue();
> /// @brief Check if a memory access can be part of a Scop.
> ///
> /// @param Inst The instruction accessing the memory.
> --- ./include/polly...
2011 Nov 14
0
[LLVMdev] How to make Polly ignore some non-affine memory accesses
... /// @return True if the call instruction is valid, false otherwise.
>> static bool isValidCallInst(CallInst&CI);
>>
>> + const Value *GetBaseValue(const SCEV *S) const;
>
> Why is this function needed? For me it looks like it implements
> the same as
>
> SCEVValue *Operand = dyn_cast<SCEVValue>(getPointerOperand())
>
> if (!Operand)
> return invalid Value;
>
> return Operand->getValue();
Mmm, about this I think that depends on the fact that I'm still quite
unexperienced on the topic and fail to be "optimal" in doing so...
2011 Nov 02
5
[LLVMdev] How to make Polly ignore some non-affine memory accesses
Mmm I found out a very strange behavior (to me) of the SCEV analysis
of the loop bound of the external loop I posted.
When in ScopDetection it gets the SCEV of the external loop bound in
the "isValidLoop()" function with:
const SCEV *LoopCount = SE->getBackedgeTakenCount(L);
It returns a SCEVCouldNotCompute, but if I change the "if" block
inside the loop from:
if