[PATCH] D17141: [ARM] Adding IEEE-754 SIMD detection to loop vectorizer

Ashutosh Nema via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 11 21:02:11 PST 2016


ashutosh.nema added a subscriber: ashutosh.nema.
ashutosh.nema added a comment.

Thanks Renato for working on this.


================
Comment at: lib/Transforms/Vectorize/LoopVectorize.cpp:4333
@@ -4302,3 +4332,3 @@
         RecurrenceDescriptor RedDes;
         if (RecurrenceDescriptor::isReductionPHI(Phi, TheLoop, RedDes)) {
           if (RedDes.hasUnsafeAlgebra())
----------------
During ReductionPHI identification it checks floating point min max is only handled 
when ‘no-nans-fp-math’ is ON. Probably this behaviour condition needs to be modified.

RecurrenceDescriptor::InstDesc
RecurrenceDescriptor::isRecurrenceInstr(Instruction *I, RecurrenceKind Kind,
                                        InstDesc &Prev, bool HasFunNoNaNAttr) {
  case Instruction::FCmp:
  case Instruction::ICmp:
  case Instruction::Select:
    if (Kind != RK_IntegerMinMax &&
        (!HasFunNoNaNAttr || Kind != RK_FloatMinMax))
      return InstDesc(false, I);
    return isMinMaxSelectCmpPattern(I, Prev);



Repository:
  rL LLVM

http://reviews.llvm.org/D17141





More information about the llvm-commits mailing list