summaryrefslogtreecommitdiff
path: root/src/utils/cpu.h
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2013-06-08 19:37:53 +0300
committerAndrei Karas <akaras@inbox.ru>2013-06-09 15:21:24 +0300
commit2f7c62a4c312ae6c0d2c6ae52cb06a73c553c2c3 (patch)
tree47c039cbe54cb903ef4987fe0451efb3a7be0632 /src/utils/cpu.h
parent4fcd82d8ea4556236148a7be102ae9edc3ab58b7 (diff)
downloadplus-2f7c62a4c312ae6c0d2c6ae52cb06a73c553c2c3.tar.gz
plus-2f7c62a4c312ae6c0d2c6ae52cb06a73c553c2c3.tar.bz2
plus-2f7c62a4c312ae6c0d2c6ae52cb06a73c553c2c3.tar.xz
plus-2f7c62a4c312ae6c0d2c6ae52cb06a73c553c2c3.zip
Add cpu features detection.
Diffstat (limited to 'src/utils/cpu.h')
-rw-r--r--src/utils/cpu.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/src/utils/cpu.h b/src/utils/cpu.h
new file mode 100644
index 000000000..88d35933d
--- /dev/null
+++ b/src/utils/cpu.h
@@ -0,0 +1,44 @@
+/*
+ * The ManaPlus Client
+ * Copyright (C) 2013 The ManaPlus Developers
+ *
+ * This file is part of The ManaPlus Client.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef UTILD_CPU_H
+#define UTILD_CPU_H
+
+#include "localconsts.h"
+
+namespace Cpu
+{
+ enum
+ {
+ FEATURE_EMPTY = 0,
+ FEATURE_MMX = 1,
+ FEATURE_SSE = 2,
+ FEATURE_SSE2 = 4,
+ FEATURE_SSSE3 = 8,
+ FEATURE_SSE4 = 16,
+ FEATURE_SSE42 = 32
+ };
+
+ void detect();
+
+ void printFlags();
+} // namespace CPU
+
+#endif // UTILD_CPU_H