http://llvm.org/bugs/show_bug.cgi?id=15247

            Bug ID: 15247
           Summary: Possible regression of vectorization of Linpack on ARM
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Loop Optimizer
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]
    Classification: Unclassified

Created attachment 10004
  --> http://llvm.org/bugs/attachment.cgi?id=10004&action=edit
result of the runs with clang and GCC

Running Linpack from (http://www.netlib.org/benchmark/linpackc.new) with clang
with and without vectorization, I get 40% of performance boost on Intel but -3%
on ARM.

Looking at the code, the intermixing of ARM and NEON code looks particularly
bad, so it seems some shuffles are not being lowered correctly or are being
generated on a pattern that the back-end instruction combine doesn't recognize.

Nadav said he got 40% boost on ARM too, so this could be a regression, but not
necessarily on the loop vectorizer, since the BB vectorizer uses the same cost
model and is known to abuse of shuffles.

Attached is the CSV with the result of the runs with clang and GCC. The
compilation command lines are below:

GCC:
$ gcc -O3 linpack.c

Clang Vect:
$ clang -O3 linpack.c

Clang No-vect:
$ clang -O3 -fno-vectorize linpack.c

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs

Reply via email to