{"id":809356,"url":"http://patchwork.ozlabs.org/api/patches/809356/?format=json","web_url":"http://patchwork.ozlabs.org/project/gcc/patch/CAFULd4Y=k9ZiB_HGxAwgR9q+EpYzjfGOMVQ9ntCAYNQ3raLE0Q@mail.gmail.com/","project":{"id":17,"url":"http://patchwork.ozlabs.org/api/projects/17/?format=json","name":"GNU Compiler Collection","link_name":"gcc","list_id":"gcc-patches.gcc.gnu.org","list_email":"gcc-patches@gcc.gnu.org","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<CAFULd4Y=k9ZiB_HGxAwgR9q+EpYzjfGOMVQ9ntCAYNQ3raLE0Q@mail.gmail.com>","list_archive_url":null,"date":"2017-09-03T21:14:51","name":"[i386] : Fix some mpx tests for older systems","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"57861c5daf216d0f5418e07fcfa43ae74fc0e05d","submitter":{"id":808,"url":"http://patchwork.ozlabs.org/api/people/808/?format=json","name":"Uros Bizjak","email":"ubizjak@gmail.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/gcc/patch/CAFULd4Y=k9ZiB_HGxAwgR9q+EpYzjfGOMVQ9ntCAYNQ3raLE0Q@mail.gmail.com/mbox/","series":[{"id":1275,"url":"http://patchwork.ozlabs.org/api/series/1275/?format=json","web_url":"http://patchwork.ozlabs.org/project/gcc/list/?series=1275","date":"2017-09-03T21:14:51","name":"[i386] : Fix some mpx tests for older systems","version":1,"mbox":"http://patchwork.ozlabs.org/series/1275/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/809356/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/809356/checks/","tags":{},"related":[],"headers":{"Return-Path":"<gcc-patches-return-461367-incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","mailing list gcc-patches@gcc.gnu.org"],"Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=gcc.gnu.org\n\t(client-ip=209.132.180.131; helo=sourceware.org;\n\tenvelope-from=gcc-patches-return-461367-incoming=patchwork.ozlabs.org@gcc.gnu.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (1024-bit key;\n\tunprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org\n\theader.b=\"vPSswrWc\"; dkim-atps=neutral","sourceware.org; auth=none"],"Received":["from sourceware.org (server1.sourceware.org [209.132.180.131])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xlm321WTjz9sP3\n\tfor <incoming@patchwork.ozlabs.org>;\n\tMon,  4 Sep 2017 07:15:07 +1000 (AEST)","(qmail 39379 invoked by alias); 3 Sep 2017 21:14:59 -0000","(qmail 38618 invoked by uid 89); 3 Sep 2017 21:14:58 -0000","from mail-ua0-f182.google.com (HELO mail-ua0-f182.google.com)\n\t(209.85.217.182) by sourceware.org\n\t(qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP;\n\tSun, 03 Sep 2017 21:14:53 +0000","by mail-ua0-f182.google.com with SMTP id g47so10753956uad.0 for\n\t<gcc-patches@gcc.gnu.org>; Sun, 03 Sep 2017 14:14:53 -0700 (PDT)","by 10.103.55.28 with HTTP; Sun, 3 Sep 2017 14:14:51 -0700 (PDT)"],"DomainKey-Signature":"a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id\n\t:list-unsubscribe:list-archive:list-post:list-help:sender\n\t:mime-version:from:date:message-id:subject:to:content-type; q=\n\tdns; s=default; b=Kv3rlOq3KxPBgrXaxzOrnffd5e/A4XCVs1ZvuHrAaCfU4R\n\tn6tf0N5b+CZ22FrwavqPWlMy2T8xPe4CMOy0s2CvFOoyw7hEAgB5oJsAl3KCX12/\n\tYOWHCxIId5zq4eiJ4fmU1rrwPqLOprBpvmVa4a3cY7b+M57PICpuLpH9JZ1wA=","DKIM-Signature":"v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id\n\t:list-unsubscribe:list-archive:list-post:list-help:sender\n\t:mime-version:from:date:message-id:subject:to:content-type; s=\n\tdefault; bh=/F4qbNnOzPfEJs0kPIdRWepNWSY=; b=vPSswrWcdrXaAbnjutA4\n\ted5spy9NDaZq14AY6QGuWLoE7LQapNymR99DSugTwfoq72OSPI2gTHtOvjrasgxo\n\t15t0r23bNiL2lb59h1Uzv3SyB6NwBGc9WILKynfZbrGxYt9B1X8wIdaetijD3Ubt\n\tIStcWBNE6U6fYwbnzKrmu4E=","Mailing-List":"contact gcc-patches-help@gcc.gnu.org; run by ezmlm","Precedence":"bulk","List-Id":"<gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<mailto:gcc-patches-unsubscribe-incoming=patchwork.ozlabs.org@gcc.gnu.org>","List-Archive":"<http://gcc.gnu.org/ml/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-help@gcc.gnu.org>","Sender":"gcc-patches-owner@gcc.gnu.org","X-Virus-Found":"No","X-Spam-SWARE-Status":"No, score=-24.3 required=5.0 tests=AWL, BAYES_00,\n\tFREEMAIL_FROM, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2,\n\tGIT_PATCH_3, RCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM,\n\tSPF_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:4231","X-HELO":"mail-ua0-f182.google.com","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net;\n\ts=20161025;\n\th=x-gm-message-state:mime-version:from:date:message-id:subject:to;\n\tbh=sHxhR7kQaE4Ax8mBVkIRGGNEi3IbEYMs6jK3ODjw6Qk=;\n\tb=XM5Pa8KujAW7a7bC/rfvbZ6NN0vbkw38zZtAkGGQR1rqMHU7kWIYF3EIQ3ZXc7QNl4\n\t7e3RSrcuL2xP4LUxG6XZjBeQsy8NMWS+KFpZmEB43VYrGMfbpTCdzkyTmcMbayPEJB7d\n\tMngQM4xUzFz8UGP87xpuGEvVyBeR6MbqCYaiXO5I+5YVcFON/xgsb+G8bV/y3L2yqg6T\n\tPfqJW+qTzcQjFzDWHEx5A4/Ft2h/NZrnBehSYOwGrTT7O209rHC5LJtlfYI3AMWrrqw3\n\tMgt2dO34PPRWeZSbEhIw3TpyJFIB/vDKirFjWr1WvvYpcSp6Iu6Ham6nVg3ud6bqJbMj\n\tfR9A==","X-Gm-Message-State":"AHPjjUjbVmxDkM862fqHbsRkWxL1jxDUcJbpt5+carNAKvpMWtEIz2Pi\tyf5TzLAJB5HYPNh/62EvFI2gGtj6xg7Q","X-Google-Smtp-Source":"ADKCNb5m+JVZQ4oj1wlo7pxwAM/TbAXVYiqGRyOu2vWvQqvziCd0Och5zfOutWYPuaUxfLz1XOHKUE4dEbqqxMeSgPw=","X-Received":"by 10.176.64.6 with SMTP id h6mr5803522uad.1.1504473291706;\n\tSun, 03 Sep 2017 14:14:51 -0700 (PDT)","MIME-Version":"1.0","From":"Uros Bizjak <ubizjak@gmail.com>","Date":"Sun, 3 Sep 2017 23:14:51 +0200","Message-ID":"<CAFULd4Y=k9ZiB_HGxAwgR9q+EpYzjfGOMVQ9ntCAYNQ3raLE0Q@mail.gmail.com>","Subject":"[PATCH, i386]: Fix some mpx tests for older systems","To":"\"gcc-patches@gcc.gnu.org\" <gcc-patches@gcc.gnu.org>","Content-Type":"multipart/mixed; boundary=\"94eb2c1245aa206a9205584f7c35\""},"content":"2017-09-03  Uros Bizjak  <ubizjak@gmail.com>\n\n    * gcc.target/i386/mpx/mpx-check.h (main): Use __get_cpuid_count\n    and return NORUNRES on failure.\n    * gcc.target/i386/mpx/va-arg-pack-1-lbv.c (foo1): Use\n    __builtin_va_arg_pack instead of __va_arg_pack.\n    * gcc.target/i386/mpx/va-arg-pack-1-nov.c (foo1): Ditto.\n    * gcc.target/i386/mpx/va-arg-pack-1-ubv.c (foo1): Ditto.\n    * gcc.target/i386/mpx/va-arg-pack-2-lbv.c (foo1): Ditto.\n    * gcc.target/i386/mpx/va-arg-pack-2-nov.c (foo1): Ditto.\n    * gcc.target/i386/mpx/va-arg-pack-2-ubv.c (foo1): Ditto.\n\nTested on x86_64-linux-gnu and committed to mainline SVN.\n\nUros.","diff":"diff --git a/gcc/testsuite/gcc.target/i386/mpx/mpx-check.h b/gcc/testsuite/gcc.target/i386/mpx/mpx-check.h\nindex 73aa01f..dd90fbd 100644\n--- a/gcc/testsuite/gcc.target/i386/mpx/mpx-check.h\n+++ b/gcc/testsuite/gcc.target/i386/mpx/mpx-check.h\n@@ -31,10 +31,8 @@ main (int argc, const char **argv)\n {\n   unsigned int eax, ebx, ecx, edx;\n \n-  if (__get_cpuid_max (0, NULL) < 7)\n-    return 0;\n-\n-  __cpuid_count (7, 0, eax, ebx, ecx, edx);\n+  if (!__get_cpuid_count (7, 0, &eax, &ebx, &ecx, &edx))\n+    return NORUNRES;\n \n   /* Run MPX test only if host has MPX support.  */\n   if ((ebx & bit_MPX) && (xgetbv (0) & XSTATE_BNDREGS))\ndiff --git a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-lbv.c b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-lbv.c\nindex 5aa6007..bbbb256 100644\n--- a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-lbv.c\n+++ b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-lbv.c\n@@ -28,7 +28,7 @@ foo2 (int i1, int *p1, ...)\n static __attribute__((always_inline)) int\n foo1 (int *p1, ...)\n {\n-  return foo2 (10, p1, __va_arg_pack ());\n+  return foo2 (10, p1, __builtin_va_arg_pack ());\n }\n \n int prebuf[100];\ndiff --git a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-nov.c b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-nov.c\nindex 55c65d9..4beda02 100644\n--- a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-nov.c\n+++ b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-nov.c\n@@ -25,7 +25,7 @@ foo2 (int i1, int *p1, ...)\n static __attribute__((always_inline)) int\n foo1 (int *p1, ...)\n {\n-  return foo2 (10, p1, __va_arg_pack ());\n+  return foo2 (10, p1, __builtin_va_arg_pack ());\n }\n \n int prebuf[100];\ndiff --git a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-ubv.c b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-ubv.c\nindex 11b498e..4b76384 100644\n--- a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-ubv.c\n+++ b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-1-ubv.c\n@@ -28,7 +28,7 @@ foo2 (int i1, int *p1, ...)\n static __attribute__((always_inline)) int\n foo1 (int *p1, ...)\n {\n-  return foo2 (10, p1, __va_arg_pack ());\n+  return foo2 (10, p1, __builtin_va_arg_pack ());\n }\n \n int prebuf[100];\ndiff --git a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-lbv.c b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-lbv.c\nindex 9f1941d..dab1dc8 100644\n--- a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-lbv.c\n+++ b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-lbv.c\n@@ -30,7 +30,7 @@ foo2 (int i1, int *p1, ...)\n static __attribute__((always_inline)) int\n foo1 (int *p1, ...)\n {\n-  return foo2 (10, p1, __va_arg_pack ());\n+  return foo2 (10, p1, __builtin_va_arg_pack ());\n }\n \n int prebuf[100];\ndiff --git a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-nov.c b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-nov.c\nindex 903afbc..6bf4721 100644\n--- a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-nov.c\n+++ b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-nov.c\n@@ -27,7 +27,7 @@ foo2 (int i1, int *p1, ...)\n static __attribute__((always_inline)) int\n foo1 (int *p1, ...)\n {\n-  return foo2 (10, p1, __va_arg_pack ());\n+  return foo2 (10, p1, __builtin_va_arg_pack ());\n }\n \n int prebuf[100];\ndiff --git a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-ubv.c b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-ubv.c\nindex f5d842a..4af5975 100644\n--- a/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-ubv.c\n+++ b/gcc/testsuite/gcc.target/i386/mpx/va-arg-pack-2-ubv.c\n@@ -30,7 +30,7 @@ foo2 (int i1, int *p1, ...)\n static __attribute__((always_inline)) int\n foo1 (int *p1, ...)\n {\n-  return foo2 (10, p1, __va_arg_pack ());\n+  return foo2 (10, p1, __builtin_va_arg_pack ());\n }\n \n int prebuf[100];\n","prefixes":["i386"]}