|
From: <sv...@va...> - 2006-11-14 15:10:23
|
Author: sewardj
Date: 2006-11-14 15:07:57 +0000 (Tue, 14 Nov 2006)
New Revision: 6351
Log:
Add a regtest for #125959.
Added:
trunk/none/tests/x86/bug125959-x86.c
trunk/none/tests/x86/bug125959-x86.stderr.exp
trunk/none/tests/x86/bug125959-x86.stdout.exp
trunk/none/tests/x86/bug125959-x86.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 2006-11-14 14:32:46 UTC (rev 6350)
+++ trunk/none/tests/x86/Makefile.am 2006-11-14 15:07:57 UTC (rev 6351)
@@ -8,6 +8,7 @@
badseg.stderr.exp badseg.stdout.exp badseg.vgtest \
bt_everything.stderr.exp bt_everything.stdout.exp bt_everything.vgtest =
\
bt_literal.stderr.exp bt_literal.stdout.exp bt_literal.vgtest \
+ bug125959-x86.stderr.exp bug125959-x86.stdout.exp bug125959-x86.vgtest =
\
bug132813-x86.stderr.exp bug132813-x86.stdout.exp bug132813-x86.vgtest =
\
cpuid.stderr.exp cpuid.stdout.exp cpuid.vgtest \
cmpxchg8b.stderr.exp cmpxchg8b.stdout.exp cmpxchg8b.vgtest \
@@ -34,6 +35,7 @@
=20
check_PROGRAMS =3D \
badseg bt_everything bt_literal \
+ bug125959-x86 \
bug132813-x86 \
cmpxchg8b cpuid \
faultstatus fcmovnu fpu_lazy_eflags fxtract \
Added: trunk/none/tests/x86/bug125959-x86.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/bug125959-x86.c (rev 0)
+++ trunk/none/tests/x86/bug125959-x86.c 2006-11-14 15:07:57 UTC (rev 635=
1)
@@ -0,0 +1,36 @@
+
+#include <stdio.h>
+
+unsigned char buf[256];=20
+
+static int lookup ( int i )
+{
+ int block[3];
+ block[0] =3D (int)&buf[0];
+ block[1] =3D i;
+ block[2] =3D 0;
+ __asm__ __volatile__(
+ "movl %0,%%esi\n\t"
+ "movl 0(%%esi),%%ebx\n\t"
+ "movl 4(%%esi),%%eax\n\t"
+ "xlat\n\t"
+ "movl %%eax,8(%%esi)\n\t"
+ : : /*in*/"r"(block) : "esi", "ebx", "eax", "memory", "cc"
+ );
+ return block[2];
+}
+
+int main(void)=20
+{=20
+ int i, j;
+ for (i =3D 0; i < 256; i++)=20
+ buf[i] =3D (unsigned char) i;
+
+ j =3D 0;
+ for (i =3D 0; i < 130; i++) {
+ printf("%08x\n", lookup(j));
+ j +=3D 0x01000001;
+ }
+
+ return 0;=20
+}
Added: trunk/none/tests/x86/bug125959-x86.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/bug125959-x86.stderr.exp =
(rev 0)
+++ trunk/none/tests/x86/bug125959-x86.stderr.exp 2006-11-14 15:07:57 UTC=
(rev 6351)
@@ -0,0 +1,2 @@
+
+
Added: trunk/none/tests/x86/bug125959-x86.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/bug125959-x86.stdout.exp =
(rev 0)
+++ trunk/none/tests/x86/bug125959-x86.stdout.exp 2006-11-14 15:07:57 UTC=
(rev 6351)
@@ -0,0 +1,130 @@
+00000000
+01000001
+02000002
+03000003
+04000004
+05000005
+06000006
+07000007
+08000008
+09000009
+0a00000a
+0b00000b
+0c00000c
+0d00000d
+0e00000e
+0f00000f
+10000010
+11000011
+12000012
+13000013
+14000014
+15000015
+16000016
+17000017
+18000018
+19000019
+1a00001a
+1b00001b
+1c00001c
+1d00001d
+1e00001e
+1f00001f
+20000020
+21000021
+22000022
+23000023
+24000024
+25000025
+26000026
+27000027
+28000028
+29000029
+2a00002a
+2b00002b
+2c00002c
+2d00002d
+2e00002e
+2f00002f
+30000030
+31000031
+32000032
+33000033
+34000034
+35000035
+36000036
+37000037
+38000038
+39000039
+3a00003a
+3b00003b
+3c00003c
+3d00003d
+3e00003e
+3f00003f
+40000040
+41000041
+42000042
+43000043
+44000044
+45000045
+46000046
+47000047
+48000048
+49000049
+4a00004a
+4b00004b
+4c00004c
+4d00004d
+4e00004e
+4f00004f
+50000050
+51000051
+52000052
+53000053
+54000054
+55000055
+56000056
+57000057
+58000058
+59000059
+5a00005a
+5b00005b
+5c00005c
+5d00005d
+5e00005e
+5f00005f
+60000060
+61000061
+62000062
+63000063
+64000064
+65000065
+66000066
+67000067
+68000068
+69000069
+6a00006a
+6b00006b
+6c00006c
+6d00006d
+6e00006e
+6f00006f
+70000070
+71000071
+72000072
+73000073
+74000074
+75000075
+76000076
+77000077
+78000078
+79000079
+7a00007a
+7b00007b
+7c00007c
+7d00007d
+7e00007e
+7f00007f
+80000080
+81000081
Added: trunk/none/tests/x86/bug125959-x86.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/bug125959-x86.vgtest (re=
v 0)
+++ trunk/none/tests/x86/bug125959-x86.vgtest 2006-11-14 15:07:57 UTC (re=
v 6351)
@@ -0,0 +1 @@
+prog: bug125959-x86
|