Skip to content

Commit fc4df2c

Browse files
authored
[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.
1 parent 57c1e01 commit fc4df2c

File tree

5 files changed

+15
-0
lines changed

5 files changed

+15
-0
lines changed

clang/test/Headers/mm3dnow.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
// RUN: %clang_cc1 -fsyntax-only -D_CLANG_DISABLE_CRT_DEPRECATION_WARNINGS -ffreestanding %s -verify
33
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -x c++ %s -verify
44

5+
// XFAIL: target=arm64ec-pc-windows-msvc
6+
// These intrinsics are not yet implemented for Arm64EC.
7+
58
#if defined(i386) || defined(__x86_64__)
69
#ifndef _CLANG_DISABLE_CRT_DEPRECATION_WARNINGS
710
// [email protected]:*{{The <mm3dnow.h> header is deprecated}}

clang/test/Headers/pmmintrin.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -x c++ %s -verify
33
// expected-no-diagnostics
44

5+
// XFAIL: target=arm64ec-pc-windows-msvc
6+
// These intrinsics are not yet implemented for Arm64EC.
7+
58
#if defined(i386) || defined(__x86_64__)
69
#include <pmmintrin.h>
710

clang/test/Headers/x86-intrinsics-headers.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -flax-vector-conversions=none %s
33
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -x c++ %s
44

5+
// XFAIL: target=arm64ec-pc-windows-msvc
6+
// These intrinsics are not yet implemented for Arm64EC.
7+
58
#if defined(i386) || defined(__x86_64__)
69

710
#ifdef __SSE4_2__

clang/test/Headers/x86intrin.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@
33
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -x c++ %s -verify
44
// expected-no-diagnostics
55

6+
// XFAIL: target=arm64ec-pc-windows-msvc
7+
// These intrinsics are not yet implemented for Arm64EC.
8+
69
#if defined(i386) || defined(__x86_64__)
710

811
// Include the metaheader that includes all x86 intrinsic headers.

clang/test/Headers/x86intrin.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
// RUN: %clang_cc1 -fsyntax-only -ffreestanding %s -verify
22
// expected-no-diagnostics
33

4+
// XFAIL: target=arm64ec-pc-windows-msvc
5+
// These intrinsics are not yet implemented for Arm64EC.
6+
47
#if defined(i386) || defined(__x86_64__)
58

69
// Include the metaheader that includes all x86 intrinsic headers.

0 commit comments

Comments
 (0)