]> xenbits.xensource.com Git - people/royger/xen.git/commitdiff
x86emul: suppress default test harness build with incapable assembler
authorJan Beulich <jbeulich@suse.com>
Mon, 26 Nov 2018 16:53:51 +0000 (17:53 +0100)
committerJan Beulich <jbeulich@suse.com>
Mon, 26 Nov 2018 16:53:51 +0000 (17:53 +0100)
A top level "make build", as used e.g. by osstest, wants to build all
"all" targets in enabled tools subdirectories, which by default also
includes the emulator test harness. The use of, in particular, {evex}
insn pseudo-prefixes in, again in particular, test_x86_emulator.c causes
this build to fail though when the assembler is not new enough. Take
another big hammer and suppress the default harness build altogether
also when this and other pseudo-prefixes are not supported by the
specified (or defaulted to) assembler.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
tools/tests/x86_emulator/Makefile

index d30639c8008ed74312ceb04394d12502be49832c..e4852e3da76591895e5af1a4d29a69b7c60e839b 100644 (file)
@@ -80,6 +80,10 @@ endef
 
 $(foreach flavor,$(SIMD) $(FMA),$(eval $(call simd-check-cc,$(flavor))))
 
+# Also explicitly check for {evex} pseudo-prefix support, which got introduced
+# only after AVX512F and some of its extensions.
+TARGET-$(shell echo 'asm("{evex} vzeroall");' | $(CC) -x c -c -o /dev/null - || echo y) :=
+
 ifeq ($(TARGET-y),)
 $(warning Test harness not built, use newer compiler than "$(CC)")
 endif