search for: wideniv

Displaying 3 results from an estimated 3 matches for "wideniv".

Did you mean: wideiv
2016 Apr 20
2
[IndVarSimplify] Narrow IV's are not eliminated resulting in inefficient code
...IR is shown in the attached file 'bad.ir'. This happens because IndVarSimplify fails to eliminate '%idxprom7' and '%idxprom10'. The clang command line we use: clang++ -mllvm -debug -S -emit-llvm -O3 --target=aarch64-linux-elf indvar_test.cpp -o bad.ir I found that 'WidenIV::widenIVUse' (IndVarSimplify.cpp) may fail to widen narrow IV uses. When the function gets a NarrowUse such as '{(-2 + %inc.lcssa),+,1}<nsw><%for.body3>', it first tries to get a wide recurrence for it via the 'getWideRecurrence' call. 'getWideRecurrence' re...
2018 Feb 07
0
retpoline mitigation and 6.0
...st*) /home/dwmw2/git/llvm/lib/Analysis/ScalarEvolution.cpp:9110:0 #10 0x0000000002f5f6d1 llvm::ScalarEvolution::isKnownPredicate(llvm::CmpInst::Predicate, llvm::SCEV const*, llvm::SCEV const*) /home/dwmw2/git/llvm/lib/Analysis/ScalarEvolution.cpp:8672:0 #11 0x0000000003a40edf (anonymous namespace)::WidenIV::pushNarrowIVUsers(llvm::Instruction*, llvm::Instruction*) /home/dwmw2/git/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp:1510:0 #12 0x0000000003a415f4 (anonymous namespace)::WidenIV::createWideIV(llvm::SCEVExpander&) /home/dwmw2/git/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp:1621:0 #13 0x000...
2018 Feb 07
6
retpoline mitigation and 6.0
I've landed the patch in r324449. Before we merge this into two different Clang release branches and almost immediately release one of them, I would really like someone to confirm that this patch works well with the Linux kernel. David, if you're up for that, it would be great. Alternatively, Guenter or someone else here can help. On Tue, Feb 6, 2018 at 5:59 PM Chandler Carruth