Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-05-31 23:14:39 +0300
committerMichael Niedermayer <michaelni@gmx.at>2015-05-31 23:14:39 +0300
commit8dcbfb73d58c06fa012db5ffea97647fed95a280 (patch)
treec727fbe254633fac4c8116360a9e71dfd7392b6e /libavutil/ppc
parent47cc1a2bf1b757dc388cd47f43dc64e5cc543918 (diff)
parent3058872c293e239e3b51e86fe18cfbe720aadff1 (diff)
Merge commit '3058872c293e239e3b51e86fe18cfbe720aadff1'
* commit '3058872c293e239e3b51e86fe18cfbe720aadff1': ppc: Clarify and extend the cpuid check Conflicts: libavutil/ppc/cpu.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavutil/ppc')
-rw-r--r--libavutil/ppc/cpu.c23
1 files changed, 19 insertions, 4 deletions
diff --git a/libavutil/ppc/cpu.c b/libavutil/ppc/cpu.c
index e20dec11fb..77229630d3 100644
--- a/libavutil/ppc/cpu.c
+++ b/libavutil/ppc/cpu.c
@@ -97,15 +97,30 @@ out:
close(fd);
return ret;
#elif CONFIG_RUNTIME_CPUDETECT && defined(__linux__) && !ARCH_PPC64
+#define PVR_G4_7400 0x000C
+#define PVR_G5_970 0x0039
+#define PVR_G5_970FX 0x003C
+#define PVR_G5_970MP 0x0044
+#define PVR_G5_970GX 0x0045
+#define PVR_POWER6 0x003E
+#define PVR_POWER7 0x003F
+#define PVR_POWER8 0x004B
+#define PVR_CELL_PPU 0x0070
+
int proc_ver;
// Support of mfspr PVR emulation added in Linux 2.6.17.
__asm__ volatile("mfspr %0, 287" : "=r" (proc_ver));
proc_ver >>= 16;
if (proc_ver & 0x8000 ||
- proc_ver == 0x000c ||
- proc_ver == 0x0039 || proc_ver == 0x003c ||
- proc_ver == 0x0044 || proc_ver == 0x0045 ||
- proc_ver == 0x0070)
+ proc_ver == PVR_G4_7400 ||
+ proc_ver == PVR_G5_970 ||
+ proc_ver == PVR_G5_970FX ||
+ proc_ver == PVR_G5_970MP ||
+ proc_ver == PVR_G5_970GX ||
+ proc_ver == PVR_POWER6 ||
+ proc_ver == PVR_POWER7 ||
+ proc_ver == PVR_POWER8 ||
+ proc_ver == PVR_CELL_PPU)
return AV_CPU_FLAG_ALTIVEC;
return 0;
#else