July 11, 2020
https://issues.dlang.org/show_bug.cgi?id=21040

          Issue ID: 21040
           Summary: SIMD: illegal instruction using 32-byte operations on
                    AVX
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody@puremagic.com
          Reporter: ibuclaw@gdcproject.org

DMD compiles the following down to the same code for both -mcpu=avx and -mcpu=avx2.

---
long4 v;
v += 1;
---

However this throws an illegal instruction on machines that do not have AVX2 features.

The compiler should have isVectorOpSupported extended to be aware of which CPU feature implemented which vector operation.

--