[Bug target/64243] Passing and returning structures with single member of floating type via SSE registers is wrong on Windows x86-64 ABI

2020-12-30 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64243 --- Comment #5 from Uroš Bizjak --- This is fixed in gcc-11: --cut here-- struct TestFloat { float x; }; struct TestDouble { double x; }; struct TestFloat foo (struct TestFloat x) { return x; } struct TestDouble bar (struct TestDouble x) {

[Bug target/64243] Passing and returning structures with single member of floating type via SSE registers is wrong on Windows x86-64 ABI

2020-12-30 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64243 Uroš Bizjak changed: What|Removed |Added CC||10walls at gmail dot com --- Comment #4

[Bug rtl-optimization/98439] [11 Regression] ICE in final_scan_insn_1, at final.c:3096

2020-12-28 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98439 --- Comment #3 from Uroš Bizjak --- I don't think this is a backend bug. The position of split pass in the pass sequence assumes that no split candidates will be emitted after regstack, as can be seen from the gate function of the

[Bug rtl-optimization/97684] [11 Regression] ICE in reg_preferred_class, at reginfo.c:789

2020-12-27 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97684 Uroš Bizjak changed: What|Removed |Added Component|target |rtl-optimization Ever confirmed|0

[Bug rtl-optimization/98439] [11 Regression] ICE in final_scan_insn_1, at final.c:3096

2020-12-27 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98439 Uroš Bizjak changed: What|Removed |Added Component|target |rtl-optimization Last reconfirmed|

[Bug target/92658] x86 lacks vector extend / truncate

2020-12-25 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92658 --- Comment #22 from Uroš Bizjak --- (In reply to Hongtao.liu from comment #21) > Add define_code_attr like aarch64/iterators.md? > > -- > ;; Map rtl objects to optab names > (define_code_attr optab [(ashift "ashl") >

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-12-23 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 Uroš Bizjak changed: What|Removed |Added Resolution|--- |FIXED Status|ASSIGNED

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-12-23 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 --- Comment #22 from Uroš Bizjak --- https://gcc.gnu.org/g:edb28850520d1137d12a1cc1c0e89c11e6b0c6ef commit r8-10691-gedb28850520d1137d12a1cc1c0e89c11e6b0c6ef Author: Uros Bizjak Date: Wed Dec 23 09:18:12 2020 +0100 i386: Fix

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-12-23 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 --- Comment #21 from Uroš Bizjak --- https://gcc.gnu.org/g:c40b640ebcef1aae78eaca56e04d204dda9e4cad commit r9-9126-gc40b640ebcef1aae78eaca56e04d204dda9e4cad Author: Uros Bizjak Date: Wed Dec 23 09:09:29 2020 +0100 i386: Fix

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-12-22 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 --- Comment #20 from Uroš Bizjak --- https://gcc.gnu.org/g:0bf0e0b86d3e2f12555479096baaf0ca7a9f7ac6 commit r10-9164-g0bf0e0b86d3e2f12555479096baaf0ca7a9f7ac6 Author: Uros Bizjak Date: Tue Dec 22 21:11:51 2020 +0100 i386: Fix

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-12-22 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 --- Comment #19 from Uroš Bizjak --- https://gcc.gnu.org/g:337ed0eb490b14899f4049bc4c8922eb1d8a2e67 commit r11-6303-g337ed0eb490b14899f4049bc4c8922eb1d8a2e67 Author: Uros Bizjak Date: Tue Dec 22 18:13:24 2020 +0100 i386: Fix

[Bug middle-end/98420] New: Invalid simplification of x - x with -frounding-math

2020-12-22 Thread ubizjak at gmail dot com via Gcc-bugs
Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: ubizjak at gmail dot com Target Milestone: --- Split out from PR96793, where Marc says in c13: -q- x-x does depend on the rounding mode (the transformation in match.pd gets it wrong, by the way). -/q

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-12-22 Thread ubizjak at gmail dot com via Gcc-bugs
at gcc dot gnu.org |ubizjak at gmail dot com --- Comment #18 from Uroš Bizjak --- Created attachment 49833 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49833=edit Proposed patch Proposed patch that removes the sign from a temporary with FE_DOWNWARD, where x - x = -0.0

