[Bug c++/84373] New: g++ incorrectly resolves names for default parameters

2018-02-13 Thread smcallis at gmail dot com
Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: smcallis at gmail dot com Target Milestone: --- Created attachment 43409 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43409&action=edit Reproduction of issue Code is attached, the gist is that when def

[Bug middle-end/81478] By default, GCC emits a function call for complex multiplication, should partially inline that

2017-07-19 Thread smcallis at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81478 --- Comment #6 from Sean McAllister --- FWIW, it seems the compute, check, re-compute if necessary is what clang does. Rather than "setp %al" and "jne" on that, they just use the "jp" instruction directly after ucomiss: 0x004005d5 <+

[Bug middle-end/81478] By default, GCC emits a function call for complex multiplication, should partially inline that

2017-07-19 Thread smcallis at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81478 --- Comment #5 from Sean McAllister --- (In reply to Richard Biener from comment #3) > Confirmed. It shouldn't be very difficult to do, > gcc/tree-complex.c:expand_complex_multiplication would need to emit if > (isnan(rr) || isnan(ri)) . > > Un

[Bug middle-end/81478] By default, GCC emits a function call for complex multiplication, should partially inline that

2017-07-19 Thread smcallis at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81478 --- Comment #4 from Sean McAllister --- Looking at the assembly for the __mulsc3 function: <+0>:movaps %xmm0,%xmm10 <+4>:movaps %xmm2,%xmm11 <+8>:movaps %xmm0,%xmm5 <+11>:mulss %xmm3,%xmm10 <+16>:movaps %xmm1,%xmm6 <+19>:mulss %xmm1,%xmm11

[Bug middle-end/81478] By default, GCC emits a function call for complex multiplication

2017-07-18 Thread smcallis at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81478 --- Comment #2 from Sean McAllister --- *** Bug 81479 has been marked as a duplicate of this bug. ***

[Bug c++/81479] By default, GCC emits a function call for complex multiplication

2017-07-18 Thread smcallis at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81479 Sean McAllister changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug middle-end/81478] By default, GCC emits a function call for complex multiplication

2017-07-18 Thread smcallis at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81478 --- Comment #1 from Sean McAllister --- Created attachment 41785 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=41785&action=edit cfloat class

[Bug c++/81479] New: By default, GCC emits a function call for complex multiplication

2017-07-18 Thread smcallis at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: smcallis at gmail dot com Target Milestone: --- I've seen this in gcc 4.4.7, 4.7.4 4.8.4, 5.4.1, 6.3.0 and 7.1.0 When compiling some simple complex arithmetic: template

[Bug c++/81478] New: By default, GCC emits a function call for complex multiplication

2017-07-18 Thread smcallis at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: smcallis at gmail dot com Target Milestone: --- Created attachment 41784 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=41784&action=edit Benchmark code I've seen