[clang] fc4df2c - [win][arm64ec] XFAIL x64 intrinsic tests on Arm64EC (#153474)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Aug 14 15:29:23 PDT 2025
Author: Daniel Paoliello
Date: 2025-08-14T15:29:20-07:00
New Revision: fc4df2c9173a110102005af937a26df7f29d24e1
URL: https://github.com/llvm/llvm-project/commit/fc4df2c9173a110102005af937a26df7f29d24e1
DIFF: https://github.com/llvm/llvm-project/commit/fc4df2c9173a110102005af937a26df7f29d24e1.diff
LOG: [win][arm64ec] XFAIL x64 intrinsic tests on Arm64EC (#153474)
Clang defines the x64 preprocessor macro (`__x86_64__`) when building
Arm64EC, however the tests for x64 built-ins and intrinsics are
currently failing since the relevant functions don't exist, resulting in
errors like:
```
Line 165: invalid conversion between vector type '__v2di' (vector of 2 'long long' values) and integer type 'int' of different size
```
(Clang doesn't know the intrinsics being called, and so treats it like
an undefined function, which makes it assume the return type is `int`)
For now, expect these tests to fail until someone decides to implement
these intrinsics.
Added:
Modified:
clang/test/Headers/mm3dnow.c
clang/test/Headers/pmmintrin.c
clang/test/Headers/x86-intrinsics-headers.c
clang/test/Headers/x86intrin.c
clang/test/Headers/x86intrin.cpp
Removed:
################################################################################
diff --git a/clang/test/Headers/mm3dnow.c b/clang/test/Headers/mm3dnow.c
index a9b6dd88f8034..e45acb12ddbde 100644
--- a/clang/test/Headers/mm3dnow.c
+++ b/clang/test/Headers/mm3dnow.c
@@ -2,6 +2,9 @@
// RUN: %clang_cc1 -fsyntax-only -D_CLANG_DISABLE_CRT_DEPRECATION_WARNINGS -ffreestanding %s -verify
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -x c++ %s -verify
+// XFAIL: target=arm64ec-pc-windows-msvc
+// These intrinsics are not yet implemented for Arm64EC.
+
#if defined(i386) || defined(__x86_64__)
#ifndef _CLANG_DISABLE_CRT_DEPRECATION_WARNINGS
// expected-warning at mm3dnow.h:*{{The <mm3dnow.h> header is deprecated}}
diff --git a/clang/test/Headers/pmmintrin.c b/clang/test/Headers/pmmintrin.c
index 5b7a3a4ef6b9b..776ef75d70c54 100644
--- a/clang/test/Headers/pmmintrin.c
+++ b/clang/test/Headers/pmmintrin.c
@@ -2,6 +2,9 @@
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -x c++ %s -verify
// expected-no-diagnostics
+// XFAIL: target=arm64ec-pc-windows-msvc
+// These intrinsics are not yet implemented for Arm64EC.
+
#if defined(i386) || defined(__x86_64__)
#include <pmmintrin.h>
diff --git a/clang/test/Headers/x86-intrinsics-headers.c b/clang/test/Headers/x86-intrinsics-headers.c
index 59ca354e1160b..dc06cbde0f587 100644
--- a/clang/test/Headers/x86-intrinsics-headers.c
+++ b/clang/test/Headers/x86-intrinsics-headers.c
@@ -2,6 +2,9 @@
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -flax-vector-conversions=none %s
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -x c++ %s
+// XFAIL: target=arm64ec-pc-windows-msvc
+// These intrinsics are not yet implemented for Arm64EC.
+
#if defined(i386) || defined(__x86_64__)
#ifdef __SSE4_2__
diff --git a/clang/test/Headers/x86intrin.c b/clang/test/Headers/x86intrin.c
index 53e369559f408..c01af1a43d1fa 100644
--- a/clang/test/Headers/x86intrin.c
+++ b/clang/test/Headers/x86intrin.c
@@ -3,6 +3,9 @@
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -x c++ %s -verify
// expected-no-diagnostics
+// XFAIL: target=arm64ec-pc-windows-msvc
+// These intrinsics are not yet implemented for Arm64EC.
+
#if defined(i386) || defined(__x86_64__)
// Include the metaheader that includes all x86 intrinsic headers.
diff --git a/clang/test/Headers/x86intrin.cpp b/clang/test/Headers/x86intrin.cpp
index 11d442db3d2c4..6c9baa6fff635 100644
--- a/clang/test/Headers/x86intrin.cpp
+++ b/clang/test/Headers/x86intrin.cpp
@@ -1,6 +1,9 @@
// RUN: %clang_cc1 -fsyntax-only -ffreestanding %s -verify
// expected-no-diagnostics
+// XFAIL: target=arm64ec-pc-windows-msvc
+// These intrinsics are not yet implemented for Arm64EC.
+
#if defined(i386) || defined(__x86_64__)
// Include the metaheader that includes all x86 intrinsic headers.
More information about the cfe-commits
mailing list