[Bug c++/53473] [C++11] static constexpr noexcept cannot be specialized

2012-05-25 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53473 --- Comment #2 from Matthias Kretz kretz at kde dot org 2012-05-25 08:53:36 UTC --- Does the standard allow exceptions in constexpr? A throw is not exactly a return statement, but according to the rule constexpr function shall satisfy

[Bug c++/53473] New: [C++11] static constexpr noexcept cannot be specialized

2012-05-24 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53473 Bug #: 53473 Summary: [C++11] static constexpr noexcept cannot be specialized Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED

[Bug other/52754] [4.7/4.8 Regression] indirect indexing broken with -fpredictive-commoning

2012-03-30 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52754 --- Comment #8 from Matthias Kretz kretz at kde dot org 2012-03-30 11:13:59 UTC --- (In reply to comment #7) alternative patch Just tested it on the 4.7-20120324 snapshot and all bogus warnings are gone, as are the crashes. No regressions in my

[Bug target/47769] [missed optimization] use of btr (bit test and reset)

2012-03-29 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47769 --- Comment #4 from Matthias Kretz kretz at kde dot org 2012-03-29 09:55:46 UTC --- ping. Are you still waiting for more input from me?

[Bug target/45414] _mm_prefetch parameter is char const * in ICC

2012-03-29 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45414 --- Comment #1 from Matthias Kretz kretz at kde dot org 2012-03-29 10:17:24 UTC --- Created attachment 27029 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=27029 proposed patch If you accept this patch, please only apply to trunk. I hate API

[Bug other/52754] [4.7/4.8 Regression] indirect indexing broken with -fpredictive-commoning

2012-03-29 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52754 --- Comment #5 from Matthias Kretz kretz at kde dot org 2012-03-29 10:24:19 UTC --- I just tested the patch on the last 4.7 snapshot (20120324). My unit test apparently runs without failure, but I still get incorrect warnings warning: array

[Bug target/52736] [4.5/4.6/4.7/4.8 Regression] miscompilation: store to aliased __m128d is 8 Bytes off

2012-03-28 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52736 --- Comment #14 from Matthias Kretz kretz at kde dot org 2012-03-28 09:03:05 UTC --- Thanks! Great response time! And yes, I started to notice the bug on 4.6.x now, too. In different unit tests, though. I'll see if I can come up

[Bug other/52754] New: [4.7 regression, miscompilation] indirect indexing broken with -fpredictive-commoning

2012-03-28 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52754 Bug #: 52754 Summary: [4.7 regression, miscompilation] indirect indexing broken with -fpredictive-commoning Classification: Unclassified Product: gcc Version: 4.7.0

[Bug target/52736] New: [4.7 regression] miscompilation: store to aliased __m128d is 8 Bytes off

2012-03-27 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52736 Bug #: 52736 Summary: [4.7 regression] miscompilation: store to aliased __m128d is 8 Bytes off Classification: Unclassified Product: gcc Version: 4.7.0 Status:

[Bug target/52736] [4.7 regression] miscompilation: store to aliased __m128d is 8 Bytes off

2012-03-27 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52736 --- Comment #2 from Matthias Kretz kretz at kde dot org 2012-03-27 08:00:47 UTC --- Using built-in specs. COLLECT_GCC=/opt/gcc-4.7.0/bin/g++ COLLECT_LTO_WRAPPER=/opt/gcc-4.7.0/libexec/gcc/x86_64-linux-gnu/4.7.0/lto-wrapper Target: x86_64-linux

[Bug target/52736] [4.7 regression] miscompilation: store to aliased __m128d is 8 Bytes off

2012-03-27 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52736 --- Comment #3 from Matthias Kretz kretz at kde dot org 2012-03-27 08:01:23 UTC --- Created attachment 27010 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=27010 -S output

[Bug target/52736] [4.5/4.6/4.7/4.8 Regression] miscompilation: store to aliased __m128d is 8 Bytes off

2012-03-27 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52736 --- Comment #7 from Matthias Kretz kretz at kde dot org 2012-03-27 16:58:42 UTC --- With the patch my unit test passes again with 4.7.0. In my code I don't see any regressions from the patch.

[Bug target/52736] [4.5/4.6/4.7/4.8 Regression] miscompilation: store to aliased __m128d is 8 Bytes off

2012-03-27 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52736 --- Comment #8 from Matthias Kretz kretz at kde dot org 2012-03-27 17:02:59 UTC --- I might have been too fast. On the Intel Sandy-Bridge, where I debugged the problem first things have improved. On an AMD Magny-Cours I get lots of failures. I

[Bug target/52736] [4.5/4.6/4.7/4.8 Regression] miscompilation: store to aliased __m128d is 8 Bytes off

2012-03-27 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52736 --- Comment #9 from Matthias Kretz kretz at kde dot org 2012-03-27 21:20:49 UTC --- All good. The error is mine. I don't see any regressions from the use of the patch.

