[Bug target/120436] New: division-by-zero when calling some RVV intrinsics without the V extension

2025-05-26 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120436 Bug ID: 120436 Summary: division-by-zero when calling some RVV intrinsics without the V extension Product: gcc Version: 16.0 Status: UNCONFIRMED Severity: norm

[Bug rtl-optimization/119681] move instructions inside the unrolled loop of core_list_reverse () with -O3 -funroll-all-loops; not copying the return block

2025-04-08 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119681 --- Comment #12 from Artemiy Volkov --- (In reply to Andrew Pinski from comment #11) > (In reply to Artemiy Volkov from comment #10) > > > > CMIIW, but this live range splitting is done a bit later by web and works > > well in the case where th

[Bug rtl-optimization/119681] move instructions inside the unrolled loop of core_list_reverse () with -O3 -funroll-all-loops; not copying the return block

2025-04-08 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119681 --- Comment #10 from Artemiy Volkov --- (In reply to Andrew Pinski from comment #9) > Note I think the bigger issue is the RTL unroller does do introduce new > pseudo registers when it is copying basic blocks and does not do live range > splitti

[Bug rtl-optimization/119681] extraneous move instructions when unrolling core_list_reverse () with -O3 -funroll-all-loops; not copying the return block

2025-04-08 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119681 --- Comment #7 from Artemiy Volkov --- (In reply to Andrew Pinski from comment #6) > >(Note that the GIMPLE unroller already does this, but it doesn't handle > >uncountable loops.) > > Actually the gimple unroller does NOT duplicate exit block

[Bug rtl-optimization/119681] extraneous move instructions when unrolling core_list_reverse () with -O3 -funroll-all-loops; not copying the return block

2025-04-08 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119681 --- Comment #4 from Artemiy Volkov --- Created attachment 61036 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=61036&action=edit patch v0.1

[Bug rtl-optimization/119681] extraneous move instructions when unrolling core_list_reverse () with -O3 -funroll-all-loops; not copying the return block

2025-04-08 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119681 --- Comment #3 from Artemiy Volkov --- (In reply to Andrew Pinski from comment #1) > > Under certain conditions > > Yes it depends on the micro-arch . In many new ones the rename (move) is > free as long as there are enough rename registers. >

[Bug rtl-optimization/119681] New: extraneous move instructions when unrolling core_list_reverse ()

2025-04-08 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119681 Bug ID: 119681 Summary: extraneous move instructions when unrolling core_list_reverse () Product: gcc Version: 15.0 Status: UNCONFIRMED Severity: normal

[Bug rtl-optimization/116919] extra zext for bitwise operations with a constant

2024-10-02 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116919 --- Comment #2 from Artemiy Volkov --- (In reply to Jeffrey A. Law from comment #1) > Confirmed. I see that you're looking at the crcu8 code. If you're looking > to optimize that function, you *really* want Mariam's code that detects CRC > loo

[Bug middle-end/116919] New: extra zext for bitwise operations with a constant

2024-10-01 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116919 Bug ID: 116919 Summary: extra zext for bitwise operations with a constant Product: gcc Version: 15.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component

[Bug tree-optimization/116024] [14/15 Regression] unnecessary integer comparison(s) for a simple loop since r14-5628-g53ba8d669550d3

2024-07-23 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116024 --- Comment #7 from Artemiy Volkov --- (In reply to Richard Biener from comment #6) > (In reply to Artemiy Volkov from comment #5) > > Hi Andrew, thank you for the breakdown. For i1() (the case applicable to > > the initial bug report) somethin

[Bug tree-optimization/116024] [14/15 Regression] unnecessary integer comparison(s) for a simple loop since r14-5628-g53ba8d669550d3

2024-07-22 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116024 --- Comment #5 from Artemiy Volkov --- Hi Andrew, thank you for the breakdown. For i1() (the case applicable to the initial bug report) something like this seems to fix the issue: diff --git a/gcc/match.pd b/gcc/match.pd index cf359b0ec0f..8ab

[Bug ipa/116024] New: [14/15 Regression] unnecessary integer comparison(s) for a simple loop

2024-07-21 Thread artemiy at synopsys dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116024 Bug ID: 116024 Summary: [14/15 Regression] unnecessary integer comparison(s) for a simple loop Product: gcc Version: 14.1.1 Status: UNCONFIRMED Severity: norma