mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-12-28 06:21:14 +00:00
42 lines
498 B
ArmAsm
42 lines
498 B
ArmAsm
|
.file "have_mmx.S"
|
||
|
.version "01.01"
|
||
|
gcc2_compiled.:
|
||
|
.text
|
||
|
.align 16
|
||
|
.globl pixops_have_mmx
|
||
|
.type pixops_have_mmx,@function
|
||
|
|
||
|
pixops_have_mmx:
|
||
|
push %ebx
|
||
|
|
||
|
# Check if bit 21 in flags word is writeable
|
||
|
|
||
|
pushfl
|
||
|
popl %eax
|
||
|
movl %eax,%ebx
|
||
|
xorl $0x00200000, %eax
|
||
|
pushl %eax
|
||
|
popfl
|
||
|
pushfl
|
||
|
popl %eax
|
||
|
|
||
|
cmpl %eax, %ebx
|
||
|
|
||
|
je .notfound
|
||
|
|
||
|
# OK, we have CPUID
|
||
|
|
||
|
movl $1, %eax
|
||
|
cpuid
|
||
|
|
||
|
test $0x00800000, %edx
|
||
|
jz .notfound
|
||
|
|
||
|
movl $1, %eax
|
||
|
jmp .out
|
||
|
|
||
|
.notfound:
|
||
|
movl $0, %eax
|
||
|
.out:
|
||
|
popl %ebx
|
||
|
ret
|