[Bug target/98060] Failure to optimize cmp+setnb+add to cmp+sbb

2020-12-18 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98060 Uroš Bizjak changed: What|Removed |Added Target Milestone|--- |12.0

[Bug other/98375] [meta bug] GCC 12 pending patches

2020-12-18 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98375 Uroš Bizjak changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug other/98375] New: [meta bug] GCC 12 pending patches

2020-12-18 Thread ubizjak at gmail dot com via Gcc-bugs
Assignee: unassigned at gcc dot gnu.org Reporter: ubizjak at gmail dot com Target Milestone: --- This metabug is used to track all the patches which have been written during Stage 3 of GCC 11 but do not qualify for that stage, and are waiting for Stage 1 of GCC 12 to be applied

[Bug target/98218] [TARGET_MMX_WITH_SSE] Miss vec_cmpmn/vcondmn expander for 64bit vector

2020-12-18 Thread ubizjak at gmail dot com via Gcc-bugs
-*-* i?86-*-* |x86 Status|NEW |ASSIGNED Host|x86_64-pc-linux-gnu | Target Milestone|--- |12.0 Assignee|unassigned at gcc dot gnu.org |ubizjak at gmail dot com

[Bug target/98218] [TARGET_MMX_WITH_SSE] Miss vec_cmpmn/vcondmn expander for 64bit vector

2020-12-18 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98218 --- Comment #3 from Uroš Bizjak --- Testcase 1: --cut here-- typedef short vec __attribute__((vector_size(8))); typedef unsigned short uvec __attribute__((vector_size(8))); vec lt (vec a, vec b) { return a < b; } vec le (vec a, vec b) { return

[Bug target/98218] [TARGET_MMX_WITH_SSE] Miss vec_cmpmn/vcondmn expander for 64bit vector

2020-12-18 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98218 --- Comment #2 from Uroš Bizjak --- Created attachment 49796 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49796=edit Proposed patch to implement integer vector compares Attached patch implements integer vector compares.

[Bug tree-optimization/98169] isnan pattern not folded

2020-12-10 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98169 --- Comment #7 from Uroš Bizjak --- (In reply to Jakub Jelinek from comment #6) > Not familiar with the 64-bit vector support myself, CCing Uros on that. PR98218

[Bug tree-optimization/91384] [8/9/10/11 Regression] Compare with negation is not eliminated

2020-12-10 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91384 --- Comment #8 from Uroš Bizjak --- (In reply to Jakub Jelinek from comment #1) > Started with r223689. Though, generally that change looks like a useful > GIMPLE canonicalization. How about we amend the above change to: diff --git

[Bug tree-optimization/91384] [8/9/10/11 Regression] Compare with negation is not eliminated

2020-12-10 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91384 --- Comment #7 from Uroš Bizjak --- Still happens on trunk.

[Bug rtl-optimization/78952] Combine does not convert 8-bit sign-extract to a zero-extract for QImode operations

2020-12-10 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78952 Uroš Bizjak changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[Bug rtl-optimization/78952] Combine does not convert 8-bit sign-extract to a zero-extract for QImode operations

2020-12-10 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78952 Uroš Bizjak changed: What|Removed |Added Target Milestone|--- |9.0 --- Comment #7 from Uroš Bizjak ---

[Bug target/95046] Vectorize V2SFmode operations

2020-12-10 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95046 Uroš Bizjak changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug target/95750] [x86] Use dummy atomic insn instead of mfence in __atomic_thread_fence(seq_cst)

2020-12-10 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95750 Uroš Bizjak changed: What|Removed |Added Target Milestone|--- |11.0 Resolution|---

