changeset 1227:3202d727bb4b

From Mike Frysinger and/or Gentoo: - libsdl-PIC-hermes-cpuid.patch rewrites the code in _Hermes_X86_CPU so that it doesnt require the local cpu_flags memory variable, it just uses registers. test case: http://dev.gentoo.org/~vapier/libsdl/hermes-cpuid-test.tar.bz2
author Ryan C. Gordon <icculus@icculus.org>
date Thu, 05 Jan 2006 07:08:59 +0000
parents d05306f0dc21
children f4a3a4129d04
files src/hermes/x86_main.asm
diffstat 1 files changed, 4 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/src/hermes/x86_main.asm	Wed Jan 04 22:57:50 2006 +0000
+++ b/src/hermes/x86_main.asm	Thu Jan 05 07:08:59 2006 +0000
@@ -16,11 +16,6 @@
 	
 GLOBAL _Hermes_X86_CPU
 
-SECTION .data
-	
-cpu_flags dd 0
-	
-		
 SECTION .text
 		
 ;; _ConvertX86:	 
@@ -109,16 +104,13 @@
 	xor eax,ecx
 	je .L1
 	
-	pusha
-	
+	push ebx
+
 	mov eax,1
 	cpuid
-
-	mov [cpu_flags],edx
+	mov eax,edx
 
-	popa
-
-	mov eax,[cpu_flags]
+	pop ebx
 
 .L1:	
 	ret