Make SDL compile with gcc 3.3 too, by applying patches provided by

Marc Recht in response to PR pkg/23268.
This commit is contained in:
kristerw 2003-10-27 23:19:46 +00:00
parent c2ef220bfc
commit 515369e600
3 changed files with 118 additions and 1 deletions

View file

@ -1,9 +1,11 @@
$NetBSD: distinfo,v 1.24 2003/09/16 17:03:46 drochner Exp $
$NetBSD: distinfo,v 1.25 2003/10/27 23:19:46 kristerw Exp $
SHA1 (SDL-1.2.6.tar.gz) = 6f64b79427ea279e5ae18ea07d9fe353fd138422
Size (SDL-1.2.6.tar.gz) = 2042700 bytes
SHA1 (patch-aa) = 4511f3af35b824d8e1425b571a8c12e44e8ef46c
SHA1 (patch-ab) = 7effcc7f7f1856372692c147521888843810fed5
SHA1 (patch-ac) = 9958c02f4e8ca2cebc5e40f501f4e52ec8c70327
SHA1 (patch-ad) = be83c13f11dfd0b94e598965065ef94a9daca0bb
SHA1 (patch-af) = f5e824addf308f9c467de02e3b262afbc0ef77c0
SHA1 (patch-ag) = cd2fd8958b86e12c9d2786fe200c6ab44d8d40e1
SHA1 (patch-aj) = 7bcfe591659e60dcdbd6c966f4347270ed3f14f5

View file

@ -0,0 +1,35 @@
$NetBSD: patch-ac,v 1.9 2003/10/27 23:19:46 kristerw Exp $
--- src/video/mmx.h.orig Fri Aug 22 07:51:19 2003
+++ src/video/mmx.h Mon Oct 27 21:07:27 2003
@@ -348,16 +348,16 @@
#define mmx_i2r(op, imm, reg) \
__asm__ __volatile__ (#op " %0, %%" #reg \
: /* nothing */ \
- : "X" (imm) )
+ : "i" (imm) )
#define mmx_m2r(op, mem, reg) \
__asm__ __volatile__ (#op " %0, %%" #reg \
: /* nothing */ \
- : "X" (mem))
+ : "m" (mem))
#define mmx_r2m(op, reg, mem) \
__asm__ __volatile__ (#op " %%" #reg ", %0" \
- : "=X" (mem) \
+ : "=m" (mem) \
: /* nothing */ )
#define mmx_r2r(op, regs, regd) \
@@ -367,8 +367,8 @@
__asm__ __volatile__ ("movq %0, %%mm0\n\t" \
#op " %1, %%mm0\n\t" \
"movq %%mm0, %0" \
- : "=X" (memd) \
- : "X" (mems))
+ : "=m" (memd) \
+ : "m" (mems))
#endif

View file

@ -0,0 +1,80 @@
$NetBSD: patch-ad,v 1.5 2003/10/27 23:19:46 kristerw Exp $
--- src/video/SDL_blit_A.c.orig Sat Aug 30 21:13:06 2003
+++ src/video/SDL_blit_A.c Mon Oct 27 21:10:22 2003
@@ -220,11 +220,11 @@
int dstskip = info->d_skip >> 2;
Uint8 load[8];
- *(Uint64 *)load = 0x00fefefe00fefefe;/* alpha128 mask */
+ *(Uint64 *)load = 0x00fefefe00fefefeULL;/* alpha128 mask */
movq_m2r(*load, mm4); /* alpha128 mask -> mm4 */
- *(Uint64 *)load = 0x0001010100010101;/* !alpha128 mask */
+ *(Uint64 *)load = 0x0001010100010101ULL;/* !alpha128 mask */
movq_m2r(*load, mm3); /* !alpha128 mask -> mm3 */
- *(Uint64 *)load = 0xFF000000FF000000;/* dst alpha mask */
+ *(Uint64 *)load = 0xFF000000FF000000ULL;/* dst alpha mask */
movq_m2r(*load, mm7); /* dst alpha mask -> mm7 */
while(height--) {
DUFFS_LOOP_DOUBLE2(
@@ -276,10 +276,10 @@
alpha, alpha, alpha, alpha};
movq_m2r(*load, mm4); /* alpha -> mm4 */
- *(Uint64 *)load = 0x00FF00FF00FF00FF;
+ *(Uint64 *)load = 0x00FF00FF00FF00FFULL;
movq_m2r(*load, mm3); /* mask -> mm3 */
pand_r2r(mm3, mm4); /* mm4 & mask -> 0A0A0A0A -> mm4 */
- *(Uint64 *)load = 0xFF000000FF000000;/* dst alpha mask */
+ *(Uint64 *)load = 0xFF000000FF000000ULL;/* dst alpha mask */
movq_m2r(*load, mm7); /* dst alpha mask -> mm7 */
while(height--) {
@@ -360,13 +360,13 @@
Uint32 alpha = 0;
Uint8 load[8];
- *(Uint64 *)load = 0x00FF00FF00FF00FF;
+ *(Uint64 *)load = 0x00FF00FF00FF00FFULL;
movq_m2r(*load, mm3); /* mask -> mm2 */
- *(Uint64 *)load = 0x00FF000000000000;
+ *(Uint64 *)load = 0x00FF000000000000ULL;
movq_m2r(*load, mm7); /* dst alpha mask -> mm2 */
- *(Uint64 *)load = 0x00FFFFFF00FFFFFF;
+ *(Uint64 *)load = 0x00FFFFFF00FFFFFFULL;
movq_m2r(*load, mm0); /* alpha 255 mask -> mm0 */
- *(Uint64 *)load = 0xFF000000FF000000;
+ *(Uint64 *)load = 0xFF000000FF000000ULL;
movq_m2r(*load, mm6); /* alpha 255 !mask -> mm6 */
while(height--) {
DUFFS_LOOP4({
@@ -792,11 +792,11 @@
punpcklwd_r2r(mm0, mm0); /* 0A0A0A0A -> mm0 */
/* Setup the 565 color channel masks */
- *(Uint64 *)load = 0xF800F800F800F800;
+ *(Uint64 *)load = 0xF800F800F800F800ULL;
movq_m2r(*load, mm1); /* MASKRED -> mm1 */
- *(Uint64 *)load = 0x07E007E007E007E0;
+ *(Uint64 *)load = 0x07E007E007E007E0ULL;
movq_m2r(*load, mm4); /* MASKGREEN -> mm4 */
- *(Uint64 *)load = 0x001F001F001F001F;
+ *(Uint64 *)load = 0x001F001F001F001FULL;
movq_m2r(*load, mm7); /* MASKBLUE -> mm7 */
while(height--) {
DUFFS_LOOP_QUATRO2(
@@ -942,11 +942,11 @@
punpcklwd_r2r(mm0, mm0); /* 0A0A0A0A -> mm0 */
/* Setup the 555 color channel masks */
- *(Uint64 *)load = 0x7C007C007C007C00;
+ *(Uint64 *)load = 0x7C007C007C007C00ULL;
movq_m2r(*load, mm1); /* MASKRED -> mm1 */
- *(Uint64 *)load = 0x03E003E003E003E0;
+ *(Uint64 *)load = 0x03E003E003E003E0ULL;
movq_m2r(*load, mm4); /* MASKGREEN -> mm4 */
- *(Uint64 *)load = 0x001F001F001F001F;
+ *(Uint64 *)load = 0x001F001F001F001FULL;
movq_m2r(*load, mm7); /* MASKBLUE -> mm7 */
while(height--) {
DUFFS_LOOP_QUATRO2(