[Bug rtl-optimization/98212] [10/11 Regression] X86 unoptimal code for float equallity comparison followed by jump

2020-12-09 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98212 --- Comment #2 from Uroš Bizjak --- f1 is currently unoptimal by design, the compiler is unable to merge trapping and non-trapping instructions. There is already a PR for that. f2 is not optimal. The conditional jump to the unconditional jump

[Bug target/92469] ICE: output_operand: invalid use of register 'frame' in 7/8/9/10

2020-12-08 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92469 --- Comment #11 from Uroš Bizjak --- *** Bug 98194 has been marked as a duplicate of this bug. ***

[Bug target/98194] [9/10/11 Regression]internal compiler error: output_operand: invalid use of register 'frame'

2020-12-08 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98194 Uroš Bizjak changed: What|Removed |Added Resolution|--- |DUPLICATE Status|UNCONFIRMED

[Bug rtl-optimization/98178] Combine splitter does not split to single instruction

2020-12-07 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98178 --- Comment #2 from Uroš Bizjak --- On a related note, the combine splitter is a very mysterious beast, and does not easily tell, why the particular combination is rejected. Without any debug in debug logs it is very frustrating to figure out

[Bug rtl-optimization/98178] Combine splitter does not split to single instruction

2020-12-07 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98178 --- Comment #1 from Uroš Bizjak --- The attached patch with the following testcase: --cut here-- int test (int a, int b) { return a << (b & 31); } --cut here-- fails to generate a single shift insn, because it does not trigger the call to

[Bug rtl-optimization/98178] New: Combine splitter does not split to single instruction

2020-12-07 Thread ubizjak at gmail dot com via Gcc-bugs
Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: ubizjak at gmail dot com Target Milestone: --- Created attachment 49697 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49697=edit Proof-of-concept target patch to reimplement shift insn splitt

[Bug target/98086] [9/10/11 Regression] ICE in extract_insn, at recog.c:2315

2020-12-03 Thread ubizjak at gmail dot com via Gcc-bugs
|RESOLVED Assignee|jakub at gcc dot gnu.org |ubizjak at gmail dot com --- Comment #8 from Uroš Bizjak --- Fixed for gcc-9.4, gcc-10.3 and gcc-11.0.

[Bug target/98086] [9/10/11 Regression] ICE in extract_insn, at recog.c:2315

2020-12-03 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98086 --- Comment #7 from Uroš Bizjak --- https://gcc.gnu.org/g:521c839fad4e4a30cdadda254fb3f07706285033 commit r9-9096-g521c839fad4e4a30cdadda254fb3f07706285033 Author: Uros Bizjak Date: Thu Dec 3 19:08:23 2020 +0100 i386: Fix up

[Bug target/98086] [9/10/11 Regression] ICE in extract_insn, at recog.c:2315

2020-12-03 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98086 --- Comment #6 from Uroš Bizjak --- https://gcc.gnu.org/g:4fa2ab664324eca33bd67981698c453820f70b86 commit r10-9116-g4fa2ab664324eca33bd67981698c453820f70b86 Author: Uros Bizjak Date: Thu Dec 3 17:49:42 2020 +0100 i386: Fix up

[Bug target/98086] [9/10/11 Regression] ICE in extract_insn, at recog.c:2315

2020-12-03 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98086 --- Comment #5 from Uroš Bizjak --- https://gcc.gnu.org/g:756f55e62f73eb32787497eb9e564d4b21a6e637 commit r11-5713-g756f55e62f73eb32787497eb9e564d4b21a6e637 Author: Uros Bizjak Date: Thu Dec 3 17:49:42 2020 +0100 i386: Fix up

[Bug target/98086] [9/10/11 Regression] ICE in extract_insn, at recog.c:2315

2020-12-03 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98086 Uroš Bizjak changed: What|Removed |Added Attachment #49661|0 |1 is obsolete|

[Bug target/98060] Failure to optimize cmp+setnb+add to cmp+sbb

