[Bug c/88088] -Wtrampolines should be enabled by -Wall (or -Wextra)

2018-11-21 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88088 --- Comment #16 from Segher Boessenkool --- Something as trivial as this === void h(int (*)(void)); void f(int x) { int g(void) { return x; } h(g); } === will already do. *Anything* that needs trampolines will do.

[Bug rtl-optimization/85925] [7/8/9 regression] compilation of masking with 257 goes wrong in combine at -02

2018-11-21 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85925 --- Comment #31 from Segher Boessenkool --- It needs some certain bitfield layout, so this is not portable and should only be run for those targets it is meant for (x86?)

[Bug c/88088] -Wtrampolines should be enabled by -Wall (or -Wextra)

2018-11-21 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88088 --- Comment #14 from Segher Boessenkool --- It is *not* a security issue for many environments, and the warning warns whenever you use a useful feature. It is very hard to avoid the warning if you use this feature (you need to stop using the

[Bug rtl-optimization/87871] [9 Regression] testcases fail after r265398 on arm

2018-11-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87871 --- Comment #5 from Segher Boessenkool --- The first one just needs an xfail. I don't know if it should be *-*-* there or only arm*-*-* should be added. The other two need some debugging by someone who knows the target and/or these tests.

[Bug c/88088] -Wtrampolines should be enabled by -Wall (or -Wextra)

2018-11-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88088 --- Comment #12 from Segher Boessenkool --- Requiring everything on the stack to always be executable, while normally it is not, is an issue, sure. Requiring the stack to be executable when *everything* is executable *always*, is not an issue.

[Bug c/88088] -Wtrampolines should be enabled by -Wall (or -Wextra)

2018-11-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88088 --- Comment #10 from Segher Boessenkool --- As I said, very many targets have no concept of "executable" at all. Most of the *-elf targets, most (all?) of the *-aout targets. Not all of the world is Linux. -Wall is only for *easy to avoid*

[Bug c/88088] -Wtrampolines should be enabled by -Wall (or -Wextra)

2018-11-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88088 --- Comment #7 from Segher Boessenkool --- The number of targets where such a warning is meaningless is _big_, that is the point (most of the (older) embedded targets). If the warning warns where there is no problem, it does not belong in -Wall

[Bug c/88088] -Wtrampolines should be enabled by -Wall (or -Wextra)

2018-11-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88088 --- Comment #5 from Segher Boessenkool --- The documentation currently says '-Wtrampolines' Warn about trampolines generated for pointers to nested functions. A trampoline is a small piece of data or code that is created at run

[Bug target/87598] [8/9 Regression] Rejects "%a0" with constant

2018-11-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87598 --- Comment #9 from Segher Boessenkool --- Yes, and the powerpc part is ancient (and no one reported it), so I'm not planning to backport it.

[Bug rtl-optimization/87871] [9 Regression] testcases fail after r265398 on arm

2018-11-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87871 --- Comment #3 from Segher Boessenkool --- I don't know, this is up to the arm people. I don't know if all problems reported here are fixed now.

[Bug testsuite/87081] [9 regression] gcc.target/powerpc/vec-init-6.c failures with r262930

2018-11-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87081 Segher Boessenkool changed: What|Removed |Added Status|ASSIGNED|RESOLVED

[Bug rtl-optimization/85805] [7/8 Regression] Wrong code for 64 bit comparisons on avr-gcc

2018-11-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85805 Segher Boessenkool changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[Bug rtl-optimization/82024] wrong code with -Og -fgcse-sm -frerun-cse-after-loop --param=max-combine-insns=3

2018-11-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82024 Segher Boessenkool changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug rtl-optimization/71496] Two picbase loads created for libjava code on powerpc-darwin after rev 228022.

2018-11-19 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71496 --- Comment #10 from Segher Boessenkool --- Tobias: Yes, please file a new bug (with a small testcase, if possible). Thanks!

[Bug c/88088] -Wtrampolines should be enabled by -Wall (or -Wextra)

2018-11-19 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88088 --- Comment #3 from Segher Boessenkool --- It is good that it doesn't warn if trampolines are not data. This is not documented, fwiw. It also warns if the stack is executable *anyway*, like it is for many targets. This is not useful; as

[Bug rtl-optimization/71785] Computed gotos are mostly optimized away

2018-11-19 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71785 Segher Boessenkool changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug target/88100] no warning reported when value for vec_splat_{su}{8,16} would overflow

