[Bug tree-optimization/94589] Optimize (i<=>0)>0 to i>0

2020-06-05 Thread khim at google dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94589 Victor Khimenko changed: What|Removed |Added CC||khim at google dot com --- Comment #2

[Bug c++/96490] New: Template code with function pointers fails with very cryptic error message

2020-08-05 Thread khim at google dot com
: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: khim at google dot com Target Milestone: --- The following code works with all other compilers: https://godbolt.org/z/Mv3xsn template class TagType; int foo(); constexpr auto

[Bug rtl-optimization/80491] New: Compiler regression for long-add case.

2017-04-22 Thread khim at google dot com
-optimization Assignee: unassigned at gcc dot gnu.org Reporter: khim at google dot com Target Milestone: --- Simple long addition program. struct pair { uint64_t low; uint64_t hi; }; pair add(pair& a, pair& b) { pair s; s.low = a.low + b.low; s.hi = a.hi + b.hi

[Bug rtl-optimization/80491] Compiler regression for long-add case.

2017-04-22 Thread khim at google dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80491 --- Comment #1 from Victor Khimenko --- Actually even clang's version is not optimal ("addq 8(%rdi), %rdx" then "adcq $0, %rdx" could be replaced with "adcq 8(%rdi), %rdx"). But at least both calng and old version of gcc are smart enough to rem

[Bug rtl-optimization/80491] Compiler regression for long-add case.

2017-04-22 Thread khim at google dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80491 --- Comment #2 from Victor Khimenko --- An interesting observation: -O1 actually produces perfect code: $ gcc -S -O1 test.cc -o- .file "test.cc" .text .p2align 4,,15 .globl _Z3addR4pairS0_ .type _Z3addR4pa

[Bug c++/114305] New: GCC doesn't use [[gnu::pure]] attribute on the inline function

2024-03-11 Thread khim at google dot com via Gcc-bugs
ormal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: khim at google dot com Target Milestone: --- The following program is an illustration (https://godbolt.org/z/PYW34ccvP): #include GNU_PURE1 extern size_t foo(size_t); tem