New upstream version 2.0-0.9
Some checks failed
Build / build (push) Has been cancelled

This commit is contained in:
geos_one
2025-08-14 09:28:49 +02:00
parent c338ff82fb
commit 17bb5d7efa
634 changed files with 19105 additions and 52303 deletions

View File

@@ -1,29 +1,15 @@
include ../../Makefile.conf
#CC=clang -fno-integrated-as -fverbose-asm
CC=gcc
CFLAGS=-Wall -O2 -g -fno-strict-aliasing -fno-pic -fno-pie -no-pie
DJGPP = i586-pc-msdosdjgpp-gcc
DJFLAGS=-Wall -O2 -g -gdwarf-2 -fno-strict-aliasing -fno-pic -fno-pie -no-pie
# Force CC to gcc, as clang compiled binary segfaults
CC = gcc
CFLAGS := $(DJFLAGS)
ifeq ($(CC), clang)
CFLAGS += -fno-integrated-as -fverbose-asm
endif
LDFLAGS=
SOURCES = test-i386.c test-i386-code16.S test-i386-vm86.S
ALL_SRC = $(SOURCES) $(wildcard *.h)
all: dosbin.exe
reffile.log: native32
./native32 --common-tests > $@
all: dosbin.exe native32 native64
# i386/x86_64 emulation test (test various opcodes) */
dosbin.exe: $(ALL_SRC)
$(DJGPP) $(DJFLAGS) $(LDFLAGS) -o $@ $(SOURCES) -lm
$(DJGPP) $(CFLAGS) $(LDFLAGS) -o $@ $(SOURCES) -lm
native32: $(ALL_SRC)
$(CC) -m32 $(CFLAGS) $(LDFLAGS) -o $@ $(SOURCES) -lm

File diff suppressed because it is too large Load Diff

View File

@@ -77,7 +77,3 @@ myfunc2:
code16_end:
#ifdef __ELF__
.section .note.GNU-stack,"",%progbits
#endif

View File

@@ -1,3 +1,4 @@
#define exec_op glue(exec_, OP)
#define exec_opq glue(glue(exec_, OP), q)
#define exec_opl glue(glue(exec_, OP), l)
@@ -57,10 +58,6 @@ void exec_opl(long s2, long s0, long s1, long iflags)
void exec_opw(long s2, long s0, long s1, long iflags)
{
long res, flags;
if ((strcmp(stringify(OP), "shld") == 0 ||
strcmp(stringify(OP), "shrd") == 0) && s1 > 16)
return;
res = s0;
flags = iflags;
EXECSHIFT("w", "w", res, s1, s2, flags);
@@ -112,10 +109,6 @@ void exec_opl(long s2, long s0, long s1, long iflags)
void exec_opw(long s2, long s0, long s1, long iflags)
{
long res, flags;
if ((strcmp(stringify(OP), "shld") == 0 ||
strcmp(stringify(OP), "shrd") == 0) && s1 > 16)
return;
res = s0;
flags = iflags;
EXECSHIFT("w", "w", res, s1, s2, flags);
@@ -151,7 +144,11 @@ void exec_op(long s2, long s0, long s1)
exec_opq(s2, s0, s1, 0);
#endif
exec_opl(s2, s0, s1, 0);
#ifdef OP_SHIFTD
exec_opw(s2, s0, s1, 0);
#else
exec_opw(s2, s0, s1, 0);
#endif
#ifndef OP_NOBYTE
exec_opb(s0, s1, 0);
#endif

View File

@@ -105,7 +105,3 @@ IF_msg1:
.string "If you see a diff here, your Linux kernel is buggy, please update to 2.4.20 kernel\n$"
vm86_code_end:
#ifdef __ELF__
.section .note.GNU-stack,"",%progbits
#endif

View File

@@ -2416,8 +2416,8 @@ static void test_enter(void)
#ifdef TEST_SSE
typedef int __m64 __attribute__ ((vector_size (8)));
typedef float __m128 __attribute__ ((vector_size (16)));
typedef int __m64 __attribute__ ((__mode__ (__V2SI__)));
typedef float __m128 __attribute__ ((__mode__(__V4SF__)));
typedef union {
double d[2];
@@ -2591,7 +2591,7 @@ void test_sse_comi(double a1, double b1)
}
/* Force %xmm0 usage to avoid the case where both register index are 0
to test instruction decoding more extensively */
to test intruction decoding more extensively */
#define CVT_OP_XMM2MMX(op)\
{\
asm volatile (#op " %1, %0" : "=y" (r.q[0]) : "x" (a.dq) \
@@ -3084,7 +3084,7 @@ int main(int argc, char **argv)
if (argc >= 2 && strcmp(argv[1], "--common-tests") == 0)
return 0;
// tests that will probably never produce the same output on different platforms
// tests that will probabaly never produce the same output on different platforms
test_exceptions();
test_enter();