public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/64806] New: [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C
@ 2015-01-26 18:31 hjl.tools at gmail dot com
  2015-01-26 18:32 ` [Bug target/64806] " hjl.tools at gmail dot com
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: hjl.tools at gmail dot com @ 2015-01-26 18:31 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64806

            Bug ID: 64806
           Summary: [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hjl.tools at gmail dot com

r220095 caused:

FAIL: g++.dg/ext/mv1.C  -std=gnu++98 execution test
FAIL: g++.dg/ext/mv1.C  -std=gnu++11 execution test
FAIL: g++.dg/ext/mv1.C  -std=gnu++14 execution test

on Nehalem and Westmere machines.  g++.dg/ext/mv1.C has

int __attribute__ ((target("arch=corei7,popcnt")))
foo ()
{
  return 5;
}

and

int __attribute__ ((target("arch=corei7")))
foo ()
{
  return 6;
}

r220095 changed the priority of P_POPCNT:

diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 9ec40cb..441911d 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -34289,15 +34289,18 @@ get_builtin_code_for_version (tree decl, tree
*predica
te_list)
     P_PROC_SSE4_A,
     P_SSE4_1,
     P_SSE4_2,
-    P_PROC_SSE4_2,
     P_POPCNT,
+    P_PROC_SSE4_2,

On Nehalem and Westmere machines, it selected foo for corei7 instead
of corei7,popcnt since P_PROC_SSE4_2 has the higher priority than
P_POPCNT.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/64806] [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C
  2015-01-26 18:31 [Bug target/64806] New: [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C hjl.tools at gmail dot com
@ 2015-01-26 18:32 ` hjl.tools at gmail dot com
  2015-01-26 18:43 ` [Bug target/64806] [5 Regression] " linux at carewolf dot com
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: hjl.tools at gmail dot com @ 2015-01-26 18:32 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64806

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ubizjak at gmail dot com
   Target Milestone|---                         |5.0


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/64806] [5 Regression] FAIL: g++.dg/ext/mv1.C
  2015-01-26 18:31 [Bug target/64806] New: [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C hjl.tools at gmail dot com
  2015-01-26 18:32 ` [Bug target/64806] " hjl.tools at gmail dot com
@ 2015-01-26 18:43 ` linux at carewolf dot com
  2015-01-26 18:52 ` hjl.tools at gmail dot com
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: linux at carewolf dot com @ 2015-01-26 18:43 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64806

Allan Jensen <linux at carewolf dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |linux at carewolf dot com

--- Comment #1 from Allan Jensen <linux at carewolf dot com> ---
The logic is supposed to be that any arch that includes an extension is
prioritized above that extension, and with POPCNT being part of SSE4a on AMD
and part of SSE 4.2 for Intel, that should be the case.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/64806] [5 Regression] FAIL: g++.dg/ext/mv1.C
  2015-01-26 18:31 [Bug target/64806] New: [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C hjl.tools at gmail dot com
  2015-01-26 18:32 ` [Bug target/64806] " hjl.tools at gmail dot com
  2015-01-26 18:43 ` [Bug target/64806] [5 Regression] " linux at carewolf dot com
@ 2015-01-26 18:52 ` hjl.tools at gmail dot com
  2015-01-26 19:03 ` linux at carewolf dot com
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: hjl.tools at gmail dot com @ 2015-01-26 18:52 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64806

--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Allan Jensen from comment #1)
> The logic is supposed to be that any arch that includes an extension is
> prioritized above that extension, and with POPCNT being part of SSE4a on AMD
> and part of SSE 4.2 for Intel, that should be the case.

The feature priority array, feature_priority, is orthogonal to -march=.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/64806] [5 Regression] FAIL: g++.dg/ext/mv1.C
  2015-01-26 18:31 [Bug target/64806] New: [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C hjl.tools at gmail dot com
                   ` (2 preceding siblings ...)
  2015-01-26 18:52 ` hjl.tools at gmail dot com
@ 2015-01-26 19:03 ` linux at carewolf dot com
  2015-01-26 19:08 ` hjl.tools at gmail dot com
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: linux at carewolf dot com @ 2015-01-26 19:03 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64806

--- Comment #3 from Allan Jensen <linux at carewolf dot com> ---
I refer to this:

  /* Handle arch= if specified.  For priority, set it to be 1 more than
     the best instruction set the processor can handle.  For instance, if
     there is a version for atom and a version for ssse3 (the highest ISA
     priority for atom), the atom version must be checked for dispatch
     before the ssse3 version. */


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/64806] [5 Regression] FAIL: g++.dg/ext/mv1.C
  2015-01-26 18:31 [Bug target/64806] New: [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C hjl.tools at gmail dot com
                   ` (3 preceding siblings ...)
  2015-01-26 19:03 ` linux at carewolf dot com
@ 2015-01-26 19:08 ` hjl.tools at gmail dot com
  2015-01-26 19:32 ` hjl at gcc dot gnu.org
  2015-01-26 19:37 ` hjl.tools at gmail dot com
  6 siblings, 0 replies; 8+ messages in thread
From: hjl.tools at gmail dot com @ 2015-01-26 19:08 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64806

--- Comment #4 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Allan Jensen from comment #3)
> I refer to this:
> 
>   /* Handle arch= if specified.  For priority, set it to be 1 more than
>      the best instruction set the processor can handle.  For instance, if
>      there is a version for atom and a version for ssse3 (the highest ISA
>      priority for atom), the atom version must be checked for dispatch
>      before the ssse3 version. */

That is correct. The issue here is

nt __attribute__ ((target("arch=corei7"))) foo ();

vs

int __attribute__ ((target("arch=corei7,popcnt"))) foo ();

not

int __attribute__ ((target("arch=corei7"))) foo ();

vs

int __attribute__ ((target("popcnt"))) foo ();

What bug does your patch try to fix?


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/64806] [5 Regression] FAIL: g++.dg/ext/mv1.C
  2015-01-26 18:31 [Bug target/64806] New: [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C hjl.tools at gmail dot com
                   ` (4 preceding siblings ...)
  2015-01-26 19:08 ` hjl.tools at gmail dot com
@ 2015-01-26 19:32 ` hjl at gcc dot gnu.org
  2015-01-26 19:37 ` hjl.tools at gmail dot com
  6 siblings, 0 replies; 8+ messages in thread
From: hjl at gcc dot gnu.org @ 2015-01-26 19:32 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64806

--- Comment #5 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> ---
Author: hjl
Date: Mon Jan 26 19:31:55 2015
New Revision: 220131

URL: https://gcc.gnu.org/viewcvs?rev=220131&root=gcc&view=rev
Log:
Revert the last P_POPCNT order change

    PR target/64806
    * config/i386/i386 (feature_priority): Revert the last P_POPCNT
    order change.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/i386.c


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/64806] [5 Regression] FAIL: g++.dg/ext/mv1.C
  2015-01-26 18:31 [Bug target/64806] New: [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C hjl.tools at gmail dot com
                   ` (5 preceding siblings ...)
  2015-01-26 19:32 ` hjl at gcc dot gnu.org
@ 2015-01-26 19:37 ` hjl.tools at gmail dot com
  6 siblings, 0 replies; 8+ messages in thread
From: hjl.tools at gmail dot com @ 2015-01-26 19:37 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64806

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |FIXED

--- Comment #6 from H.J. Lu <hjl.tools at gmail dot com> ---
Fixed.


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-01-26 19:37 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-26 18:31 [Bug target/64806] New: [5 Regression] FAIL: FAIL: g++.dg/ext/mv1.C hjl.tools at gmail dot com
2015-01-26 18:32 ` [Bug target/64806] " hjl.tools at gmail dot com
2015-01-26 18:43 ` [Bug target/64806] [5 Regression] " linux at carewolf dot com
2015-01-26 18:52 ` hjl.tools at gmail dot com
2015-01-26 19:03 ` linux at carewolf dot com
2015-01-26 19:08 ` hjl.tools at gmail dot com
2015-01-26 19:32 ` hjl at gcc dot gnu.org
2015-01-26 19:37 ` hjl.tools at gmail dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).