|
|
@@ -114,6 +114,17 @@ int mm_support(void) |
|
|
|
if (eax & 0x01000000) |
|
|
|
rval |= MM_MMXEXT; |
|
|
|
return rval; |
|
|
|
} else if (ebx == 0x756e6547 && |
|
|
|
edx == 0x54656e69 && |
|
|
|
ecx == 0x3638784d) { |
|
|
|
/* Tranmeta Crusoe */ |
|
|
|
cpuid(0x80000000, eax, ebx, ecx, edx); |
|
|
|
if ((unsigned)eax < 0x80000001) |
|
|
|
return 0; |
|
|
|
cpuid(0x80000001, eax, ebx, ecx, edx); |
|
|
|
if ((edx & 0x00800000) == 0) |
|
|
|
return 0; |
|
|
|
return MM_MMX; |
|
|
|
} else { |
|
|
|
return 0; |
|
|
|
} |
|
|
|