gcc/libgomp/testsuite/libgomp.c
Uros Bizjak b3172cabd2 cpuid.h: New file.
* gcc/config/i386/cpuid.h: New file.
	* gcc/config/i386/driver-i386.c: Include cpuid.h.
	(describe_cache): Shrink size and line strings to 100 bytes.
	(detect_caches_amd): Return "" for unsupported max_ext_level.
	Use __cpuid function.
	(detect_caches_intel): Return "" for unsupported max_level.
	Use __cpuid function.
	(host_detect_local_cpu): Change feature flag variables to
	unsigned int.  Initialize only extended feature flag variables.
	Use __get_cpuid_max to determine max supported cpuid level.
	Use __cpuid function to determine supported features.  Fix
	calculation of family id.  Remove is_amd and check signature
	directly.  Check for Geode signature.  Handle family 4 id.
	[PROCESSOR_GENERIC32]: New default for unknown family id. Move
	cpu discovery code to other part of the function.
	[PROCESSOR_PENTIUM, PROCESSOR_K6, PROCESSOR_ATHLON]: Do not tune
	for sub-architecture.
	[PROCESSOR_PENTIUMPRO]: Simplify cpu discovery code.
	[PROCESSOR_K8]: Add k8-sse3 architecture.
	[PROCESSOR_GENERIC64]: Remove.
	* gcc/config/i386/x-i386 (driver-i386.o): Depend on cpuid.h.
	* gcc/config/i386/crtfastmath.c: Include cpuid.h.  Use __get_cpuid
	to check for SSE and FXSAVE support.
	* gcc/config/i386/t-crtfm (crtfastmath.o): Depend on cpuid.h.
	Add -minline-all-stringops.
	* gcc/config.gcc (i[34567]86-*-*): Add cpuid.h to extra_headers.
	(x86_64-*-*): Ditto.

testsuite/ChangeLog:

	* gcc.dg/i386-cpuid.h: Remove.
	* gcc.target/i386/mmx-check.h: Include cpuid.h.  Use __get_cpuid.
	* gcc.target/i386/sse-check.h: Ditto.
	* gcc.target/i386/sse2-check.h: Ditto.
	* gcc.target/i386/sse3-check.h: Ditto.
	* gcc.target/i386/ssse3-check.h: Ditto.
	* gcc.target/i386/sse4_1-check.h: Ditto.
	* gcc.target/i386/sse4_2-check.h: Ditto.
	* gcc.target/i386/sse4a-check.h: Ditto.
	* gcc.dg/torture/pr16104-1.c: Ditto.
	* gcc.target/i386/mmx-4.c: Do not use NOINLINE.
	* gcc.target/i386/sse-6.c: Ditto.
	* gcc.target/i386/sse-7.c: Ditto.
	* g++.dg/other/i386-1.C: Include cpuid.h.
	(main): New function.  Use __get_cpuid to check target fetaures.

libgomp/ChangeLog:

	* testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
	(main): Use __get_cpuid to get i386 target fetaures.
	* testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
	(main): Use __get_cpuid to get x86_64 target fetaures.

From-SVN: r128141
2007-09-05 19:43:01 +02:00
..
appendix-a
atomic-1.c cpuid.h: New file. 2007-09-05 19:43:01 +02:00
atomic-2.c cpuid.h: New file. 2007-09-05 19:43:01 +02:00
atomic-10.c default.exp: New file. 2007-03-22 08:00:08 +01:00
barrier-1.c barrier-1.c: Change timestamp tests from '<' to '<='. 2006-10-06 08:32:33 +00:00
c.exp default.exp: New file. 2007-03-22 08:00:08 +01:00
copyin-1.c
copyin-2.c
copyin-3.c
critical-1.c re PR libgomp/27612 (Tests use __sync_lock_test_and_set_4') 2006-05-22 19:10:45 +00:00
critical-2.c
lib-1.c
loop-1.c re PR libgomp/27612 (Tests use __sync_lock_test_and_set_4') 2006-05-22 19:10:45 +00:00
loop-2.c re PR libgomp/27612 (Tests use __sync_lock_test_and_set_4') 2006-05-22 19:10:45 +00:00
loop-3.c
nested-1.c
nested-2.c
nestedfn-1.c
nestedfn-2.c
nestedfn-3.c
nestedfn-4.c re PR middle-end/25261 ([gomp] Nested function calls in #pragma omp parallel blocks) 2006-09-26 20:10:58 +02:00
nestedfn-5.c re PR middle-end/25261 ([gomp] Nested function calls in #pragma omp parallel blocks) 2006-09-26 20:10:58 +02:00
omp_hello.c
omp_matvec.c
omp_orphan.c
omp_reduction.c
omp_workshare1.c
omp_workshare2.c
omp_workshare3.c
omp_workshare4.c
omp-loop01.c
omp-loop02.c
omp-loop03.c
omp-nested-1.c
omp-parallel-for.c
omp-parallel-if.c
omp-single-1.c
omp-single-2.c
omp-single-3.c
ordered-1.c re PR libgomp/27612 (Tests use __sync_lock_test_and_set_4') 2006-05-22 19:10:45 +00:00
ordered-2.c re PR libgomp/27612 (Tests use __sync_lock_test_and_set_4') 2006-05-22 19:10:45 +00:00
ordered-3.c
parallel-1.c
pr24455-1.c
pr24455.c
pr26171.c
pr26943-1.c re PR c++/26943 ([gomp] firstprivate + lastprivate uses inefficient barrier) 2006-05-02 22:03:38 +02:00
pr26943-2.c re PR c++/26943 ([gomp] firstprivate + lastprivate uses inefficient barrier) 2006-05-02 22:03:38 +02:00
pr26943-3.c re PR c++/26943 ([gomp] firstprivate + lastprivate uses inefficient barrier) 2006-05-02 22:03:38 +02:00
pr26943-4.c re PR c++/26943 ([gomp] firstprivate + lastprivate uses inefficient barrier) 2006-05-02 22:03:38 +02:00
pr29947-1.c default.exp: New file. 2007-03-22 08:00:08 +01:00
pr29947-2.c default.exp: New file. 2007-03-22 08:00:08 +01:00
pr30494.c re PR middle-end/30494 (ICE with VLA and openmp) 2007-01-24 21:56:45 +01:00
pr32362-1.c re PR middle-end/32362 (ICE: in lookup_decl_in_outer_ctx, at omp-low.c:1508) 2007-06-21 14:11:00 +02:00
pr32362-2.c re PR middle-end/32362 (ICE: in lookup_decl_in_outer_ctx, at omp-low.c:1508) 2007-06-21 14:11:00 +02:00
pr32362-3.c re PR middle-end/32362 (ICE: in lookup_decl_in_outer_ctx, at omp-low.c:1508) 2007-06-21 14:11:00 +02:00
pr32468.c re PR libgomp/32468 (number of threads in a parallel region depends on number of SECTIONs and MAX_THREADS) 2007-07-02 21:19:28 +02:00
reduction-1.c
reduction-2.c
reduction-3.c
reduction-4.c
sections-1.c re PR libgomp/27612 (Tests use __sync_lock_test_and_set_4') 2006-05-22 19:10:45 +00:00
shared-1.c
shared-2.c
shared-3.c
single-1.c re PR libgomp/27612 (Tests use __sync_lock_test_and_set_4') 2006-05-22 19:10:45 +00:00
single-2.c
vla-1.c