2018-11-19 Thread segher at gcc dot gnu.org
|UNCONFIRMED |NEW Last reconfirmed||2018-11-19 CC||segher at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #1 from Segher Boessenkool --- Confirmed. vec_splat_* do not check

[Bug target/58684] powerpc uses only unordered floating-point compares

2018-11-19 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58684 --- Comment #9 from Segher Boessenkool --- It is not resolved yet no. That patch has some biggish issues still.

[Bug c/88088] -Wtrampolines should be enabled by -Wall (or -Wextra)

2018-11-19 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88088 Segher Boessenkool changed: What|Removed |Added CC||segher at gcc dot gnu.org

[Bug inline-asm/87984] [7/8/9 Regression] wrong code for local reg var input to asm

2018-11-17 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87984 --- Comment #12 from Segher Boessenkool --- The lifetime of "a" ends where the for block ends. It is also wholly irrelevant here. If LLVM implement other semantics than GCC here, report that bug to LLVM.

[Bug inline-asm/87984] [7/8/9 Regression] wrong code for local reg var input to asm

2018-11-17 Thread segher at gcc dot gnu.org
||segher at gcc dot gnu.org Resolution|--- |INVALID --- Comment #10 from Segher Boessenkool --- Those testcases explicitly clobber the register you use for "a". That of course will not preserve the contents of "a". Registe

[Bug rtl-optimization/87708] [9 Regression] ira-shrinkwrap-prep-[12].c testcases fail after r265398

2018-11-16 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87708 --- Comment #3 from Segher Boessenkool --- The testcases are XFAILed; closing this PR now.

[Bug rtl-optimization/87708] [9 Regression] ira-shrinkwrap-prep-[12].c testcases fail after r265398

2018-11-16 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87708 Segher Boessenkool changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[Bug target/88055] ICE in extract_insn, at recog.c:2305 on ppc64le

2018-11-16 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88055 --- Comment #1 from Segher Boessenkool --- It does not fail for me.

[Bug rtl-optimization/87902] [9 Regression] Shrink-wrapping multiple conditions

2018-11-14 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87902 --- Comment #6 from Segher Boessenkool --- Oh sure, if all you want to do is extend the prepare_shrinkwrap function, that just works there and it doesn't need to do a lot of profitability trade-offs. However it isn't very effective there. It's

[Bug rtl-optimization/87817] [9 Regression] gcc.target/i386/bmi2-bzhi-2.c execution test

2018-11-14 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87817 Segher Boessenkool changed: What|Removed |Added CC||segher at gcc dot gnu.org

[Bug rtl-optimization/85925] [7/8/9 regression] Mis-compilation at -02, masking with 257 goes wrong in combine

2018-11-12 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85925 --- Comment #13 from Segher Boessenkool --- Sorry, I forgot. Here is the correct data: alpha 100.834% arm 100.040% c6x 100.000% csky 100.039% h8300 100.000% i386 100.000%

[Bug rtl-optimization/87763] [9 Regression] aarch64 target testcases fail after r265398

2018-11-12 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87763 --- Comment #4 from Segher Boessenkool --- (In reply to Wilco from comment #3) > IRA costing doesn't consider the possibility of a simple move being > removeable. Not always, yeah (only if you have matching constraints, which are silly to have

[Bug rtl-optimization/85925] [7/8/9 regression] Mis-compilation at -02, masking with 257 goes wrong in combine

2018-11-12 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85925 --- Comment #12 from Segher Boessenkool --- Yes, that is already running... Still has over an hour to go.

[Bug rtl-optimization/85925] [7/8/9 regression] Mis-compilation at -02, masking with 257 goes wrong in combine

2018-11-12 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85925 --- Comment #10 from Segher Boessenkool --- I get this: alpha 100.905% arm 100.072% c6x 100.000% csky 100.063% h8300 100.000% i386 100.000% microblaze 100.001% mips

[Bug rtl-optimization/85925] [7/8/9 regression] Mis-compilation at -02, masking with 257 goes wrong in combine

2018-11-11 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85925 --- Comment #8 from Segher Boessenkool --- I'm running this on all archs, to see what (if anything) degrades.

[Bug target/87949] PowerPC saves CR registers across calls

2018-11-09 Thread segher at gcc dot gnu.org
|unassigned at gcc dot gnu.org |segher at gcc dot gnu.org --- Comment #12 from Segher Boessenkool --- Wow, this works! Mine :-)

