Files
clang-p2996/clang/test/AST/Interp/vectors.cpp
Timm Bäder b7a93bc1f2 [clang][Interp] Start implementing vector types
Map them to primtive arrays, much like complex types.
2024-04-10 10:45:06 +02:00

23 lines
619 B
C++

// RUN: %clang_cc1 -fexperimental-new-constant-interpreter -verify=expected,both %s
// RUN: %clang_cc1 -verify=ref,both %s
// both-no-diagnostics
typedef int __attribute__((vector_size(16))) VI4;
constexpr VI4 A = {1,2,3,4};
/// From constant-expression-cxx11.cpp
namespace Vector {
typedef int __attribute__((vector_size(16))) VI4;
constexpr VI4 f(int n) {
return VI4 { n * 3, n + 4, n - 5, n / 6 };
}
constexpr auto v1 = f(10);
typedef double __attribute__((vector_size(32))) VD4;
constexpr VD4 g(int n) {
return (VD4) { n / 2.0, n + 1.5, n - 5.4, n * 0.9 };
}
constexpr auto v2 = g(4);
}