From 9f446d65bd966c199a3b8ff3f39d88c40abf56ca Mon Sep 17 00:00:00 2001 From: Peter Johnson Date: Sat, 18 Oct 2003 01:48:46 +0000 Subject: [PATCH] Fix copy-and-paste error causing xmm9-xmm15 to be unusable. Bugzilla Bug 16 Reported by: Igor Astakhov svn path=/trunk/yasm/; revision=1068 --- modules/arch/x86/tests/Makefile.inc | 3 +++ modules/arch/x86/tests/xmm64.asm | 3 +++ modules/arch/x86/tests/xmm64.errwarn | 0 modules/arch/x86/tests/xmm64.hex | 7 +++++++ modules/arch/x86/x86id.re | 2 +- 5 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 modules/arch/x86/tests/xmm64.asm create mode 100644 modules/arch/x86/tests/xmm64.errwarn create mode 100644 modules/arch/x86/tests/xmm64.hex diff --git a/modules/arch/x86/tests/Makefile.inc b/modules/arch/x86/tests/Makefile.inc index aa5d59db..0aae20c5 100644 --- a/modules/arch/x86/tests/Makefile.inc +++ b/modules/arch/x86/tests/Makefile.inc @@ -104,3 +104,6 @@ EXTRA_DIST += modules/arch/x86/tests/twobytemem.hex EXTRA_DIST += modules/arch/x86/tests/x86label.asm EXTRA_DIST += modules/arch/x86/tests/x86label.errwarn EXTRA_DIST += modules/arch/x86/tests/x86label.hex +EXTRA_DIST += modules/arch/x86/tests/xmm64.asm +EXTRA_DIST += modules/arch/x86/tests/xmm64.errwarn +EXTRA_DIST += modules/arch/x86/tests/xmm64.hex diff --git a/modules/arch/x86/tests/xmm64.asm b/modules/arch/x86/tests/xmm64.asm new file mode 100644 index 00000000..4a963f53 --- /dev/null +++ b/modules/arch/x86/tests/xmm64.asm @@ -0,0 +1,3 @@ +[bits 64] +xorps xmm2, xmm2 +xorps xmm10, xmm10 diff --git a/modules/arch/x86/tests/xmm64.errwarn b/modules/arch/x86/tests/xmm64.errwarn new file mode 100644 index 00000000..e69de29b diff --git a/modules/arch/x86/tests/xmm64.hex b/modules/arch/x86/tests/xmm64.hex new file mode 100644 index 00000000..c387aa22 --- /dev/null +++ b/modules/arch/x86/tests/xmm64.hex @@ -0,0 +1,7 @@ +0f +57 +d2 +45 +0f +57 +d2 diff --git a/modules/arch/x86/x86id.re b/modules/arch/x86/x86id.re index 1724c5a5..7f5cbe64 100644 --- a/modules/arch/x86/x86id.re +++ b/modules/arch/x86/x86id.re @@ -2453,7 +2453,7 @@ yasm_x86__parse_check_id(yasm_arch *arch, unsigned long data[4], N_("`%s' is a register in 64-bit mode"), oid); return YASM_ARCH_CHECK_ID_NONE; } - data[0] = X86_REG64 | (10+oid[4]-'0'); + data[0] = X86_XMMREG | (10+oid[4]-'0'); return YASM_ARCH_CHECK_ID_REG; }