1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
From acab1a90f931debe3e13dc9dbe6eb11ec2bdf818 Mon Sep 17 00:00:00 2001
From: Jan Beulich <jbeulich@suse.com>
Date: Tue, 24 Sep 2024 14:59:22 +0200
Subject: [PATCH 21/56] x86emul/test: fix build with gas 2.43
Drop explicit {evex} pseudo-prefixes. New gas (validly) complains when
they're used on things other than instructions. Our use was potentially
ahead of macro invocations - see simd.h's "override" macro.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
master commit: 3c09288298af881ea1bb568740deb2d2a06bcd41
master date: 2024-09-06 08:41:18 +0200
---
tools/tests/x86_emulator/simd.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/tools/tests/x86_emulator/simd.c b/tools/tests/x86_emulator/simd.c
index 263cea662d..d68a7364c2 100644
--- a/tools/tests/x86_emulator/simd.c
+++ b/tools/tests/x86_emulator/simd.c
@@ -333,7 +333,7 @@ static inline vec_t movlhps(vec_t x, vec_t y) {
# if FLOAT_SIZE == 4
# define broadcast(x) ({ \
vec_t t_; \
- asm ( "%{evex%} vbroadcastss %1, %0" \
+ asm ( "vbroadcastss %1, %0" \
: "=v" (t_) : "m" (*(float[1]){ x }) ); \
t_; \
})
@@ -401,14 +401,14 @@ static inline vec_t movlhps(vec_t x, vec_t y) {
# if VEC_SIZE >= 32
# define broadcast(x) ({ \
vec_t t_; \
- asm ( "%{evex%} vbroadcastsd %1, %0" : "=v" (t_) \
+ asm ( "vbroadcastsd %1, %0" : "=v" (t_) \
: "m" (*(double[1]){ x }) ); \
t_; \
})
# else
# define broadcast(x) ({ \
vec_t t_; \
- asm ( "%{evex%} vpbroadcastq %1, %0" \
+ asm ( "vpbroadcastq %1, %0" \
: "=v" (t_) : "m" (*(double[1]){ x }) ); \
t_; \
})
@@ -601,7 +601,7 @@ static inline vec_t movlhps(vec_t x, vec_t y) {
# if INT_SIZE == 4 || UINT_SIZE == 4
# define broadcast(x) ({ \
vec_t t_; \
- asm ( "%{evex%} vpbroadcastd %1, %0" \
+ asm ( "vpbroadcastd %1, %0" \
: "=v" (t_) : "m" (*(int[1]){ x }) ); \
t_; \
})
@@ -649,7 +649,7 @@ static inline vec_t movlhps(vec_t x, vec_t y) {
# elif INT_SIZE == 8 || UINT_SIZE == 8
# define broadcast(x) ({ \
vec_t t_; \
- asm ( "%{evex%} vpbroadcastq %1, %0" \
+ asm ( "vpbroadcastq %1, %0" \
: "=v" (t_) : "m" (*(long long[1]){ x }) ); \
t_; \
})
@@ -716,7 +716,7 @@ static inline vec_t movlhps(vec_t x, vec_t y) {
# if INT_SIZE == 1 || UINT_SIZE == 1
# define broadcast(x) ({ \
vec_t t_; \
- asm ( "%{evex%} vpbroadcastb %1, %0" \
+ asm ( "vpbroadcastb %1, %0" \
: "=v" (t_) : "m" (*(char[1]){ x }) ); \
t_; \
})
@@ -745,7 +745,7 @@ static inline vec_t movlhps(vec_t x, vec_t y) {
# elif INT_SIZE == 2 || UINT_SIZE == 2
# define broadcast(x) ({ \
vec_t t_; \
- asm ( "%{evex%} vpbroadcastw %1, %0" \
+ asm ( "vpbroadcastw %1, %0" \
: "=v" (t_) : "m" (*(short[1]){ x }) ); \
t_; \
})
--
2.47.0
|