C API: support scalable vectors
authorCraig Disselkoen <craigdissel@gmail.com>
Wed, 28 Oct 2020 20:48:22 +0000 (16:48 -0400)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Wed, 28 Oct 2020 22:19:34 +0000 (18:19 -0400)
commitc3783847ae67d31aece461458d8510b8bd0469c3
tree946b41208e5f8a566ceb764998c66b94b72eadcc
parent90678f65ae47523586bd34392ed3cd1369cf5e9b
C API: support scalable vectors

This adds support for scalable vector types in the C API and in
llvm-c-test, and also adds a test to ensure that llvm-c-test can properly
roundtrip operations involving scalable vectors.

While creating this diff, I discovered that the C API cannot properly roundtrip
_constant expressions_ involving shufflevector / scalable vectors, but that
seems to be a separate enough issue that I plan to address it in a future diff
(unless reviewers feel it should be addressed here).

Differential Revision: https://reviews.llvm.org/D89816
llvm/include/llvm-c/Core.h
llvm/lib/IR/Core.cpp
llvm/test/Bindings/llvm-c/echo.ll
llvm/tools/llvm-c-test/echo.cpp