wxiao3 added inline comments.

================
Comment at: clang/lib/CodeGen/CodeGenFunction.cpp:496
   //    function.
-  CurFn->addFnAttr("min-legal-vector-width", llvm::utostr(LargestVectorWidth));
+  if (LargestVectorWidth)
+    CurFn->addFnAttr("min-legal-vector-width", 
llvm::utostr(LargestVectorWidth));
----------------
lebedev.ri wrote:
> wxiao3 wrote:
> > For x86 backend, "LargestVectorWidth" default value is not zero but 
> > UINT32_MAX.
> > Please refer to: 
> > https://github.com/llvm/llvm-project/blob/main/llvm/lib/Target/X86/X86TargetMachine.cpp#L271
> > Suggest revert this patch since it changes the code generated for x86.
> Reproducer please?
```
$ cat test.c
void foo(float* in, float* __restrict out, int n)
{
    int i;
    for (i = 0; i < n; i++) {
        out[i] = i + 2*in[i];
    }
}
```

Before this patch

```
$ clang -Ofast -march=skylake-avx512 -mllvm -force-vector-width=16 
-mprefer-vector-width=256 -S -o - test.c | grep ymm | wc
     57     333    2687
```

After this patch

```
$ clang -Ofast -march=skylake-avx512 -mllvm -force-vector-width=16 
-mprefer-vector-width=256 -S -o - test.c | grep ymm | wc
      0       0       0
```





Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D97116/new/

https://reviews.llvm.org/D97116

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to