summaryrefslogtreecommitdiff
path: root/pngvcrd.c
diff options
context:
space:
mode:
authorGlenn Randers-Pehrson <glennrp at users.sourceforge.net>2001-12-04 06:30:43 -0600
committerGlenn Randers-Pehrson <glennrp at users.sourceforge.net>2009-04-06 16:06:39 -0500
commitdb3b88dad215601c8f24b1aff5ac837c2191a40d (patch)
treed79a45fbfe5df217c123f12b4eab48ac6ed01ef4 /pngvcrd.c
parentae498dcff322a562d140935cfa80ff7de095b9b8 (diff)
downloadlibpng-db3b88dad215601c8f24b1aff5ac837c2191a40d.tar.gz
Imported from libpng-1.2.1rc2.tarv1.2.1rc2
Diffstat (limited to 'pngvcrd.c')
-rw-r--r--pngvcrd.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/pngvcrd.c b/pngvcrd.c
index ed428d612..281475faa 100644
--- a/pngvcrd.c
+++ b/pngvcrd.c
@@ -2,7 +2,7 @@
*
* For Intel x86 CPU and Microsoft Visual C++ compiler
*
- * libpng 1.2.1rc1 - November 24, 2001
+ * libpng version 1.2.1rc2 - December 4, 2001
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson
* Copyright (c) 1998, Intel Corporation
@@ -39,6 +39,7 @@ png_mmx_support(void)
push ebx //CPUID will trash these
push ecx
push edx
+
pushfd //Save Eflag to stack
pop eax //Get Eflag from stack into eax
mov ecx, eax //Make another copy of Eflag in ecx
@@ -48,6 +49,8 @@ png_mmx_support(void)
popfd //Restored modified value back to Eflag reg
pushfd //Save Eflag to stack
pop eax //Get Eflag from stack
+ push ecx // save original Eflag to stack
+ popfd // restore original Eflag
xor eax, ecx //Compare the new Eflag with the original Eflag
jz NOT_SUPPORTED //If the same, CPUID instruction is not supported,
//skip following instructions and jump to