search for: inductiondescriptor

Displaying 9 results from an estimated 9 matches for "inductiondescriptor".

2016 May 20
5
Working on FP SCEV Analysis
...Chandler says most of Graphics shading language use case mentioned by Owen should be handled here. It certainly has the logic of detecting FP induction, but Andy punted discussions on non-integer valued IV issues to MichaelZ and Adam. 3) extend InductionDescriptor::isInductionPHI in the vectorizer to directly analyze the PHIs without SCEV support (mentioned by Adam) If this is the standard way to deal with all secondary inductions, it certainly looks attractive. Elena, would you try doing this and compare with 1)? Thanks, Hid...
2016 May 19
3
Working on FP SCEV Analysis
> One option would be to extend InductionDescriptor::isInductionPHI in the vectorizer to directly analyze the PHIs without SCEV support as Sanjoy suggested. I *think* that that could be sufficient to handle case B. I implemented this with FP SCEV and the code looks very structured, including SCEVExpander. Extending the existing structures without...
2016 May 20
0
Working on FP SCEV Analysis
...ly need this for *A* not for *B*. On the specific issue of non-integer values, there is simply no attempt made in the code to deal with them. That said, I think it should be possible to compute the trip count and then derive an integer induction variable controlling the loop. > 3) > extend InductionDescriptor::isInductionPHI in the vectorizer to directly analyze the PHIs without SCEV support > (mentioned by Adam) > If this is the standard way to deal with all secondary inductions, it certainly looks attractive. > Elena, would you try doing this and compare with 1...
2016 May 24
1
Working on FP SCEV Analysis
...*B*. > > On the specific issue of non-integer values, there is simply no attempt made > in the code to deal with them. That said, I think it should be possible to > compute the trip count and then derive an integer induction variable > controlling the loop. > > 3) > extend InductionDescriptor::isInductionPHI in the vectorizer to directly > analyze the PHIs without SCEV support > (mentioned by Adam) > If this is the standard way to deal with all secondary > inductions, it certainly looks attractive. > Elena, would you try doing this and comp...
2018 Aug 07
4
Generating a loop from llvm bitcode
...erefore, I am trying to find a way to identify the loop structure and print it out in the backend. So far, the main issue I’ve been having trouble with is identifying the loop induction variable in a straight forward manner; getCanonicalInductionVariable doesn’t always succeed, and I’ve tried using InductionDescriptor, but it fails in cases where the CFG doesn’t include a loop preheader. Also, in both cases, I couldn’t find a direct way of determining the loop exit condition. I am wondering if there are any passes or data structures that would be able to help me accomplish what I am trying to do that I might be...
2016 May 18
4
Working on FP SCEV Analysis
Demikhovsky, Elena wrote: > > Even then, I'd personally want to see further evidence of why the > correct solution is to model the floating point IV in SCEV rather than > find a more powerful way of converting the IV to an integer that models > > the non-integer values taken on by the IV. As an example, if the use > case is the following code with appropriate flags to
2018 Mar 29
0
[RFC] I'd like to move RecurrenceDescriptor and LoopDescriptor in LoopUitls.h/.cpp from Transform/Utils tree to Analysis/Utils tree
...onLegality out of LoopVectorize.cpp in order to make it reusable. For example, other transformations can change the behavior depending on whether the loop is vectorizable or not. Ideally, such analysis type code belongs to Analysis tree. One of the blocking factor is its use of RecurrenceDescriptor/InductionDescriptor, defined in Transform/Utils/LoopUtils.h. Anything I should know before attempting to move those Descriptors under Analysis/Utils? Like known dependencies making them very hard to move to Analysis tree? Recurrence and Inductions are again analysis type stuff. They really belong to Analysis tree, in...
2018 Feb 06
1
6 separate instances of static getPointerOperand(). Time to consolidate?
What LoopVectorize.cpp has are the following. Each function may have to have a separate consolidation discussion. I'm bringing up getpointerOperand() since I actually found multiple instances defined/used. DependenceAnalysis.cpp has isLoadOrStore(). LoopAccessAnalysis.cpp has getAddressSpaceOperand(). I'm sure there are others that might be worth discussing within this thread or a follow
2019 Dec 18
5
RFC: Opaque pointer status and future direction
...SAMD::MetadataStreamerV2::getValueType 36 getBaseAlign 35 getAdjustedPtr 33 llvm::InductionDescriptor::isInductionPHI 32 promoteArguments 29 isSupportedType 28 matchIntrinsicTy...