[PATCH] D46042: Cap vector alignment at 16 for all Darwin platforms

Reid Kleckner via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Jun 4 14:20:17 PDT 2018


rnk added a comment.

This change appears to have caused some blink vector math unit tests to fail on Windows. We are tracking it at https://crbug.com/849251.

It has a pretty small reproducer:

  #include <immintrin.h>
  __m256 loadit(__m256 *p) { return _mm256_loadu_ps((const float *)p); }

Compile for x86_64-windows-msvc with -mavx, and before this change we got this IR: `%0 = load <8 x float>, <8 x float>* %p, align 1`
After we get this IR: `%0 = load <8 x float>, <8 x float>* %p, align 32`

This is surprising. I'll keep debugging.


Repository:
  rC Clang

https://reviews.llvm.org/D46042





More information about the cfe-commits mailing list