[Bug target/49133] [4.6/4.7 Regression] modification of aliased __m128d miscompiles

2011-05-24 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49133 --- Comment #2 from Matthias Kretz kretz at kde dot org 2011-05-24 10:16:41 UTC --- I applied the patch to the latest 4.6 snapshot. I confirm that it fixes the bug. Also, there are no regressions in my testsuite. Just for confirmation

[Bug target/49133] New: [4.6 Regression] modification of aliased __m128d miscompiles

2011-05-23 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49133 Summary: [4.6 Regression] modification of aliased __m128d miscompiles Product: gcc Version: 4.6.1 Status: UNCONFIRMED Severity: normal Priority: P3

[Bug target/48701] New: [missed optimization] GCC fails to use aliasing of ymm and xmm registers

2011-04-20 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48701 Summary: [missed optimization] GCC fails to use aliasing of ymm and xmm registers Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3

[Bug target/48701] [missed optimization] GCC fails to use aliasing of ymm and xmm registers

2011-04-20 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48701 --- Comment #1 from Matthias Kretz kretz at kde dot org 2011-04-20 13:26:56 UTC --- Created attachment 24060 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24060 testcase

[Bug target/48678] New: [regression] unable to find a register to spill in class ‘GENERAL_REGS’

2011-04-19 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48678 Summary: [regression] unable to find a register to spill in class ‘GENERAL_REGS’ Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3

[Bug tree-optimization/48616] -ftree-vectorize -mxop miscompiles right shift

2011-04-18 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48616 Matthias Kretz kretz at kde dot org changed: What|Removed |Added Status|RESOLVED|VERIFIED

[Bug tree-optimization/48616] New: -ftree-vectorize -mxop miscompiles right shift

2011-04-15 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48616 Summary: -ftree-vectorize -mxop miscompiles right shift Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization

[Bug tree-optimization/48616] -ftree-vectorize -mxop miscompiles right shift

2011-04-15 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48616 Matthias Kretz kretz at kde dot org changed: What|Removed |Added Target||x86_64 --- Comment

[Bug target/47840] New: incorrect _mm256_insert_epi{32,64} implementations

2011-02-21 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47840 Summary: incorrect _mm256_insert_epi{32,64} implementations Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target

[Bug target/47769] [missed optimization] use of btr (bit test and reset)

2011-02-17 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47769 --- Comment #2 from Matthias Kretz kretz at kde dot org 2011-02-17 10:00:55 UTC --- Created attachment 23375 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=23375 Test code to see whether btr gets used automatically and to compare speed

[Bug target/47769] [missed optimization] use of btr (bit test and reset)

2011-02-17 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47769 --- Comment #3 from Matthias Kretz kretz at kde dot org 2011-02-17 10:01:34 UTC --- Created attachment 23376 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=23376 TimeStampCounter class for benchmarking

[Bug target/47769] New: [missed optimization] use of btr (bit test and reset)

2011-02-16 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47769 Summary: [missed optimization] use of btr (bit test and reset) Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: minor Priority: P3 Component: target

[Bug target/47754] New: [missed optimization] AVX allows unaligned memory operands but GCC uses unaligned load and register operand

2011-02-15 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47754 Summary: [missed optimization] AVX allows unaligned memory operands but GCC uses unaligned load and register operand Product: gcc Version: 4.5.0 Status:

[Bug target/47754] [missed optimization] AVX allows unaligned memory operands but GCC uses unaligned load and register operand

2011-02-15 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47754 --- Comment #2 from Matthias Kretz kretz at kde dot org 2011-02-15 16:31:39 UTC --- True, the Optimization Reference Manual and AVX Docs are not very specific about the performance impact of this. But as far as I understood the docs

[Bug target/47754] [missed optimization] AVX allows unaligned memory operands but GCC uses unaligned load and register operand

2011-02-15 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47754 --- Comment #3 from Matthias Kretz kretz at kde dot org 2011-02-15 16:40:38 UTC --- ICC??? Whatever, I stopped to trust that compiler long ago: unaligned(): vmovups 0x2039b8(%rip),%xmm0 vmovups 0x2039b4(%rip),%xmm1 vinsertf128 $0x1,0x2039b6(%rip

[Bug tree-optimization/46723] New: internal compiler error: in get_initial_def_for_induction, at tree-vect-loop.c:2431

2010-11-30 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46723 Summary: internal compiler error: in get_initial_def_for_induction, at tree-vect-loop.c:2431 Product: gcc Version: 4.5.1 Status: UNCONFIRMED Severity:

[Bug tree-optimization/46723] internal compiler error: in get_initial_def_for_induction, at tree-vect-loop.c:2431

