driver-i386.c: Always define host_detect_local_cpu.

* config/i386/driver-i386.c: Always define host_detect_local_cpu.
	* config/i386/i386.h: Define EXTRA_SPEC_FUNCTIONS on any i386
	or x86_64 host.  Define HAVE_LOCAL_CPU_DETECT.
	(CC1_CPU_SPEC): Make conditional on HAVE_LOCAL_CPU_DETECT rather
	than replicating condition above.
	* config.host (i[34567]86-*-*): Always use driver-i386.o.

From-SVN: r117159
This commit is contained in:
Geoffrey Keating 2006-09-22 23:50:51 +00:00 committed by Geoffrey Keating
parent 9281e73dd6
commit 682cd44241
4 changed files with 16 additions and 15 deletions

View File

@ -1,5 +1,12 @@
2006-09-22 Geoffrey Keating <geoffk@apple.com>
* config/i386/driver-i386.c: Always define host_detect_local_cpu.
* config/i386/i386.h: Define EXTRA_SPEC_FUNCTIONS on any i386
or x86_64 host. Define HAVE_LOCAL_CPU_DETECT.
(CC1_CPU_SPEC): Make conditional on HAVE_LOCAL_CPU_DETECT rather
than replicating condition above.
* config.host (i[34567]86-*-*): Always use driver-i386.o.
* config/darwin.h (LINK_SYSROOT_SPEC): New.
(LINK_SPEC): If TARGET_SYSTEM_ROOT is defined, pass it to
the linker by default.

View File

@ -97,11 +97,8 @@ esac
case ${host} in
i[34567]86-*-* \
| x86_64-*-* )
# include the support for -march=native only when not cross compiling
if test x${host} = x${target} ; then
host_extra_gcc_objs="driver-i386.o"
host_xmake_file="${host_xmake_file} i386/x-i386"
fi
host_extra_gcc_objs="driver-i386.o"
host_xmake_file="${host_xmake_file} i386/x-i386"
;;
esac

View File

@ -22,11 +22,6 @@ Boston, MA 02110-1301, USA. */
#include "system.h"
#include <stdlib.h>
#ifndef CROSS_COMPILE
/* This file shouldn't even be included in a cross compiler, but
let's be sure. */
extern const char *host_detect_local_cpu (int argc, const char **argv);
#ifdef GCC_VERSION
#define cpuid(num,a,b,c,d) \
asm volatile ("xchgl %%ebx, %1; cpuid; xchgl %%ebx, %1" \
@ -170,5 +165,4 @@ const char *host_detect_local_cpu (int argc, const char **argv)
{
return concat ("-m", argv[0], "=i386", NULL);
}
#endif
#endif
#endif /* GCC_VERSION */

View File

@ -274,12 +274,15 @@ extern int x86_prefetch_sse;
#define OPTIMIZATION_OPTIONS(LEVEL, SIZE) \
optimization_options ((LEVEL), (SIZE))
/* -march=native handling only makes sense with a native compiler. */
#ifndef CROSS_COMPILE
/* -march=native handling only makes sense with compiler running on
an x86 or x86_64 chip. If changing this condition, also change
the condition in driver-i386.c. */
#if defined(__i386__) || defined(__x86_64__)
/* In driver-i386.c. */
extern const char *host_detect_local_cpu (int argc, const char **argv);
#define EXTRA_SPEC_FUNCTIONS \
{ "local_cpu_detect", host_detect_local_cpu },
#define HAVE_LOCAL_CPU_DETECT
#endif
/* Support for configure-time defaults of some command line options.
@ -311,7 +314,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
%{mno-intel-syntax:-masm=att \
%n`-mno-intel-syntax' is deprecated. Use `-masm=att' instead.\n}"
#ifdef CROSS_COMPILE
#ifndef HAVE_LOCAL_CPU_DETECT
#define CC1_CPU_SPEC CC1_CPU_SPEC_1
#else
#define CC1_CPU_SPEC CC1_CPU_SPEC_1 \