view cpudetect.h @ 25157:cf3b6015735d

Set protocol for the vo proxy used in shared-buffer mode. NOTE: You have to update your mplayerosx to svn r148 or newer to work with it. This change will speed up vo proxy and fix all these warnings: vo_macosx.m: In function 'config': vo_macosx.m:165: warning: 'NSProxy' may not respond to '-startWithWidth:withHeight:withBytes:withAspect:' vo_macosx.m:165: warning: (Messages without a matching method signature vo_macosx.m:165: warning: will be assumed to return 'id' and accept vo_macosx.m:165: warning: '...' as arguments.) vo_macosx.m: In function 'flip_page': vo_macosx.m:183: warning: 'NSProxy' may not respond to '-render' vo_macosx.m: In function 'uninit': vo_macosx.m:235: warning: 'NSProxy' may not respond to '-stop' vo_macosx.m: In function 'control': vo_macosx.m:334: warning: 'NSProxy' may not respond to '-ontop' vo_macosx.m:336: warning: 'NSProxy' may not respond to '-toggleFullscreen'
author ulion
date Wed, 28 Nov 2007 00:01:35 +0000
parents 739849dfb699
children 3658234e099b
line wrap: on
line source

#ifndef CPUDETECT_H
#define CPUDETECT_H

#define CPUTYPE_I386	3
#define CPUTYPE_I486	4
#define CPUTYPE_I586	5
#define CPUTYPE_I686    6

#ifdef ARCH_X86_64
#  define REGa    rax
#  define REGb    rbx
#  define REGBP   rbp
#  define REGSP   rsp
#  define REG_a  "rax"
#  define REG_b  "rbx"
#  define REG_c  "rcx"
#  define REG_d  "rdx"
#  define REG_S  "rsi"
#  define REG_D  "rdi"
#  define REG_SP "rsp"
#  define REG_BP "rbp"
#else
#  define REGa    eax
#  define REGb    ebx
#  define REGBP   ebp
#  define REGSP   esp
#  define REG_a  "eax"
#  define REG_b  "ebx"
#  define REG_c  "ecx"
#  define REG_d  "edx"
#  define REG_S  "esi"
#  define REG_D  "edi"
#  define REG_SP "esp"
#  define REG_BP "ebp"
#endif

typedef struct cpucaps_s {
	int cpuType;
	int cpuModel;
	int cpuStepping;
	int hasMMX;
	int hasMMX2;
	int has3DNow;
	int has3DNowExt;
	int hasSSE;
	int hasSSE2;
	int isX86;
	unsigned cl_size; /* size of cache line */
        int hasAltiVec;
	int hasTSC;
} CpuCaps;

extern CpuCaps gCpuCaps;

void GetCpuCaps(CpuCaps *caps);

/* returned value is malloc()'ed so free() it after use */
char *GetCpuFriendlyName(unsigned int regs[], unsigned int regs2[]);

#endif /* !CPUDETECT_H */