terralang / terra

Terra is a low-level system programming language that is embedded in and meta-programmed by the Lua programming language.
terralang.org
Other
2.72k stars 201 forks source link

Cannot include immintin.h on LLVM >= 10 #476

Closed elliottslaughter closed 3 years ago

elliottslaughter commented 3 years ago

Submitting this an issue now so that I can keep track of a test failure in LLVM 10 and greater.

./terra tests/expvec.t

results in a lot of spew like:

/usr/include/clang/11.1.0/include/avx512vlbwintrin.h:1897:46: error: passing '__v8hi' (aka 'short') to parameter of incompatible type '__att
ribute__((__vector_size__(8 * sizeof(short)))) short' (vector of 8 'short' values)
                                             (__v8hi)_mm_sllv_epi16(__A, __B),
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I'm turning the test off for now so I can move forward with LLVM 10-11.

elliottslaughter commented 3 years ago

I wonder if this is related to the issue I discovered in https://github.com/terralang/terra/issues/479#issuecomment-782484139. That certainly might explain why basic C header files are suddenly being compiled differently.