diff options
author | Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> | 2012-05-10 08:51:39 +0000 |
---|---|---|
committer | Rainer Orth <ro@gcc.gnu.org> | 2012-05-10 08:51:39 +0000 |
commit | aca06c900e84dcbd57eaee3e94011a1710ef1e4e (patch) | |
tree | 7538481d3fc7b9aee5791e44a2b759eea9dacb14 /gcc | |
parent | 638d20652bd82d36495fc024a5a618dfd349969e (diff) | |
download | gcc-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/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/config/i386/i386.c | 9 | ||||
-rw-r--r-- | gcc/doc/extend.texi | 5 |
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) |