[Bug target/87949] PowerPC saves CR registers across calls

2018-11-09 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87949 --- Comment #11 from Segher Boessenkool --- Trying that out now.

[Bug target/87949] PowerPC saves CR registers across calls

2018-11-09 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87949 --- Comment #10 from Segher Boessenkool --- (In reply to David Edelsohn from comment #7) > This sounds like the general problem of the first RA pass creating > excessively long live ranges. Yeah. > Does GCC know how to re-materialize a

[Bug target/87949] PowerPC saves CR registers across calls

2018-11-09 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87949 --- Comment #9 from Segher Boessenkool --- (In reply to meissner from comment #6) - Comment #4 from Bill Schmidt --- > > Seems like a potential opportunity for shrink-wrap separate on the CRs. I'm > > not sure whether that's implemented yet. >

[Bug target/87949] PowerPC saves CR registers across calls

2018-11-09 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87949 --- Comment #8 from Segher Boessenkool --- (In reply to Bill Schmidt from comment #4) > Seems like a potential opportunity for shrink-wrap separate on the CRs. I'm > not sure whether that's implemented yet. It isn't; there are some technical

[Bug rtl-optimization/87902] [9 Regression] Shrink-wrapping multiple conditions

2018-11-08 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87902 --- Comment #4 from Segher Boessenkool --- All instructions that depend on the new registers can start later, too, if you move all new registers down. If you move copies from hard registers down it is much worse: you are extending the lifetime

[Bug rtl-optimization/87902] [9 Regression] Shrink-wrapping multiple conditions

2018-11-06 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87902 --- Comment #2 from Segher Boessenkool --- So why does it use r12 there if it could use r2? That's an RA problem. This is related to PR87708, in a way. prepare_shrinkwrap needs a good overhaul. Moving all copies down also *degrades* code

[Bug target/87583] error: unrecognizable insn on ppc64le

2018-11-06 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87583 Segher Boessenkool changed: What|Removed |Added Priority|P4 |P2

[Bug rtl-optimization/87871] [9 Regression] testcases fail after r265398 on arm

2018-11-05 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87871 --- Comment #1 from Segher Boessenkool --- Author: segher Date: Mon Nov 5 21:18:22 2018 New Revision: 265821 URL: https://gcc.gnu.org/viewcvs?rev=265821=gcc=rev Log: combine: Don't make an intermediate reg for assigning to sfp (PR87871) The

[Bug middle-end/18041] OR of two single-bit bitfields is inefficient

2018-11-05 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=18041 --- Comment #10 from Segher Boessenkool --- If combine tries to split RTL into two instructions, it tries to do that one way (and one way only). It picked the AND here. It did not work. You can add some define_split to your target to help

[Bug target/87583] error: unrecognizable insn on ppc64le

2018-11-05 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87583 --- Comment #3 from Segher Boessenkool --- It's the same problem as many other PRs. You are using -mcpu=power8 (it is the default for powerpc64le), but disabling some 2.04 insns (power5+).

[Bug rtl-optimization/87678] Redundant vmovss with -fPIC

2018-11-03 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87678 --- Comment #11 from Segher Boessenkool --- Should LRA do this? Shouldn't it be done earlier? Or later, in a peephole for example?

[Bug rtl-optimization/87678] Redundant vmovss with -fPIC

2018-11-02 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87678 --- Comment #9 from Segher Boessenkool --- Ah. So you want this optimisation (which is currently done by LRA) to be done by combine as well; it's not that the resulting assembler code for this testcase is worse than what you'd like to see. And

[Bug rtl-optimization/87678] Redundant vmovss with -fPIC

2018-11-02 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87678 --- Comment #7 from Segher Boessenkool --- Hi Uros, It's not clear to me what you would have liked it to do instead?

[Bug rtl-optimization/87678] Redundant vmovss with -fPIC

2018-11-02 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87678 --- Comment #4 from Segher Boessenkool --- It tries twice, first just the substitution, and then that modified with the REG_EQUAL. You know a mem is not often valid in the resulting insn, but combine doesn't, and that is not the same thing as

[Bug rtl-optimization/87507] IRA unnecessarily uses non-volatile registers during register assignment

2018-10-30 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87507 --- Comment #9 from Segher Boessenkool --- Why isn't this handled in subreg1 already? Sorry if that is obvious :-)

[Bug rtl-optimization/87708] [9 Regression] ira-shrinkwrap-prep-[12].c testcases fail after r265398

2018-10-30 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87708 --- Comment #2 from Segher Boessenkool --- Author: segher Date: Tue Oct 30 19:49:36 2018 New Revision: 265639 URL: https://gcc.gnu.org/viewcvs?rev=265639=gcc=rev Log: xfail ira-shrink-wrap-prep tests (PR87708) After r265398, the

[Bug d/87789] D does not build on powerpc64-linux

2018-10-30 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87789 Segher Boessenkool changed: What|Removed |Added Component|bootstrap |d Assignee|unassigned at

[Bug rtl-optimization/87780] [9 regression] ICE error: unrecognizable insn

2018-10-29 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87780 --- Comment #6 from Segher Boessenkool --- That sounds like a clang problem; without more information, anyway.

[Bug bootstrap/87789] New: D does not build on powerpc64-linux

2018-10-29 Thread segher at gcc dot gnu.org
Assignee: unassigned at gcc dot gnu.org Reporter: segher at gcc dot gnu.org Target Milestone: --- $HOME/src/gcc/libphobos/src/std/internal/math/gammafunction.d:259:5: error: static assert "missing MAXGAMMA for other real types"

[Bug rtl-optimization/87701] [9 Regression] ICE in elimination_costs_in_insn, at reload1.c:3640 since r265398

2018-10-29 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87701 Segher Boessenkool changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug rtl-optimization/87780] [9 regression] ICE error: unrecognizable insn

2018-10-29 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87780 Segher Boessenkool changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug rtl-optimization/87701] [9 Regression] ICE in elimination_costs_in_insn, at reload1.c:3640 since r265398

2018-10-29 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87701 --- Comment #8 from Segher Boessenkool --- Author: segher Date: Mon Oct 29 07:36:45 2018 New Revision: 265582 URL: https://gcc.gnu.org/viewcvs?rev=265582=gcc=rev Log: combine: Fix various shortcomings in make_more_copies (PR87701, PR87780)

[Bug rtl-optimization/87780] [9 regression] ICE error: unrecognizable insn

2018-10-29 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87780 --- Comment #3 from Segher Boessenkool --- Author: segher Date: Mon Oct 29 07:36:45 2018 New Revision: 265582 URL: https://gcc.gnu.org/viewcvs?rev=265582=gcc=rev Log: combine: Fix various shortcomings in make_more_copies (PR87701, PR87780)

[Bug rtl-optimization/87780] [9 regression] ICE error: unrecognizable insn

2018-10-29 Thread segher at gcc dot gnu.org
||segher at gcc dot gnu.org Component|target |rtl-optimization Assignee|unassigned at gcc dot gnu.org |segher at gcc dot gnu.org --- Comment #2 from Segher Boessenkool --- Mine.

[Bug inline-asm/55681] Qualifiers on asm statements are order-dependent

2018-10-28 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55681 Segher Boessenkool changed: What|Removed |Added CC||segher at gcc dot gnu.org

[Bug rtl-optimization/87701] [9 Regression] ICE in elimination_costs_in_insn, at reload1.c:3640 since r265398

2018-10-27 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87701 --- Comment #7 from Segher Boessenkool --- I have a patch. rtl.texi has this to say about subregs of hard regs: === @item hard registers It is seldom necessary to wrap hard registers in @code{subreg}s; such registers would normally reduce to a

[Bug rtl-optimization/87701] [9 Regression] ICE in elimination_costs_in_insn, at reload1.c:3640 since r265398

2018-10-27 Thread segher at gcc dot gnu.org
|unassigned at gcc dot gnu.org |segher at gcc dot gnu.org --- Comment #6 from Segher Boessenkool --- We start off with (insn 36 35 9 2 (set (reg:V4SI 104) (subreg:V4SI (reg:TI 1 dx [ b ]) 0)) "87701.cc":13:31 -1 (expr_list:REG_DEAD (reg:DI 2 cx) (expr_list:REG_DEAD

[Bug rtl-optimization/87701] [9 Regression] ICE in elimination_costs_in_insn, at reload1.c:3640 since r265398

2018-10-27 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87701 --- Comment #5 from Segher Boessenkool --- I see the problem. Mine.

[Bug rtl-optimization/87701] [9 Regression] ICE in elimination_costs_in_insn, at reload1.c:3640 since r265398

2018-10-27 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87701 Segher Boessenkool changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|2018-10-23

[Bug target/85669] fail on s-case-cfn-macros: build/gencfn-macros: DEF_INTERNAL_FLT/INT_FN (%smth%) has no associated built-in functions

2018-10-27 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669 --- Comment #65 from Segher Boessenkool --- Iain: This is fine for trunk and all open branches you want it on. Thanks!

[Bug rtl-optimization/87763] [9.0 Regression] aarch64 target testcases fail after r265398

2018-10-26 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87763 Segher Boessenkool changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug target/85669] fail on s-case-cfn-macros: build/gencfn-macros: DEF_INTERNAL_FLT/INT_FN (%smth%) has no associated built-in functions

2018-10-26 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669 --- Comment #58 from Segher Boessenkool --- (In reply to Iain Sandoe from comment #53) > (In reply to Wilco from comment #52) > > (In reply to Segher Boessenkool from comment #50) > > > The generic code rounded up the allocation size twice, and

[Bug target/85669] fail on s-case-cfn-macros: build/gencfn-macros: DEF_INTERNAL_FLT/INT_FN (%smth%) has no associated built-in functions

2018-10-26 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669 --- Comment #57 from Segher Boessenkool --- The blrl thing ("skip a return") doesn't kill the return stack; all CPUs with a return stack can recover it here afaik. Recovery of course takes a little time still. Newer CPUs predict BL+4 as

[Bug rtl-optimization/87761] [9 regression][MIPS] New FAIL: gcc.target/mips/fix-r4000-10.c -O1 start with r265398

2018-10-26 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87761 --- Comment #3 from Segher Boessenkool --- All of those look like register allocation problems, except perhaps that last one.

[Bug target/85669] fail on s-case-cfn-macros: build/gencfn-macros: DEF_INTERNAL_FLT/INT_FN (%smth%) has no associated built-in functions

2018-10-26 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669 --- Comment #50 from Segher Boessenkool --- The generic code rounded up the allocation size twice, and that isn't needed. The problem has been solved for other targets before; a patch for Darwin is at

[Bug target/85669] fail on s-case-cfn-macros: build/gencfn-macros: DEF_INTERNAL_FLT/INT_FN (%smth%) has no associated built-in functions

2018-10-26 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669 --- Comment #49 from Segher Boessenkool --- (In reply to Douglas Mencken from comment #46) > Yeah, PowerPC doesn’t have addressing via PC, thus it requires to do tricks > like that No, we don't have to do such strange code. The usual way is to

[Bug target/85669] fail on s-case-cfn-macros: build/gencfn-macros: DEF_INTERNAL_FLT/INT_FN (%smth%) has no associated built-in functions

2018-10-25 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669 --- Comment #29 from Segher Boessenkool --- It aligns the stack to 16: # r3 is size, at entry addi r3,r3,18 ... rlwinm r3,r3,0,0,27 ... neg r3,r3 ... lwz r2,0(r1) ...

[Bug target/85669] fail on s-case-cfn-macros: build/gencfn-macros: DEF_INTERNAL_FLT/INT_FN (%smth%) has no associated built-in functions

2018-10-25 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669 Segher Boessenkool changed: What|Removed |Added CC||iains at gcc dot gnu.org ---

[Bug target/85669] fail on s-case-cfn-macros: build/gencfn-macros: DEF_INTERNAL_FLT/INT_FN (%smth%) has no associated built-in functions

2018-10-25 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669 --- Comment #20 from Segher Boessenkool --- This is #define SUPPORTS_STACK_ALIGNMENT (MAX_STACK_ALIGNMENT > STACK_BOUNDARY) and #define MAX_STACK_ALIGNMENT STACK_BOUNDARY so that seems normal.

[Bug rtl-optimization/87720] [9 Regression] [MIPS] ICE: gcc.c-torture/execute/builtins/lib/chk.c:33:1: in int_mode_for_mode, at stor-layout.c:403 after r265398

2018-10-24 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87720 Segher Boessenkool changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug rtl-optimization/87720] [9 Regression] [MIPS] ICE: gcc.c-torture/execute/builtins/lib/chk.c:33:1: in int_mode_for_mode, at stor-layout.c:403 after r265398

2018-10-24 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87720 --- Comment #5 from Segher Boessenkool --- Author: segher Date: Wed Oct 24 22:34:40 2018 New Revision: 265474 URL: https://gcc.gnu.org/viewcvs?rev=265474=gcc=rev Log: combine: Don't do make_more_copies for dest PC (PR87720) Jumps are written

