Commit f36b315d by Uros Bizjak Committed by Uros Bizjak

mpx-check.h (main): Use __get_cpuid_count and return NORUNRES on failure.

	* gcc.target/i386/mpx/mpx-check.h (main): Use __get_cpuid_count
	and return NORUNRES on failure.
	* gcc.target/i386/mpx/va-arg-pack-1-lbv.c (foo1): Use
	__builtin_va_arg_pack instead of __va_arg_pack.
	* gcc.target/i386/mpx/va-arg-pack-1-nov.c (foo1): Ditto.
	* gcc.target/i386/mpx/va-arg-pack-1-ubv.c (foo1): Ditto.
	* gcc.target/i386/mpx/va-arg-pack-2-lbv.c (foo1): Ditto.
	* gcc.target/i386/mpx/va-arg-pack-2-nov.c (foo1): Ditto.
	* gcc.target/i386/mpx/va-arg-pack-2-ubv.c (foo1): Ditto.

From-SVN: r251627
parent 22140cb0
2017-09-03 Uros Bizjak <ubizjak@gmail.com>
* gcc.target/i386/mpx/mpx-check.h (main): Use __get_cpuid_count
and return NORUNRES on failure.
* gcc.target/i386/mpx/va-arg-pack-1-lbv.c (foo1): Use
__builtin_va_arg_pack instead of __va_arg_pack.
* gcc.target/i386/mpx/va-arg-pack-1-nov.c (foo1): Ditto.
* gcc.target/i386/mpx/va-arg-pack-1-ubv.c (foo1): Ditto.
* gcc.target/i386/mpx/va-arg-pack-2-lbv.c (foo1): Ditto.
* gcc.target/i386/mpx/va-arg-pack-2-nov.c (foo1): Ditto.
* gcc.target/i386/mpx/va-arg-pack-2-ubv.c (foo1): Ditto.
2017-09-01 Jakub Jelinek <jakub@redhat.com> 2017-09-01 Jakub Jelinek <jakub@redhat.com>
PR target/81766 PR target/81766
......
...@@ -31,10 +31,8 @@ main (int argc, const char **argv) ...@@ -31,10 +31,8 @@ main (int argc, const char **argv)
{ {
unsigned int eax, ebx, ecx, edx; unsigned int eax, ebx, ecx, edx;
if (__get_cpuid_max (0, NULL) < 7) if (!__get_cpuid_count (7, 0, &eax, &ebx, &ecx, &edx))
return 0; return NORUNRES;
__cpuid_count (7, 0, eax, ebx, ecx, edx);
/* Run MPX test only if host has MPX support. */ /* Run MPX test only if host has MPX support. */
if ((ebx & bit_MPX) && (xgetbv (0) & XSTATE_BNDREGS)) if ((ebx & bit_MPX) && (xgetbv (0) & XSTATE_BNDREGS))
......
...@@ -28,7 +28,7 @@ foo2 (int i1, int *p1, ...) ...@@ -28,7 +28,7 @@ foo2 (int i1, int *p1, ...)
static __attribute__((always_inline)) int static __attribute__((always_inline)) int
foo1 (int *p1, ...) foo1 (int *p1, ...)
{ {
return foo2 (10, p1, __va_arg_pack ()); return foo2 (10, p1, __builtin_va_arg_pack ());
} }
int prebuf[100]; int prebuf[100];
......
...@@ -25,7 +25,7 @@ foo2 (int i1, int *p1, ...) ...@@ -25,7 +25,7 @@ foo2 (int i1, int *p1, ...)
static __attribute__((always_inline)) int static __attribute__((always_inline)) int
foo1 (int *p1, ...) foo1 (int *p1, ...)
{ {
return foo2 (10, p1, __va_arg_pack ()); return foo2 (10, p1, __builtin_va_arg_pack ());
} }
int prebuf[100]; int prebuf[100];
......
...@@ -28,7 +28,7 @@ foo2 (int i1, int *p1, ...) ...@@ -28,7 +28,7 @@ foo2 (int i1, int *p1, ...)
static __attribute__((always_inline)) int static __attribute__((always_inline)) int
foo1 (int *p1, ...) foo1 (int *p1, ...)
{ {
return foo2 (10, p1, __va_arg_pack ()); return foo2 (10, p1, __builtin_va_arg_pack ());
} }
int prebuf[100]; int prebuf[100];
......
...@@ -30,7 +30,7 @@ foo2 (int i1, int *p1, ...) ...@@ -30,7 +30,7 @@ foo2 (int i1, int *p1, ...)
static __attribute__((always_inline)) int static __attribute__((always_inline)) int
foo1 (int *p1, ...) foo1 (int *p1, ...)
{ {
return foo2 (10, p1, __va_arg_pack ()); return foo2 (10, p1, __builtin_va_arg_pack ());
} }
int prebuf[100]; int prebuf[100];
......
...@@ -27,7 +27,7 @@ foo2 (int i1, int *p1, ...) ...@@ -27,7 +27,7 @@ foo2 (int i1, int *p1, ...)
static __attribute__((always_inline)) int static __attribute__((always_inline)) int
foo1 (int *p1, ...) foo1 (int *p1, ...)
{ {
return foo2 (10, p1, __va_arg_pack ()); return foo2 (10, p1, __builtin_va_arg_pack ());
} }
int prebuf[100]; int prebuf[100];
......
...@@ -30,7 +30,7 @@ foo2 (int i1, int *p1, ...) ...@@ -30,7 +30,7 @@ foo2 (int i1, int *p1, ...)
static __attribute__((always_inline)) int static __attribute__((always_inline)) int
foo1 (int *p1, ...) foo1 (int *p1, ...)
{ {
return foo2 (10, p1, __va_arg_pack ()); return foo2 (10, p1, __builtin_va_arg_pack ());
} }
int prebuf[100]; int prebuf[100];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment