[Bug lto/84212] -Wno-* does not disable warnings from -flto link stage

2018-02-06 Thread jay.foad at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84212 --- Comment #3 from Jay Foad --- Here you go: $ gcc -O3 -flto a.o b.o -Wno-stringop-overflow -v -### Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper OFFLOAD_TARGET_NAMES=nvptx-none

[Bug lto/84212] New: -Wno-* does not disable warnings from -flto link stage

2018-02-05 Thread jay.foad at gmail dot com
Component: lto Assignee: unassigned at gcc dot gnu.org Reporter: jay.foad at gmail dot com CC: marxin at gcc dot gnu.org Target Milestone: --- See example below: I'm getting warnings emitted by the -flto link stage. I'd like to selectively disable these warnings

[Bug lto/78472] warning: type of 's' does not match original declaration from zero length bitfield in C vs C++

2016-11-23 Thread jay.foad at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78472 --- Comment #4 from Jay Foad --- Works for me, thanks!

[Bug lto/78472] New: warning: type of 's' does not match original declaration from zero length bitfield in C vs C++

2016-11-22 Thread jay.foad at gmail dot com
Severity: normal Priority: P3 Component: lto Assignee: unassigned at gcc dot gnu.org Reporter: jay.foad at gmail dot com Target Milestone: --- If I compile x.h as C and as C++, and link the two together with LTO, I get this warning, which seems spurious

[Bug c/68473] [6 Regression] ICE: in contains_point, at diagnostic-show-locus.c:340 after error

2015-11-24 Thread jay.foad at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68473 Jay Foad changed: What|Removed |Added CC||jay.foad at gmail dot com --- Comment #6

[Bug ipa/68219] New: ICF could fold functions called via a table of function pointers

2015-11-05 Thread jay.foad at gmail dot com
Priority: P3 Component: ipa Assignee: unassigned at gcc dot gnu.org Reporter: jay.foad at gmail dot com Target Milestone: --- Consider this simplified example: $ cat x.cpp namespace { template int f() { return 0; } } int g(int n) { static int (*const

[Bug debug/66482] New: ICE in gen_formal_parameter_die

2015-06-10 Thread jay.foad at gmail dot com
Assignee: unassigned at gcc dot gnu.org Reporter: jay.foad at gmail dot com Target Milestone: --- I've just built gcc from svn r224315 on x86_64-unknown-linux-gnu. I get: $ cat x.c void f(int p) {} int g() { void f(); g(); return 0; } $ ~/gcc/local/bin/gcc -g -O3 -c x.c x.c

[Bug target/65847] New: SSE2 code for adding two structs is much worse at -O3 than at -O2

2015-04-22 Thread jay.foad at gmail dot com
Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: jay.foad at gmail dot com On x86_64 I get decent code at -O2: $ cat zplus.c typedef struct { double a, b; } Z; Z zplus(Z x, Z y) { return (Z){ x.a + y.a, x.b + y.b }; } $ gcc -O2 -S -o

[Bug target/61563] New: better 387 code for float x == (int)x

2014-06-19 Thread jay.foad at gmail dot com
Assignee: unassigned at gcc dot gnu.org Reporter: jay.foad at gmail dot com I get this with GCC 4.10.0 20140619 (experimental): $ gcc -mno-sse -O3 -S -o - -x c - int f(float x) { return x == (int)x; } ... f: fnstcw-2(%rsp) movzwl-2(%rsp), %eax flds8(%rsp

[Bug target/61563] better 387 code for float x == (int)x

2014-06-19 Thread jay.foad at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61563 --- Comment #2 from Jay Foad jay.foad at gmail dot com --- I hadn't considered spurious invalid exceptions. I was only thinking about the result of the whole expression, which I think is the same regardless of rounding mode even for double

[Bug rtl-optimization/60159] New: improve code for conditional sibcall

2014-02-12 Thread jay.foad at gmail dot com
-optimization Assignee: unassigned at gcc dot gnu.org Reporter: jay.foad at gmail dot com If I compile this code for x86-64 I get: $ cat jcc.c extern int f(int x); int g(int x) { return x 3 ? f(x) : x; } $ cc1 -quiet -O3 jcc.c -o - ... g: .LFB0: .cfi_startproc cmpl

[Bug target/58166] ARMv5: poor register allocation in function containing smull instruction

2013-08-22 Thread jay.foad at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58166 --- Comment #3 from Jay Foad jay.foad at gmail dot com --- I've bisected this to r191805: http://gcc.gnu.org/viewcvs/gcc?view=revisionrevision=191805 http://gcc.gnu.org/ml/gcc-patches/2012-09/msg01764.html

[Bug target/58166] ARMv5: poor register allocation in function containing smull instruction

2013-08-21 Thread jay.foad at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58166 Jay Foad jay.foad at gmail dot com changed: What|Removed |Added Known to fail||4.8.0 --- Comment #2

[Bug target/58166] New: ARMv5: poor register allocation in function containing smull instruction

2013-08-15 Thread jay.foad at gmail dot com
Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: jay.foad at gmail dot com Created attachment 30660 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=30660action=edit C source for testcase On the attached test case I get

[Bug target/58152] New: ARM: unnecessary push before call to noreturn function

2013-08-14 Thread jay.foad at gmail dot com
Component: target Assignee: unassigned at gcc dot gnu.org Reporter: jay.foad at gmail dot com Created attachment 30652 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=30652action=edit C source for testcase On the attached test case I get: $ gcc -marm -S -O2 ~/mul.c -o

[Bug c/54355] New: ICE on invalid code in switch statement

2012-08-23 Thread jay.foad at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54355 Bug #: 54355 Summary: ICE on invalid code in switch statement Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority:

[Bug target/52415] New: memcpy to local variable generates unnecessary stack frame for armv7

2012-02-28 Thread jay.foad at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52415 Bug #: 52415 Summary: memcpy to local variable generates unnecessary stack frame for armv7 Classification: Unclassified Product: gcc Version: unknown Status:

[Bug target/52415] memcpy to local variable generates unnecessary stack frame for armv7

2012-02-28 Thread jay.foad at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52415 --- Comment #2 from Jay Foad jay.foad at gmail dot com 2012-02-28 11:51:00 UTC --- On the tree level nothing guarantees that 'p' is properly aligned. This is a digression, but what about C99 (Committee Draft -- April 12, 2011) 6.3.2.3p7

[Bug target/52415] memcpy to local variable generates unnecessary stack frame for armv7

2012-02-28 Thread jay.foad at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52415 --- Comment #5 from Jay Foad jay.foad at gmail dot com 2012-02-28 13:03:50 UTC --- But to answer your question, how you can assert it is properly aligned, in gcc 4.7.0 you can write: __builtin_memcpy (i, __builtin_assume_aligned (p, sizeof

[Bug c++/10200] Weird clash with same names in different scopes

2011-05-24 Thread jay.foad at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10200 Jay Foad jay.foad at gmail dot com changed: What|Removed |Added CC||jay.foad at gmail dot