src/video/SDL_stretch.c
changeset 1442 e3242177fe4a
parent 1402 d910939febfa
child 1662 782fd950bd46
child 1849 b5a4ac87b98c
equal deleted inserted replaced
1441:b9f034536fa0 1442:e3242177fe4a
    33 /* This isn't ready for general consumption yet - it should be folded
    33 /* This isn't ready for general consumption yet - it should be folded
    34    into the general blitting mechanism.
    34    into the general blitting mechanism.
    35 */
    35 */
    36 
    36 
    37 #if ((defined(_MFC_VER) && defined(_M_IX86)/* && !defined(_WIN32_WCE) still needed? */) || \
    37 #if ((defined(_MFC_VER) && defined(_M_IX86)/* && !defined(_WIN32_WCE) still needed? */) || \
       
    38      defined(__WATCOMC__) || \
    38      (defined(__GNUC__) && defined(__i386__))) && SDL_ASSEMBLY_ROUTINES
    39      (defined(__GNUC__) && defined(__i386__))) && SDL_ASSEMBLY_ROUTINES
    39 #define USE_ASM_STRETCH
    40 #define USE_ASM_STRETCH
    40 #endif
    41 #endif
    41 
    42 
    42 #ifdef USE_ASM_STRETCH
    43 #ifdef USE_ASM_STRETCH
   279 			__asm__ __volatile__ (
   280 			__asm__ __volatile__ (
   280 			"call *%4"
   281 			"call *%4"
   281 			: "=&D" (u1), "=&S" (u2)
   282 			: "=&D" (u1), "=&S" (u2)
   282 			: "0" (dstp), "1" (srcp), "r" (copy_row)
   283 			: "0" (dstp), "1" (srcp), "r" (copy_row)
   283 			: "memory" );
   284 			: "memory" );
   284 #else
   285 #elif defined(_MSC_VER) || defined(__WATCOMC__)
   285 #ifdef _MSC_VER
       
   286 		{ void *code = copy_row;
   286 		{ void *code = copy_row;
   287 			__asm {
   287 			__asm {
   288 				push edi
   288 				push edi
   289 				push esi
   289 				push esi
   290 	
   290 	
   297 			}
   297 			}
   298 		}
   298 		}
   299 #else
   299 #else
   300 #error Need inline assembly for this compiler
   300 #error Need inline assembly for this compiler
   301 #endif
   301 #endif
   302 #endif /* __GNUC__ */
       
   303 			break;
   302 			break;
   304 		}
   303 		}
   305 #else
   304 #else
   306 		switch (bpp) {
   305 		switch (bpp) {
   307 		    case 1:
   306 		    case 1: