summaryrefslogtreecommitdiff
path: root/volk/lib/gcc_x86_cpuid.h
diff options
context:
space:
mode:
authorBen Reynwar2012-04-30 09:20:59 -0700
committerBen Reynwar2012-04-30 09:20:59 -0700
commit2817cf14147d6da2e7ef051fbbbf8228fd1c07ba (patch)
tree0695ce3bcdbd75784198c28e6cb963c99ae5d0f6 /volk/lib/gcc_x86_cpuid.h
parente7f45e3c513242706a9e4aa36e99e33e79e66d4f (diff)
parentd7ecbd12be995ad6db7a53a5d6dd3fcb205c07ea (diff)
downloadgnuradio-2817cf14147d6da2e7ef051fbbbf8228fd1c07ba.tar.gz
gnuradio-2817cf14147d6da2e7ef051fbbbf8228fd1c07ba.tar.bz2
gnuradio-2817cf14147d6da2e7ef051fbbbf8228fd1c07ba.zip
Merge branch 'master' of http://gnuradio.org/git/gnuradio
Diffstat (limited to 'volk/lib/gcc_x86_cpuid.h')
-rw-r--r--volk/lib/gcc_x86_cpuid.h22
1 files changed, 16 insertions, 6 deletions
diff --git a/volk/lib/gcc_x86_cpuid.h b/volk/lib/gcc_x86_cpuid.h
index 98eeb33a3..3c3f47b00 100644
--- a/volk/lib/gcc_x86_cpuid.h
+++ b/volk/lib/gcc_x86_cpuid.h
@@ -1,20 +1,20 @@
/*
- * Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
+ * Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
*
* This file 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 3, or (at your option) any
* later version.
- *
+ *
* This file 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.
- *
+ *
* Under Section 7 of GPL version 3, you are granted additional
* permissions described in the GCC Runtime Library Exception, version
* 3.1, as published by the Free Software Foundation.
- *
+ *
* You should have received a copy of the GNU General Public License and
* a copy of the GCC Runtime Library Exception along with this program;
* see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@@ -35,6 +35,8 @@
#define bit_XSAVE (1 << 26)
#define bit_OSXSAVE (1 << 27)
#define bit_AVX (1 << 28)
+#define bit_F16C (1 << 29)
+#define bit_RDRND (1 << 30)
/* %edx */
#define bit_CMPXCHG8B (1 << 8)
@@ -47,14 +49,22 @@
/* Extended Features */
/* %ecx */
#define bit_LAHF_LM (1 << 0)
+#define bit_ABM (1 << 5)
#define bit_SSE4a (1 << 6)
-#define bit_SSE5 (1 << 11)
+#define bit_XOP (1 << 11)
+#define bit_LWP (1 << 15)
+#define bit_FMA4 (1 << 16)
+#define bit_TBM (1 << 21)
/* %edx */
+#define bit_MMXEXT (1 << 22)
#define bit_LM (1 << 29)
#define bit_3DNOWP (1 << 30)
#define bit_3DNOW (1 << 31)
+/* Extended Features (%eax == 7) */
+#define bit_FSGSBASE (1 << 0)
+#define bit_BMI (1 << 3)
#if defined(__i386__) && defined(__PIC__)
/* %ebx may be the PIC register. */
@@ -114,8 +124,8 @@ __get_cpuid_max (unsigned int __ext, unsigned int *__sig)
unsigned int __eax, __ebx, __ecx, __edx;
#ifndef __x86_64__
-#if __GNUC__ >= 3
/* See if we can use cpuid. On AMD64 we always can. */
+#if __GNUC__ >= 3
__asm__ ("pushf{l|d}\n\t"
"pushf{l|d}\n\t"
"pop{l}\t%0\n\t"