2010-11-30 Thread kretz at kde dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46723 --- Comment #1 from Matthias Kretz kretz at kde dot org 2010-11-30 13:50:55 UTC --- Created attachment 22578 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22578 preprocessed source which makes G++ 4.5.1 ICE

[Bug middle-end/45739] New: [missed optimization] static evaluation of SSE intrinsics (pxor)

2010-09-21 Thread kretz at kde dot org
intrinsics (pxor) Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: kretz at kde dot org GCC build triplet: x86_64

[Bug c/45414] New: _mm_prefetch parameter is char const * in ICC

2010-08-26 Thread kretz at kde dot org
: unassigned at gcc dot gnu dot org ReportedBy: kretz at kde dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45414

[Bug middle-end/45267] New: [4.5 regression] inlining fails with -m32

2010-08-12 Thread kretz at kde dot org
gnu dot org ReportedBy: kretz at kde dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45267

[Bug middle-end/45267] [4.5 regression] inlining fails with -m32

2010-08-12 Thread kretz at kde dot org
--- Comment #4 from kretz at kde dot org 2010-08-12 21:17 --- Actually the function where inlining fails here consists of one single instruction in the end. Possibly the code in trunk is smarter at recognizing this. Anyway thanks for the pointer to the guilty commit. I will add --param

[Bug middle-end/45267] [4.5 regression] inlining fails with -m32

2010-08-12 Thread kretz at kde dot org
--- Comment #8 from kretz at kde dot org 2010-08-12 22:08 --- Right, but then I probably have two bugs to report: 1. always_inline is not honored (heuristics are applied even though they shouldn't) 2. inlining of small functions does not work reliably (i.e. a function declared

[Bug target/44551] [missed optimization] AVX vextractf128 after vinsertf128

2010-06-16 Thread kretz at kde dot org
--- Comment #6 from kretz at kde dot org 2010-06-16 21:21 --- (In reply to comment #4) You can also cast 128bit to 256bit with upper 128bit undefined. If you cast from xmm to ymm after a 128bit instruction coded with VEX prefix then the upper 128bit are actually guaranteed to be zero

[Bug middle-end/44551] New: [missed optimization] AVX vextractf128 after vinsertf128

2010-06-15 Thread kretz at kde dot org
: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: kretz at kde dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64

[Bug target/43514] use of SSE shift intrinsics introduces unnecessary moves to the stack and back

2010-03-26 Thread kretz at kde dot org
--- Comment #2 from kretz at kde dot org 2010-03-26 13:13 --- BTW, I think you should consider this as a bug, not enhancement. Because if the shift argument is = (1 32) the result of _mm_sll_epi64 differs from the expected result. Thus the code GCC generates could potentially hide

[Bug middle-end/43514] New: [missed optimization] use of SSE shift intrinsics introduces unnecessary moves to the stack and back

2010-03-25 Thread kretz at kde dot org
at gcc dot gnu dot org ReportedBy: kretz at kde dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43514

[Bug c++/40685] explicit constructor is used where only implicit ctors are allowed

2009-08-25 Thread kretz at kde dot org
--- Comment #3 from kretz at kde dot org 2009-08-25 15:26 --- Actually I came across this problem because my code was failing on MSVC and icc. Then I noticed that icc compiles the code, the one that I pasted, differently. On further investigation I decided that gcc is at fault

[Bug middle-end/40924] New: 4.4.1 regression: miscompiles with -03 (seemingly related to attribute may_alias)

2009-07-31 Thread kretz at kde dot org
: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: kretz at kde dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64

[Bug middle-end/40924] 4.4.1 regression: miscompiles with -03 (seemingly related to attribute may_alias)

2009-07-31 Thread kretz at kde dot org
--- Comment #1 from kretz at kde dot org 2009-07-31 09:24 --- Created an attachment (id=18278) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18278action=view) minimal testcase -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40924

[Bug c++/40685] explicit constructor is used where only implicit ctors are allowed

2009-07-29 Thread kretz at kde dot org
--- Comment #1 from kretz at kde dot org 2009-07-29 14:51 --- I just tested with 4.4.1 and I can still confirm the problem. -- kretz at kde dot org changed: What|Removed |Added

[Bug c++/40685] New: explicit constructor is used where only implicit ctors are allowed

2009-07-08 Thread kretz at kde dot org
Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: kretz at kde dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu

[Bug c/40141] New: accessing aliased __m128 miscompiles

2009-05-14 Thread kretz at kde dot org
Product: gcc Version: 4.3.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: kretz at kde dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host

[Bug c/40120] New: aliasing of __m128i is not allowed

2009-05-12 Thread kretz at kde dot org
: kretz at kde dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40120

[Bug middle-end/40122] New: missed optimization when using union of __m128i and int[4]

2009-05-12 Thread kretz at kde dot org
: unassigned at gcc dot gnu dot org ReportedBy: kretz at kde dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40122

<    1   2   3