[Bug rtl-optimization/87716] [9 Regression] FAIL: gcc.target/i386/pr57193.c scan-assembler-times movdqa 2

2018-10-24 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87716 --- Comment #3 from Segher Boessenkool --- (and swap xmm0 and xmm3 in all later instructions). Yes. But it seems IRA doesn't figure this out.

[Bug fortran/87689] Memory corruption on Power 8

2018-10-24 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87689 --- Comment #7 from Segher Boessenkool --- -O0 is the default.

[Bug rtl-optimization/87720] [9 Regression] [MIPS] ICE: gcc.c-torture/execute/builtins/lib/chk.c:33:1: in int_mode_for_mode, at stor-layout.c:403 after r265398

2018-10-24 Thread segher at gcc dot gnu.org
||2018-10-24 Assignee|unassigned at gcc dot gnu.org |segher at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #4 from Segher Boessenkool --- Okay I managed to build a cross-compiler. Confirmed; needs -O1 but nothing more. (set

[Bug rtl-optimization/87720] [9 Regression] [MIPS] ICE: gcc.c-torture/execute/builtins/lib/chk.c:33:1: in int_mode_for_mode, at stor-layout.c:403 after r265398

2018-10-24 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87720 --- Comment #3 from Segher Boessenkool --- Hi Paul, How can the mode of dest be different from that of the source? How does PC get into this? Could you show an example of bad / good RTL?

[Bug rtl-optimization/87716] [9 Regression] FAIL: gcc.target/i386/pr57193.c scan-assembler-times movdqa 2

2018-10-23 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87716 --- Comment #1 from Segher Boessenkool --- A slightly older compiler gave test1: movdqa (%rdi), %xmm2 pavgb (%rsi), %xmm2 movdqa %xmm2, %xmm3 punpckhbw %xmm1, %xmm2 punpcklbw %xmm1, %xmm3

[Bug fortran/87689] Memory corruption on Power 8

2018-10-23 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87689 --- Comment #5 from Segher Boessenkool --- No, doesn't ring bells. But I have some more input: I couldn't get it to fail on powerpc64-linux. It fails on powerpc64le-linux only if the second file is compiled with -O0. As output I get just $

[Bug target/85669] fail on s-case-cfn-macros: build/gencfn-macros: DEF_INTERNAL_FLT/INT_FN (%smth%) has no associated built-in functions

2018-10-23 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669 --- Comment #10 from Segher Boessenkool --- Thanks Douglas, no that is fine of course :-) What I wanted to know is, does it fail for the newest versions as well. So it appears it does. Which Ryan already said but I have trouble reading

[Bug target/85669] fail on s-case-cfn-macros: build/gencfn-macros: DEF_INTERNAL_FLT/INT_FN (%smth%) has no associated built-in functions

2018-10-23 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669 --- Comment #8 from Segher Boessenkool --- Is this on all (PowerPC) Darwin? Only one some versions? Which, then?

[Bug rtl-optimization/87708] New: ira-shrinkwrap-prep-[12].c testcases fail after r265398

2018-10-23 Thread segher at gcc dot gnu.org
Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: segher at gcc dot gnu.org Target Milestone: --- These fail on many targets, and simply because the split_live_ranges_for_shrink_wrap code can only move direct copies from the hard

[Bug rtl-optimization/87600] Fix for PRs 86939 and 87479 causes build issues for several targets

2018-10-22 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87600 --- Comment #5 from Segher Boessenkool --- Author: segher Date: Mon Oct 22 20:23:39 2018 New Revision: 265398 URL: https://gcc.gnu.org/viewcvs?rev=265398=gcc=rev Log: combine: Do not combine moves from hard registers On most targets every

[Bug c/87038] diagnostics: Please add warning for jumping over initializers with switch/case in C mode

2018-10-22 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87038 --- Comment #20 from Segher Boessenkool --- That is still not what I said, so don't pretend I did please. Those are also not false positives: in all these cases, the program does in fact skip some initialisation. But, it seems

[Bug rtl-optimization/87678] Redundant vmovss with -fPIC

2018-10-22 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87678 --- Comment #2 from Segher Boessenkool --- This is a much more general problem in combine. In general it only tries once, and it only tries the fully simplified form, including known bit values etc.

