summaryrefslogtreecommitdiff
path: root/Source/Core/Common
diff options
context:
space:
mode:
authorRyan Houdek <Sonicadvance1@gmail.com>2013-03-14 08:48:01 -0500
committerRyan Houdek <Sonicadvance1@gmail.com>2013-03-14 08:48:01 -0500
commitb4830be9bcdbcee7e1bd5bd2db8709e7446bab27 (patch)
treed3f5fa0a68c1cd52b53c0eb4c08cf58a3b5bfdc8 /Source/Core/Common
parent808eaf7c491aaf277452dd25016a41bcb4bd6059 (diff)
Actually set the bIDIVa value in the ARM CPUDetect.
Diffstat (limited to 'Source/Core/Common')
-rw-r--r--Source/Core/Common/Src/ArmCPUDetect.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/Source/Core/Common/Src/ArmCPUDetect.cpp b/Source/Core/Common/Src/ArmCPUDetect.cpp
index db1c967ec3..04be3ac90c 100644
--- a/Source/Core/Common/Src/ArmCPUDetect.cpp
+++ b/Source/Core/Common/Src/ArmCPUDetect.cpp
@@ -122,6 +122,12 @@ void CPUInfo::Detect()
bVFPv4 = CheckCPUFeature("vfpv4");
bIDIVa = CheckCPUFeature("idiva");
bIDIVt = CheckCPUFeature("idivt");
+
+ // On some buggy kernels(Qualcomm) they show that they support VFPv4 but not IDIVa
+ // All VFPv4 CPUs will support IDIVa
+ if (bVFPv4)
+ bIDIVa = bIDIVt = true;
+
// These two are ARMv8 specific.
bFP = CheckCPUFeature("fp");
bASIMD = CheckCPUFeature("asimd");
@@ -154,10 +160,8 @@ std::string CPUInfo::Summarize()
if (bVFPv3) sum += ", VFPv3";
if (bTLS) sum += ", TLS";
if (bVFPv4) sum += ", VFPv4";
- // On some buggy kernels(Qualcomm) they show that they support VFPv4 but not IDIVa
- // All VFPv4 CPUs will support IDIVa
- if (bIDIVa || bVFPv4) sum += ", IDIVa";
- if (bIDIVt || bVFPv4) sum += ", IDIVt";
+ if (bIDIVa) sum += ", IDIVa";
+ if (bIDIVt) sum += ", IDIVt";
return sum;
}