2020-12-02 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98060 Uroš Bizjak changed: What|Removed |Added Attachment #49663|0 |1 is obsolete|

[Bug target/98060] Failure to optimize cmp+setnb+add to cmp+sbb

2020-12-02 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98060 Uroš Bizjak changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |ubizjak at gmail dot com

[Bug target/98060] Failure to optimize cmp+setnb+add to cmp+sbb

2020-12-02 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98060 --- Comment #2 from Uroš Bizjak --- Created attachment 49662 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49662=edit Testcases

[Bug tree-optimization/98095] New: Optimize __builtin_unordered (...) || __builtin_is{less,greater}{,equal}

2020-12-02 Thread ubizjak at gmail dot com via Gcc-bugs
: enhancement Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: ubizjak at gmail dot com Target Milestone: --- These two functions are equivalent: int t3 (float a, float b) { return __builtin_isless (a, b

[Bug target/98079] [11 Regression] ICE in extract_insn, at recog.c:2315 since r11-5429-gacdf30d66cac1175

2020-12-01 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98079 Uroš Bizjak changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug target/98079] [11 Regression] ICE in extract_insn, at recog.c:2315 since r11-5429-gacdf30d66cac1175

2020-12-01 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98079 --- Comment #3 from Uroš Bizjak --- https://gcc.gnu.org/g:018248ef6d03ca0088d5928928f966df99af134c commit r11-5644-g018248ef6d03ca0088d5928928f966df99af134c Author: Uros Bizjak Date: Wed Dec 2 08:15:03 2020 +0100 i386: Fix abs an maxmin

[Bug testsuite/98036] gcc.target/i386/xop-hsubX.c is broken

2020-12-01 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98036 Uroš Bizjak changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[Bug testsuite/98036] gcc.target/i386/xop-hsubX.c is broken

2020-12-01 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98036 --- Comment #8 from Uroš Bizjak --- Fixed by the above change for gcc-10 and gcc-11. (I don't know why cvs-commit hook hates my commits...)

[Bug testsuite/98036] gcc.target/i386/xop-hsubX.c is broken

2020-12-01 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98036 --- Comment #7 from Uroš Bizjak --- https://gcc.gnu.org/g:67138ea1b041fe1637da6b3568f064f172d9358c commit r11-5501-g67138ea1b041fe1637da6b3568f064f172d9358c Author: Uros Bizjak Date: Fri Nov 27 18:41:56 2020 +0100 testsuite/i386: Fix

[Bug target/98079] [11 Regression] ICE in extract_insn, at recog.c:2315 since r11-5429-gacdf30d66cac1175

2020-12-01 Thread ubizjak at gmail dot com via Gcc-bugs
at gcc dot gnu.org |ubizjak at gmail dot com --- Comment #2 from Uroš Bizjak --- Created attachment 49660 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49660=edit Proposed patch

[Bug target/98079] [11 Regression] ICE in extract_insn, at recog.c:2315 since r11-5429-gacdf30d66cac1175

2020-12-01 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98079 --- Comment #1 from Uroš Bizjak --- Have to disable expanders for TARGET_PARTIAL_REG_STALL.

[Bug target/98060] Failure to optimize cmp+setnb+add to cmp+sbb

2020-11-30 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98060 Uroš Bizjak changed: What|Removed |Added Severity|normal |enhancement Last reconfirmed|

[Bug tree-optimization/98048] [11 Regression] ICE in build_vector_from_val, at tree.c:1985 by r11-5429

2020-11-29 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98048 Uroš Bizjak changed: What|Removed |Added Component|target |tree-optimization --- Comment #2 from

[Bug testsuite/98036] gcc.target/i386/xop-hsubX.c is broken

2020-11-27 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98036 --- Comment #5 from Uroš Bizjak --- Oh... --cut here-- diff --git a/gcc/testsuite/gcc.target/i386/xop-hsubX.c b/gcc/testsuite/gcc.target/i386/xop-hsubX.c index f0fa9b312f2..dc7944d8bb7 100644 --- a/gcc/testsuite/gcc.target/i386/xop-hsubX.c +++

[Bug testsuite/98036] gcc.target/i386/xop-hsubX.c is broken

2020-11-27 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98036 --- Comment #4 from Uroš Bizjak --- Something is wrong in [printf added by me]: static int check_sword2dword () { int i, j, s, t, check_fails = 0; for (i = 0; i < (NUM * 8); i = i + 8) { for (j = 0; j < 4; j++) {

[Bug testsuite/98036] gcc.target/i386/xop-hsubX.c is broken

2020-11-27 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98036 Uroš Bizjak changed: What|Removed |Added Last reconfirmed||2020-11-27 Status|UNCONFIRMED

[Bug testsuite/98036] gcc.target/i386/xop-hsubX.c is broken

2020-11-27 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98036 --- Comment #2 from Uroš Bizjak --- Created attachment 49637 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49637=edit Testcase with emulated XOP instructions This testcase without XOP insns also fails with "-O2 -msse" on 32bit target.

[Bug target/98018] Option to force frame pointer

2020-11-26 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98018 --- Comment #2 from Uroš Bizjak --- I vote for -fforce-frame-pointer.

[Bug tree-optimization/94846] Failure to optimize jnc+inc into adc

2020-11-25 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94846 Uroš Bizjak changed: What|Removed |Added Ever confirmed|0 |1 Last reconfirmed|

[Bug c/97992] ICE in subst_asm_stack_regs, at reg-stack.c:2264

2020-11-25 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97992 --- Comment #1 from Uroš Bizjak --- This is expected with invalid asm.

[Bug target/97950] Unoptimal code generation with __builtin_*_overflow{,_p} for short and __int128

2020-11-23 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97950 --- Comment #3 from Uroš Bizjak --- Comment on attachment 49613 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49613 gcc11-pr97950.patch >+(define_insn_and_split "*setcc_hi_1" >+ [(set (match_operand:HI 0 "register_operand" "=q") >+

[Bug tree-optimization/96272] Failure to optimize overflow check

2020-11-23 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96272 --- Comment #4 from Uroš Bizjak --- (In reply to Jakub Jelinek from comment #2) > Well, it needs the addition too, so I think this can't be done in match.pd, > but would need to be done in some other pass (not sure which, perhaps > phiopt?).

[Bug target/96189] Failure to use eflags from cmpxchg on x86

2020-11-20 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96189 Uroš Bizjak changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution|---

[Bug target/97873] Failure to optimize abs optimally (at least one completely useless instruction on x86)

2020-11-20 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97873 --- Comment #11 from Uroš Bizjak --- For the record, the removal of compare triggers: - for linux x86_64 defconfig: 93 times - for x86_64 GCC bootstrap: 360 times

[Bug target/92651] [10 Regression] Unnecessary stv transform in some x86 backend

2020-11-20 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92651 --- Comment #11 from Uroš Bizjak --- (In reply to rguent...@suse.de from comment #8) > Sure. Another option would be to enhance STV even further > (or add some peephole patterns - combine runs before STV2) to > transform the > > psubd

[Bug target/97873] Failure to optimize abs optimally (at least one completely useless instruction on x86)

2020-11-20 Thread ubizjak at gmail dot com via Gcc-bugs
dot gnu.org |ubizjak at gmail dot com Resolution|--- |FIXED Status|NEW |RESOLVED --- Comment #10 from Uroš Bizjak --- Fixed.

[Bug target/97873] Failure to optimize abs optimally (at least one completely useless instruction on x86)

2020-11-20 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97873 --- Comment #9 from Uroš Bizjak --- Fixed by: commit fdace7584056de2f63bde2e3087f26beb6b0f97d Author: Uros Bizjak Date: Fri Nov 20 10:26:34 2020 +0100 i386: Optimize abs expansion [PR97873] The patch introduces absM named pattern

[Bug target/97873] Failure to optimize abs optimally (at least one completely useless instruction on x86)

2020-11-19 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97873 Uroš Bizjak changed: What|Removed |Added Attachment #49588|0 |1 is obsolete|

[Bug target/97873] Failure to optimize abs optimally (at least one completely useless instruction on x86)

2020-11-18 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97873 --- Comment #7 from Uroš Bizjak --- (In reply to Jakub Jelinek from comment #4) > So then either we should expand the SWI48x mode abs for !TARGET_EXPAND_ABS > into > a pre-reload define_insn_and_split with abs that we'd split almost like > smax,

[Bug target/97873] Failure to optimize abs optimally (at least one completely useless instruction on x86)

2020-11-18 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97873 --- Comment #6 from Uroš Bizjak --- The attached patch generates: movl%edi, %eax negl%eax cmovs %edi, %eax ret The patch changes CC mode of NEG instruction to CCGOCmode, which is the same mode as the

[Bug target/97873] Failure to optimize abs optimally (at least one completely useless instruction on x86)

2020-11-18 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97873 --- Comment #5 from Uroš Bizjak --- Created attachment 49588 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49588=edit Proposed patch Attached patch introduces relevant peephole2 pattern (and fixes some other issues).

[Bug target/97887] [10/11 Regression] Failure to optimize neg plus div to avoid using x87 floating point stack

2020-11-18 Thread ubizjak at gmail dot com via Gcc-bugs
at gcc dot gnu.org |ubizjak at gmail dot com --- Comment #7 from Uroš Bizjak --- I'll fix this.

[Bug target/97887] [10/11 Regression] Failure to optimize neg plus div to avoid using x87 floating point stack

2020-11-18 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97887 --- Comment #5 from Uroš Bizjak --- > > This should have the following insn constraint: > > > > "TARGET_80387 && !(SSE_FLOAT_MODE_P (mode) && TARGET_SSE_MATH)" > > > > to hide it from combine in cases where relevant SSE mode is available. >

[Bug target/97887] [10/11 Regression] Failure to optimize neg plus div to avoid using x87 floating point stack

2020-11-18 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97887 --- Comment #3 from Uroš Bizjak --- (In reply to Richard Biener from comment #2) > combine first makes recog pick negsf2_i387_1: This should have the following insn constraint: "TARGET_80387 && !(SSE_FLOAT_MODE_P (mode) && TARGET_SSE_MATH)"

[Bug rtl-optimization/97777] ICE: in df_refs_verify, at df-scan.c:3991 with -O -ffinite-math-only -fzero-call-used-regs=all

2020-11-12 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=9 Uroš Bizjak changed: What|Removed |Added CC||qing.zhao at oracle dot com Last

[Bug target/97770] [ICELAKE]Missing vectorization for vpopcnt

2020-11-10 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97770 --- Comment #8 from Uroš Bizjak --- (In reply to Richard Biener from comment #4) > What's missing is middle-end folding support to narrow popcount to the > appropriate internal function call with byte/half-word width when target > support > is

[Bug target/97715] [11 Regression] ICE in insn_default_length, at config/i386/i386.md:15325 since r11-4578-gd10f3e900b0377b4

2020-11-04 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97715 --- Comment #16 from Uroš Bizjak --- (In reply to Jakub Jelinek from comment #15) > They aren't live. But that loop checks that only if only_used is true, when > one uses =all, it marks all regs that aren't fixed, aren't live at the end > of

[Bug target/97715] [11 Regression] ICE in insn_default_length, at config/i386/i386.md:15325 since r11-4578-gd10f3e900b0377b4

2020-11-04 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97715 --- Comment #14 from Uroš Bizjak --- (In reply to Jakub Jelinek from comment #11) > I think you should do: > --- gcc/function.c2020-10-31 17:41:19.756740009 +0100 > +++ gcc/function.c2020-11-04 17:02:51.199298173 +0100 > @@ -5871,6

[Bug target/97715] [11 Regression] ICE in insn_default_length, at config/i386/i386.md:15325 since r11-4578-gd10f3e900b0377b4

2020-11-04 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97715 --- Comment #12 from Uroš Bizjak --- (In reply to Qing Zhao from comment #10) > > On Nov 4, 2020, at 9:45 AM, ubizjak at gmail dot com > > wrote: > >> fixed registers should already be excluded from zeroing. > >&g

[Bug target/97715] [11 Regression] ICE in insn_default_length, at config/i386/i386.md:15325 since r11-4578-gd10f3e900b0377b4

2020-11-04 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97715 --- Comment #9 from Uroš Bizjak --- (In reply to qinzhao from comment #6) > (In reply to Jakub Jelinek from comment #3) > > ;; Floating-point register constraints. > > (define_register_constraint "f" > > "TARGET_80387 ||

[Bug target/97715] [11 Regression] ICE in insn_default_length, at config/i386/i386.md:15325 since r11-4578-gd10f3e900b0377b4

2020-11-04 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97715 --- Comment #7 from Uroš Bizjak --- (In reply to qinzhao from comment #5) > (In reply to H.J. Lu from comment #2) > > (In reply to qinzhao from comment #1) > > > for -fzero-call-used-regs=all, when zeroing st/mm registers under x87 exit > > >

[Bug testsuite/97688] check_vect doesn't detect AVX2 on zen

2020-11-03 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97688 --- Comment #4 from Uroš Bizjak --- (In reply to Richard Biener from comment #3) > Ah. So I guess > > diff --git a/gcc/testsuite/gcc.dg/vect/tree-vect.h > b/gcc/testsuite/gcc.dg/vect/tree-vect.h > index 5d8d9eba3f8..c4b81441216 100644 > ---

[Bug testsuite/97688] check_vect doesn't detect AVX2 on zen

2020-11-03 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97688 --- Comment #1 from Uroš Bizjak --- AVX2 should be detected using __get_cpuid_count, because a sub-leaf needs to be specified for leaf 7.

[Bug rtl-optimization/97129] [11 Regression] ICE in maybe_record_trace_start, at dwarf2cfi.c:2405

2020-10-16 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97129 Uroš Bizjak changed: What|Removed |Added Resolution|--- |INVALID Status|NEW

[Bug middle-end/97073] [8/9/10/11 Regression] Miscompilation with -m32 -O1 -march=i686

2020-09-17 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97073 Uroš Bizjak changed: What|Removed |Added Component|target |middle-end --- Comment #2 from Uroš

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-08-28 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 Uroš Bizjak changed: What|Removed |Added Assignee|ubizjak at gmail dot com |unassigned at gcc dot gnu.org

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-08-28 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 --- Comment #12 from Uroš Bizjak --- (In reply to Richard Biener from comment #10) > (In reply to Uroš Bizjak from comment #7) > > Created attachment 49144 [details] > > Proposed patch > > > > Patch in testing. > > OTOH we _do_ try to

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-08-28 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 --- Comment #11 from Uroš Bizjak --- Created attachment 49146 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49146=edit Testcase, suitable for gcc testsuite

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-08-28 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 --- Comment #9 from Uroš Bizjak --- (In reply to Paweł Bylica from comment #8) > Did you consider fixing the __builtin_floor() implementation? No, because you can use -msse4 to generate ROUNDxx instructions.

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-08-28 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 Uroš Bizjak changed: What|Removed |Added CC|uros at gcc dot gnu.org| Target Milestone|---

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-08-28 Thread ubizjak at gmail dot com
at gcc dot gnu.org |ubizjak at gmail dot com --- Comment #7 from Uroš Bizjak --- Created attachment 49144 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49144=edit Proposed patch Patch in testing.

[Bug target/96744] [11 Regression] FAIL: gcc.target/i386/avx512bitalgvl-vpopcntb-1.c execution test

2020-08-27 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96744 --- Comment #11 from Uroš Bizjak --- (In reply to Hongtao.liu from comment #9) > > > However, the patch assumes that avx512vp2intersect implies mavx512dq, > > > > Let me check this part. > > Confirmed, avx512vp2intersect implies avx512dq. >

[Bug target/96802] [11 Regression] ICE in ix86_handle_option, at common/config/i386/i386-common.c:338

2020-08-26 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96802 Uroš Bizjak changed: What|Removed |Added CC||hjl.tools at gmail dot com Target

[Bug target/96793] __builtin_floor produces wrong result when rounding direction is FE_DOWNWARD

2020-08-26 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96793 --- Comment #6 from Uroš Bizjak --- Ehm... 2006-10-29 Richard Guenther * config/i386/i386-protos.h (ix86_expand_floorceil): Declare. (ix86_expand_floorceildf_32): Likewise. * config/i386/i386.c

[Bug target/96744] [11 Regression] FAIL: gcc.target/i386/avx512bitalgvl-vpopcntb-1.c execution test

2020-08-24 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96744 --- Comment #6 from Uroš Bizjak --- (In reply to Uroš Bizjak from comment #5) > However, the patch assumes that avx512vp2intersect implies mavx512dq, > otherwise there is no direct QImode move from mask register to memory > available. This is

[Bug target/96744] [11 Regression] FAIL: gcc.target/i386/avx512bitalgvl-vpopcntb-1.c execution test

2020-08-24 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96744 --- Comment #5 from Uroš Bizjak --- (In reply to Hongtao.liu from comment #2) > Need to add define_insn for movp2qi/movp2hi? Yes, this is needed to cover some corner cases. Please see attachment 49114. However, the patch assumes that

[Bug target/96744] [11 Regression] FAIL: gcc.target/i386/avx512bitalgvl-vpopcntb-1.c execution test

2020-08-24 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96744 --- Comment #4 from Uroš Bizjak --- Created attachment 49114 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49114=edit Double-reg mask moves

[Bug target/96744] [11 Regression] FAIL: gcc.target/i386/avx512bitalgvl-vpopcntb-1.c execution test

2020-08-24 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96744 --- Comment #3 from Uroš Bizjak --- Created attachment 49112 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49112=edit Retune mask <-> general moves cost It looks to me that mask <-> general cost is too low, so the compiler now prefers

[Bug target/96755] [11 Regression] ICE in final_scan_insn_1, at final.c:3073 with -O3 -march=skylake-avx512

2020-08-24 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96755 Uroš Bizjak changed: What|Removed |Added Last reconfirmed||2020-08-24 Ever confirmed|0

[Bug target/96536] -fcf-protection code in i386.md:restore_stack_nonlocal uses invalid compare-and-jump rtl

2020-08-18 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96536 Uroš Bizjak changed: What|Removed |Added Target Milestone|--- |8.5 Status|ASSIGNED

[Bug tree-optimization/96654] Failure to optimize vectorized conversion to `int` with AVX

2020-08-17 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96654 Uroš Bizjak changed: What|Removed |Added Ever confirmed|0 |1 Component|target

[Bug target/96536] -fcf-protection code in i386.md:restore_stack_nonlocal uses invalid compare-and-jump rtl

2020-08-17 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96536 --- Comment #6 from Uroš Bizjak --- (In reply to Hongtao.liu from comment #1) > I'm testing patch like > >emit_insn ((word_mode == SImode) > ? gen_incsspsi (reg_255) > : gen_incsspdi (reg_255)); > -

[Bug target/96536] -fcf-protection code in i386.md:restore_stack_nonlocal uses invalid compare-and-jump rtl

2020-08-13 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96536 Uroš Bizjak changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |ubizjak at gmail dot com Last

<    4   5   6   7   8   9   10   11   12   13   >