[Bug target/87598] [8/9 Regression] Rejects "%a0" with constant

2018-10-22 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87598 --- Comment #7 from Segher Boessenkool --- Author: segher Date: Mon Oct 22 14:03:22 2018 New Revision: 265392 URL: https://gcc.gnu.org/viewcvs?rev=265392=gcc=rev Log: rs6000: Handle print_operand_address for unexpected RTL (PR87598) As the PR

[Bug target/87598] [8/9 Regression] Rejects "%a0" with constant

2018-10-22 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87598 --- Comment #6 from Segher Boessenkool --- No problem, and thanks for finding and reporting the bug :-) This bug is over 25 years old... I'm committing a fix for the rs6000 part.

[Bug c/87038] diagnostics: Please add warning for jumping over initializers with switch/case in C mode

2018-10-21 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87038 --- Comment #18 from Segher Boessenkool --- (In reply to Harald van Dijk from comment #15) > (In reply to Segher Boessenkool from comment #10) > > The initialisation (the call to f1) could have a side effect, but the > > a==1 case skips that.

[Bug c/87038] diagnostics: Please add warning for jumping over initializers with switch/case in C mode

2018-10-21 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87038 --- Comment #14 from Segher Boessenkool --- I am saying that no warning should warn for things that are valid C but invalid C++, except with -Wc++-compat; not for that reason, anyway. -Wjump-misses-init should warn here: the jump does miss the

[Bug c/87038] diagnostics: Please add warning for jumping over initializers with switch/case in C mode

2018-10-21 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87038 --- Comment #12 from Segher Boessenkool --- That is not a reason to have the warning in C, not without some "-Wc++-compat" or similar; and in C++ it should be an error you say, not a warning at all.

[Bug c/87038] diagnostics: Please add warning for jumping over initializers with switch/case in C mode

2018-10-21 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87038 --- Comment #10 from Segher Boessenkool --- The initialisation (the call to f1) could have a side effect, but the a==1 case skips that. GCC is right to warn here in my opinion.

[Bug target/87598] [8/9 Regression] Rejects "%a0" with constant

2018-10-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87598 --- Comment #3 from Segher Boessenkool --- GCC 7 fails for me like the rest, and according to history it should have failed since day 1, over 28 years ago. Is that "works with 7.3.1" for aarch64 only?

[Bug middle-end/86172] [meta-bug] issues with -Wnull-dereference

2018-10-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86172 Segher Boessenkool changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug target/87598] [8/9 Regression] Rejects "%a0" with constant

2018-10-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87598 --- Comment #2 from Segher Boessenkool --- rs6000.c print_operand_address does not like (const_int 0) or any other const_int. Power *can* actually have constant numbers as data addresses, but only for instructions that have some D form; and GCC

[Bug c/87038] diagnostics: Please add warning for jumping over initializers with switch/case in C mode

2018-10-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87038 Segher Boessenkool changed: What|Removed |Added CC||segher at gcc dot gnu.org

[Bug middle-end/86172] [meta-bug] issues with -Wnull-dereference

2018-10-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86172 --- Comment #4 from Segher Boessenkool --- At least some of what? I don't follow. _Is_ there anything that prevents us from enabling -Wnull-dereference at -Wextra or -Wall or even by default? Does it have false positives?

[Bug target/87598] [8/9 Regression] Rejects "%a0" with constant

2018-10-19 Thread segher at gcc dot gnu.org
*-*-* Status|UNCONFIRMED |NEW Last reconfirmed||2018-10-20 CC||segher at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #1 from Segher Boessenkool --- It fails on all powerpc

[Bug rtl-optimization/87600] Fix for PRs 86939 and 87479 causes build issues for several targets

2018-10-14 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87600 --- Comment #4 from Segher Boessenkool --- Oh btw, the #c3 problem isn't new at all, it happens with 4.8 already for example.

[Bug rtl-optimization/87600] Fix for PRs 86939 and 87479 causes build issues for several targets

2018-10-14 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87600 --- Comment #3 from Segher Boessenkool --- Here is an example for aarch64: === long f(long x) { register long a asm("x0"); asm("bla %0 %1" : "+"(a) : "r"(x)); return a; } === The first asm operand is a local register

[Bug target/87583] error: unrecognizable insn on ppc64le

2018-10-11 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87583 Segher Boessenkool changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

<    1   2   3   4   5   6   7   8   9   10   >