public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/115370] New: [15 regression] gcc.target/i386/pr77881.c FAIL
@ 2024-06-06 9:05 hongyuw at gcc dot gnu.org
2024-06-06 9:10 ` [Bug target/115370] " hongyuw at gcc dot gnu.org
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: hongyuw at gcc dot gnu.org @ 2024-06-06 9:05 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115370
Bug ID: 115370
Summary: [15 regression] gcc.target/i386/pr77881.c FAIL
Product: gcc
Version: 15.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: hongyuw at gcc dot gnu.org
Target Milestone: ---
After x86 ccmp supported with r15-1060-g0b6cea8783b9e1, there is a new fail
FAIL: gcc.target/i386/pr77881.c scan-assembler js[ \t].?L
The codegen changed from
testq %rdi, %rdi
js .L4
testl %edx, %edx
jne .L4
ret
to
shrq $63, %rdi
testl %edx, %edx
setne %al
orb %dil, %al
jne .L11
ret
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/115370] [15 regression] gcc.target/i386/pr77881.c FAIL
2024-06-06 9:05 [Bug target/115370] New: [15 regression] gcc.target/i386/pr77881.c FAIL hongyuw at gcc dot gnu.org
@ 2024-06-06 9:10 ` hongyuw at gcc dot gnu.org
2024-06-06 9:26 ` liuhongt at gcc dot gnu.org
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: hongyuw at gcc dot gnu.org @ 2024-06-06 9:10 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115370
Hongyu Wang <hongyuw at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target| |x86_64-*-*, i?86-*-*
--- Comment #1 from Hongyu Wang <hongyuw at gcc dot gnu.org> ---
The issue was in cfgexpand.cc:2648
/* If jumps are cheap and the target does not support conditional
compare, turn some more codes into jumpy sequences. */
else if (BRANCH_COST (optimize_insn_for_speed_p (), false) < 4
&& targetm.gen_ccmp_first == NULL)
{
Now in x86 we defined targetm.gen_ccmp_first, but it doesn't mean ccmp is
enabled by default as it requires -mapxf.
Guess we need a new target hook have_ccmp.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/115370] [15 regression] gcc.target/i386/pr77881.c FAIL
2024-06-06 9:05 [Bug target/115370] New: [15 regression] gcc.target/i386/pr77881.c FAIL hongyuw at gcc dot gnu.org
2024-06-06 9:10 ` [Bug target/115370] " hongyuw at gcc dot gnu.org
@ 2024-06-06 9:26 ` liuhongt at gcc dot gnu.org
2024-06-06 11:37 ` rguenth at gcc dot gnu.org
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: liuhongt at gcc dot gnu.org @ 2024-06-06 9:26 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115370
Hongtao Liu <liuhongt at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |liuhongt at gcc dot gnu.org
--- Comment #2 from Hongtao Liu <liuhongt at gcc dot gnu.org> ---
We can add a target_hook, targetm.support_ccmp_p, default implementation can be
targetm.gen_ccmp_first == NULL
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/115370] [15 regression] gcc.target/i386/pr77881.c FAIL
2024-06-06 9:05 [Bug target/115370] New: [15 regression] gcc.target/i386/pr77881.c FAIL hongyuw at gcc dot gnu.org
2024-06-06 9:10 ` [Bug target/115370] " hongyuw at gcc dot gnu.org
2024-06-06 9:26 ` liuhongt at gcc dot gnu.org
@ 2024-06-06 11:37 ` rguenth at gcc dot gnu.org
2024-06-12 15:41 ` pinskia at gcc dot gnu.org
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu.org @ 2024-06-06 11:37 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115370
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |15.0
Keywords| |missed-optimization
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/115370] [15 regression] gcc.target/i386/pr77881.c FAIL
2024-06-06 9:05 [Bug target/115370] New: [15 regression] gcc.target/i386/pr77881.c FAIL hongyuw at gcc dot gnu.org
` (2 preceding siblings ...)
2024-06-06 11:37 ` rguenth at gcc dot gnu.org
@ 2024-06-12 15:41 ` pinskia at gcc dot gnu.org
2024-06-13 14:04 ` cvs-commit at gcc dot gnu.org
2024-06-13 14:08 ` hongyuw at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu.org @ 2024-06-12 15:41 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115370
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever confirmed|0 |1
Last reconfirmed| |2024-06-12
CC| |pinskia at gcc dot gnu.org
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Confirmed.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/115370] [15 regression] gcc.target/i386/pr77881.c FAIL
2024-06-06 9:05 [Bug target/115370] New: [15 regression] gcc.target/i386/pr77881.c FAIL hongyuw at gcc dot gnu.org
` (3 preceding siblings ...)
2024-06-12 15:41 ` pinskia at gcc dot gnu.org
@ 2024-06-13 14:04 ` cvs-commit at gcc dot gnu.org
2024-06-13 14:08 ` hongyuw at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2024-06-13 14:04 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115370
--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Hongyu Wang <hongyuw@gcc.gnu.org>:
https://gcc.gnu.org/g:83a765768510d1f329887116757d6818d7846717
commit r15-1293-g83a765768510d1f329887116757d6818d7846717
Author: Hongyu Wang <hongyu.wang@intel.com>
Date: Thu Jun 13 00:18:32 2024 +0800
[APX CCMP] Add targetm.have_ccmp hook [PR115370]
In cfgexpand, there is an optimization for branch which tests
targetm.gen_ccmp_first == NULL. However for target like x86-64, the
hook was implemented but it does not indicate that ccmp was enabled.
Add a new target hook TARGET_HAVE_CCMP and replace the middle-end
check for the existance of gen_ccmp_first to avoid misoptimization.
gcc/ChangeLog:
PR target/115370
PR target/115463
* target.def (have_ccmp): New target hook.
* targhooks.cc (default_have_ccmp): New function.
* targhooks.h (default_have_ccmp): New prototype.
* doc/tm.texi.in: Add TARGET_HAVE_CCMP.
* doc/tm.texi: Regenerate.
* cfgexpand.cc (expand_gimple_cond): Call targetm.have_ccmp
instead of checking if targetm.gen_ccmp_first exists.
* expr.cc (expand_expr_real_gassign): Likewise.
* config/i386/i386.cc (ix86_have_ccmp): New target hook to
check if APX_CCMP enabled.
(TARGET_HAVE_CCMP): Define.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/115370] [15 regression] gcc.target/i386/pr77881.c FAIL
2024-06-06 9:05 [Bug target/115370] New: [15 regression] gcc.target/i386/pr77881.c FAIL hongyuw at gcc dot gnu.org
` (4 preceding siblings ...)
2024-06-13 14:04 ` cvs-commit at gcc dot gnu.org
@ 2024-06-13 14:08 ` hongyuw at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: hongyuw at gcc dot gnu.org @ 2024-06-13 14:08 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115370
Hongyu Wang <hongyuw at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Status|NEW |RESOLVED
--- Comment #5 from Hongyu Wang <hongyuw at gcc dot gnu.org> ---
Fixed on GCC15.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-06-13 14:08 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-06-06 9:05 [Bug target/115370] New: [15 regression] gcc.target/i386/pr77881.c FAIL hongyuw at gcc dot gnu.org
2024-06-06 9:10 ` [Bug target/115370] " hongyuw at gcc dot gnu.org
2024-06-06 9:26 ` liuhongt at gcc dot gnu.org
2024-06-06 11:37 ` rguenth at gcc dot gnu.org
2024-06-12 15:41 ` pinskia at gcc dot gnu.org
2024-06-13 14:04 ` cvs-commit at gcc dot gnu.org
2024-06-13 14:08 ` hongyuw at gcc dot gnu.org
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).