aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>2012-05-10 08:51:39 +0000
committerRainer Orth <ro@gcc.gnu.org>2012-05-10 08:51:39 +0000
commitaca06c900e84dcbd57eaee3e94011a1710ef1e4e (patch)
tree7538481d3fc7b9aee5791e44a2b759eea9dacb14 /gcc
parent638d20652bd82d36495fc024a5a618dfd349969e (diff)
downloadgcc-aca06c900e84dcbd57eaee3e94011a1710ef1e4e.zip
gcc-aca06c900e84dcbd57eaee3e94011a1710ef1e4e.tar.gz
gcc-aca06c900e84dcbd57eaee3e94011a1710ef1e4e.tar.bz2
Use i386-cpuinfo.c on all i386 targets
libgcc: * config.host (i[34567]86-*-linux*, x86_64-*-linux*) (i[34567]86-*-kfreebsd*-gnu, x86_64-*-kfreebsd*-gnu) (i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*): Move i386/t-cpuinfo ... (i[34567]86-*-*, x86_64-*-*): ... here. * config/i386/libgcc-bsd.ver (GCC_4.8.0): New version. * config/i386/libgcc-sol2.ver (GCC_4.8.0): New version. * config/i386/i386-cpuinfo.c: Rename to ... * config/i386/cpuinfo.c: ... this. * config/i386/t-cpuinfo (LIB2ADD): Reflect this. * configure.ac (AC_CONFIG_HEADER): Call for auto-target.h. (libgcc_cv_init_priority): New test. * configure: Regenerate. * config.in: New file. * Makefile.in (clean): Rename config.h to auto-target.h. (config.h): Likewise. (stamp-h): Likewise. * config/i386/cpuinfo.c (auto-target.h): Include. (CONSTRUCTOR_PRIORITY): Define. (__cpu_indicator_init): Use it. gcc * doc/extend.texi (X86 Built-in Functions, __builtin_cpu_init): Document requirement to call in constructors. * config/i386/i386.c: Update comments for i386-cpuinfo.c name change. From-SVN: r187365
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/i386/i386.c9
-rw-r--r--gcc/doc/extend.texi5
3 files changed, 15 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index afe2c63..7a8814a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2012-05-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * doc/extend.texi (X86 Built-in Functions, __builtin_cpu_init):
+ Document requirement to call in constructors.
+
+ * config/i386/i386.c: Update comments for i386-cpuinfo.c name
+ change.
+
2012-05-10 Richard Guenther <rguenther@suse.de>
* tree.h (TYPE_IS_SIZETYPE): Remove.
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 36370b2..8c97054 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -27665,7 +27665,7 @@ ix86_init_mmx_sse_builtins (void)
}
/* This builds the processor_model struct type defined in
- libgcc/config/i386/i386-cpuinfo.c */
+ libgcc/config/i386/cpuinfo.c */
static tree
build_processor_model_struct (void)
@@ -27725,7 +27725,7 @@ make_var_decl (tree type, const char *name)
}
/* FNDECL is a __builtin_cpu_is or a __builtin_cpu_supports call that is folded
- into an integer defined in libgcc/config/i386/i386-cpuinfo.c */
+ into an integer defined in libgcc/config/i386/cpuinfo.c */
static tree
fold_builtin_cpu (tree fndecl, tree *args)
@@ -27735,8 +27735,7 @@ fold_builtin_cpu (tree fndecl, tree *args)
DECL_FUNCTION_CODE (fndecl);
tree param_string_cst = NULL;
- /* This is the order of bit-fields in __processor_features in
- i386-cpuinfo.c */
+ /* This is the order of bit-fields in __processor_features in cpuinfo.c */
enum processor_features
{
F_CMOV = 0,
@@ -27754,7 +27753,7 @@ fold_builtin_cpu (tree fndecl, tree *args)
};
/* These are the values for vendor types and cpu types and subtypes
- in i386-cpuinfo.c. Cpu types and subtypes should be subtracted by
+ in cpuinfo.c. Cpu types and subtypes should be subtracted by
the corresponding start value. */
enum processor_model
{
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 53ce2b3..6aaf453 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -9449,8 +9449,9 @@ executed before any constructors are called. The CPU detection code is
automatically executed in a very high priority constructor.
For example, this function has to be used in @code{ifunc} resolvers which
-check for CPU type using the builtins, @code{__builtin_cpu_is}
-and @code{__builtin_cpu_supports}.
+check for CPU type using the builtins @code{__builtin_cpu_is}
+and @code{__builtin_cpu_supports}, or in constructors on targets which
+don't support constructor priority.
@smallexample
static void (*resolve_memcpy (void)) (void)