|
From: <sv...@va...> - 2005-10-05 11:02:07
|
Author: sewardj
Date: 2005-10-05 12:02:00 +0100 (Wed, 05 Oct 2005)
New Revision: 4867
Log:
Even more regtests
Added:
trunk/none/tests/x86/incdec_alt.c
trunk/none/tests/x86/incdec_alt.stderr.exp
trunk/none/tests/x86/incdec_alt.stdout.exp
trunk/none/tests/x86/incdec_alt.vgtest
trunk/none/tests/x86/lahf.c
trunk/none/tests/x86/lahf.stderr.exp
trunk/none/tests/x86/lahf.stdout.exp
trunk/none/tests/x86/lahf.vgtest
Modified:
trunk/none/tests/x86/Makefile.am
Modified: trunk/none/tests/x86/Makefile.am
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/none/tests/x86/Makefile.am 2005-10-05 08:28:59 UTC (rev 4866)
+++ trunk/none/tests/x86/Makefile.am 2005-10-05 11:02:00 UTC (rev 4867)
@@ -13,10 +13,12 @@
fpu_lazy_eflags.vgtest \
fxtract.stdout.exp fxtract.stderr.exp fxtract.vgtest \
getseg.stdout.exp getseg.stderr.exp getseg.vgtest \
+ incdec_alt.stdout.exp incdec_alt.stderr.exp incdec_alt.vgtest \
int.stderr.exp int.stdout.exp int.vgtest \
$(addsuffix .stderr.exp,$(INSN_TESTS)) \
$(addsuffix .stdout.exp,$(INSN_TESTS)) \
$(addsuffix .vgtest,$(INSN_TESTS)) \
+ lahf.stdout.exp lahf.stderr.exp lahf.vgtest \
looper.stderr.exp looper.stdout.exp looper.vgtest \
pushpopseg.stderr.exp pushpopseg.stdout.exp pushpopseg.vgtest \
sbbmisc.stderr.exp sbbmisc.stdout.exp sbbmisc.vgtest \
@@ -28,8 +30,8 @@
check_PROGRAMS =3D \
badseg bt_everything bt_literal cmpxchg8b cpuid fpu_lazy_eflags \
fxtract \
- getseg $(INSN_TESTS) \
- looper int pushpopseg sbbmisc \
+ getseg incdec_alt $(INSN_TESTS) \
+ lahf looper int pushpopseg sbbmisc \
seg_override sigcontext smc1 yield
=20
AM_CFLAGS =3D $(WERROR) -Winline -Wall -Wshadow \
Added: trunk/none/tests/x86/incdec_alt.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/none/tests/x86/incdec_alt.c 2005-10-05 08:28:59 UTC (rev 4866)
+++ trunk/none/tests/x86/incdec_alt.c 2005-10-05 11:02:00 UTC (rev 4867)
@@ -0,0 +1,68 @@
+
+/* A test of the alternative (redundant) encodings for {inc,dec}{w,l}. *=
/
+
+#include <stdio.h>
+
+int r1,r2,r3,r4,r5,r6,r7,r8,a1,a2;
+
+extern void foo ( void );
+asm("\n"
+"foo:\n"
+"\tpushl $0\n"
+"\tpopfl\n"
+"\tmovl a1,%eax\n"
+"\tmovl a2,%edx\n"
+
+/* inc %eax */
+"\t.byte 0xFF\n"
+"\t.byte 0xC0\n"
+
+"\tmovl %eax,r1\n"
+"\tpushfl\n"
+"\tpopl r2\n"
+
+/* inc %dx */
+"\t.byte 0x66\n"
+"\t.byte 0xFF\n"
+"\t.byte 0xC2\n"
+
+"\tmovl %edx,r3\n"
+"\tpushfl\n"
+"\tpopl r4\n"
+
+/* dec %edx */
+"\t.byte 0xFF\n"
+"\t.byte 0xCA\n"
+
+"\tmovl %edx,r5\n"
+"\tpushfl\n"
+"\tpopl r6\n"
+
+/* dec %ax */
+"\t.byte 0x66\n"
+"\t.byte 0xFF\n"
+"\t.byte 0xC8\n"
+
+"\tmovl %eax,r7\n"
+"\tpushfl\n"
+"\tpopl r8\n"
+
+"\tret\n"
+);
+
+int main ( void )
+{
+ a1 =3D 0x77777777;
+ a2 =3D 0x88888888;
+ r1=3Dr2=3Dr3=3Dr4=3Dr5=3Dr6=3Dr7=3Dr8=3D0;
+ foo();
+ printf("0x%08x\n",r1);
+ printf("0x%08x\n",r2);
+ printf("0x%08x\n",r3);
+ printf("0x%08x\n",r4);
+ printf("0x%08x\n",r5);
+ printf("0x%08x\n",r6);
+ printf("0x%08x\n",r7);
+ printf("0x%08x\n",r8);
+ return 0;
+}
Added: trunk/none/tests/x86/incdec_alt.stderr.exp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/none/tests/x86/incdec_alt.stderr.exp 2005-10-05 08:28:59 UTC (r=
ev 4866)
+++ trunk/none/tests/x86/incdec_alt.stderr.exp 2005-10-05 11:02:00 UTC (r=
ev 4867)
@@ -0,0 +1,2 @@
+
+
Added: trunk/none/tests/x86/incdec_alt.stdout.exp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/none/tests/x86/incdec_alt.stdout.exp 2005-10-05 08:28:59 UTC (r=
ev 4866)
+++ trunk/none/tests/x86/incdec_alt.stdout.exp 2005-10-05 11:02:00 UTC (r=
ev 4867)
@@ -0,0 +1,8 @@
+0x77777778
+0x00000206
+0x88888889
+0x00000282
+0x88888888
+0x00000286
+0x77777777
+0x00000206
Added: trunk/none/tests/x86/incdec_alt.vgtest
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/none/tests/x86/incdec_alt.vgtest 2005-10-05 08:28:59 UTC (rev 4=
866)
+++ trunk/none/tests/x86/incdec_alt.vgtest 2005-10-05 11:02:00 UTC (rev 4=
867)
@@ -0,0 +1 @@
+prog: incdec_alt
Added: trunk/none/tests/x86/lahf.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/none/tests/x86/lahf.c 2005-10-05 08:28:59 UTC (rev 4866)
+++ trunk/none/tests/x86/lahf.c 2005-10-05 11:02:00 UTC (rev 4867)
@@ -0,0 +1,33 @@
+
+#include <stdio.h>
+
+extern int foo_1 ( void );
+asm("\n"
+"foo_1:\n"
+"\tpushl $0\n"
+"\tpopfl\n"
+"\tmovl $0xFFFFFFFF, %eax\n"
+"\tmovl $0x12345678, %edx\n"
+"\tsubl %eax, %edx\n"
+"\tlahf\n"
+"\tret\n"
+);
+
+extern int foo_0 ( void );
+asm("\n"
+"foo_0:\n"
+"\tpushl $0\n"
+"\tpopfl\n"
+"\tmovl $0x0, %eax\n"
+"\tmovl $0x12345678, %edx\n"
+"\tsubl %eax, %edx\n"
+"\tlahf\n"
+"\tret\n"
+);
+
+int main ( void )
+{
+ printf("0x%x\n", foo_0());
+ printf("0x%x\n", foo_1());
+ return 0;
+}
Added: trunk/none/tests/x86/lahf.stderr.exp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/none/tests/x86/lahf.stderr.exp 2005-10-05 08:28:59 UTC (rev 486=
6)
+++ trunk/none/tests/x86/lahf.stderr.exp 2005-10-05 11:02:00 UTC (rev 486=
7)
@@ -0,0 +1,2 @@
+
+
Added: trunk/none/tests/x86/lahf.stdout.exp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/none/tests/x86/lahf.stdout.exp 2005-10-05 08:28:59 UTC (rev 486=
6)
+++ trunk/none/tests/x86/lahf.stdout.exp 2005-10-05 11:02:00 UTC (rev 486=
7)
@@ -0,0 +1,2 @@
+0x600
+0xffff13ff
Added: trunk/none/tests/x86/lahf.vgtest
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/none/tests/x86/lahf.vgtest 2005-10-05 08:28:59 UTC (rev 4866)
+++ trunk/none/tests/x86/lahf.vgtest 2005-10-05 11:02:00 UTC (rev 4867)
@@ -0,0 +1 @@
+prog: lahf
|