[PATCH] improve ifcvt optimization (PR rtl-optimization/89430)

2019-03-14 Thread JiangNing OS
This patch is to fix a missing ifcvt opportunity in back-end. For the simple case below, if (...) x = a; /* x is memory */ /* no else */ We can generate conditional move and remove the branch as below if the target cost is acceptable. r1 = x r2 = a cmp ... csel r3, r1, r2, cond x = r3 T

Go patch committed: Eliminate bounds checks in append expression

2019-03-14 Thread Ian Lance Taylor
This patch by Cherry Zhang fixes the Go frontend to eliminate bound checks in an append expression. The compiler generates two array index expressions when lowering an append expression. Currently they generate bound checks. Bound checks are not necessary in this case, as we know the slice has,

Re: [PATCH] Don't ICE on &&lab1-&&lab2 in dwarf2out (PR debug/89704)

2019-03-14 Thread Jason Merrill
On 3/14/19 7:01 PM, Jakub Jelinek wrote: Hi! On the following testcase, we have tree initializers that satisfy initializer_constant_valid_p and do: rtl = rtl_for_decl_init (init, type); if (rtl) return add_const_value_attribute (die, rtl); add_const_value_attribute has a l

[PATCH] fix ice in attribute copy (PR 89685)

2019-03-14 Thread Martin Sebor
To copy type attributes from struct A, the copy attribute (new in GCC 9) accepts a pointer argument such as (struct A*)0, but it isn't prepared for anything much more complicated than that. So for example when it's passed something like (struct A*)(0, 1) as the test case in PR 89685 does (a P1 reg

[PATCH] [AARCH64] Improve vector generation cost model

2019-03-14 Thread apinski
From: Andrew Pinski Hi, On OcteonTX2, ld1r and ld1 (with a single lane) are split into two different micro-ops unlike most other targets. This adds three extra costs to the cost table: ld1_dup: used for "ld1r {v0.4s}, [x0]" merge_dup: used for "dup v0.4s, v0.4s[0]" and "ins v0.4s[0], v0.4s[0]"

[PATCH] Don't ICE on &&lab1-&&lab2 in dwarf2out (PR debug/89704)

2019-03-14 Thread Jakub Jelinek
Hi! On the following testcase, we have tree initializers that satisfy initializer_constant_valid_p and do: rtl = rtl_for_decl_init (init, type); if (rtl) return add_const_value_attribute (die, rtl); add_const_value_attribute has a list of rtl codes it expects in the initializer

[PATCH] Strip location wrappers inside of inchash::add_expr (PR c++/89709)

2019-03-14 Thread Jakub Jelinek
Hi! As mentioned in the PR, r267272 added STRIP_ANY_LOCATION_WRAPPERS at the start of operand_equal_p, but has not updated inchash::add_expr which needs to follow what operand_equal_p does, so that if two trees compare equal, they get the same hash value. For location wrappers at the outermost lev

Re: [Patch] PR rtl-optimization/87763 - generate more bfi instructions on aarch64

2019-03-14 Thread Steve Ellcey
Double ping. Steve Ellcey sell...@marvell.com On Tue, 2019-02-26 at 08:44 -0800, Steve Ellcey wrote: > Ping. > > Steve Ellcey > sell...@marvell.com > > > On Mon, 2019-02-11 at 10:46 -0800, Steve Ellcey wrote: > > On Thu, 2019-02-07 at 18:13 +, Wilco Dijkstra wrote > > > > > > Hi Steve, >

Re: [patch] Fix ASAN failures on SPARC64/Linux

2019-03-14 Thread Jakub Jelinek
On Thu, Mar 14, 2019 at 11:01:37PM +0100, Eric Botcazou wrote: > > Not if the >> 3 shift is arithmetic shift. > > Sorry, I don't understand how this can work. For some configurations, libasan defines SHADOW_OFFSET to __asan_shadow_memory_dynamic_address (exported uptr symbol from libasan), so SHA

Re: [patch] Fix ASAN failures on SPARC64/Linux

2019-03-14 Thread Eric Botcazou
> Not if the >> 3 shift is arithmetic shift. Sorry, I don't understand how this can work. -- Eric Botcazou

Re: [PATCH] Fix -gdwarf-5 -gsplit-dwarf ICEs (PR debug/89498)

2019-03-14 Thread Alexandre Oliva
On Mar 12, 2019, Jakub Jelinek wrote: > Note, for DWARF before v4, there is no DW_FORM_sec_offset and > DW_FORM_data4 or DW_FORM_data8 depending on whether it is 32-bit or 64-bit > DWARF is used instead. Ah, yes, thanks. I made these fixes, changed some dashes to underlines in "identifiers", an

Re: [C++ Patch] PR 89571 ("[9 Regression] ICE in nothrow_spec_p, at cp/except.c:1238")

2019-03-14 Thread Paolo Carlini
Hi, On 14/03/19 21:03, Jason Merrill wrote: On 3/12/19 7:21 AM, Paolo Carlini wrote: Hi, this is just an error recovery ICE but maybe we can fix it in time for 9.1.0, like c++/89488, which is somehow related. Indeed, the problem is again a !DEFERRED_NOEXCEPT_SPEC_P gcc_assert triggering whe

Re: [C++ debug PATCH] [PR88534] accept VAR_DECL in class literal template parms

2019-03-14 Thread Jason Merrill
On 3/14/19 4:20 PM, Marek Polacek wrote: On Thu, Mar 14, 2019 at 05:14:49PM -0300, Alexandre Oliva wrote: P0732R2 / C++ 2a introduce class literals as template parameters. The front-end uses VAR_DECLs constructed from such literals to bind the template PARM_DECLs, but dwarf2out.c used to reject

Re: C++ PATCH for c++/89612 - ICE with member friend template with noexcept

2019-03-14 Thread Jason Merrill
On 3/7/19 4:52 PM, Marek Polacek wrote: This was one of those PRs where the more you poke, the more ICEs turn up. This patch fixes the ones I could find. The original problem was that maybe_instantiate_noexcept got a TEMPLATE_DECL created for the member friend template in do_friend. Its noexcep

Re: [C++ debug PATCH] [PR88534] accept VAR_DECL in class literal template parms

2019-03-14 Thread Marek Polacek
On Thu, Mar 14, 2019 at 05:14:49PM -0300, Alexandre Oliva wrote: > P0732R2 / C++ 2a introduce class literals as template parameters. The > front-end uses VAR_DECLs constructed from such literals to bind the > template PARM_DECLs, but dwarf2out.c used to reject such VAR_DECLs. > > Taking DECL_INIT

[C++ debug PATCH] [PR88534] accept VAR_DECL in class literal template parms

2019-03-14 Thread Alexandre Oliva
P0732R2 / C++ 2a introduce class literals as template parameters. The front-end uses VAR_DECLs constructed from such literals to bind the template PARM_DECLs, but dwarf2out.c used to reject such VAR_DECLs. Taking DECL_INITIAL from such VAR_DECLs enables the generation of DW_AT_const_value for the

Re: [C++ Patch] PR 89571 ("[9 Regression] ICE in nothrow_spec_p, at cp/except.c:1238")

2019-03-14 Thread Jason Merrill
On 3/12/19 7:21 AM, Paolo Carlini wrote: Hi, this is just an error recovery ICE but maybe we can fix it in time for 9.1.0, like c++/89488, which is somehow related. Indeed, the problem is again a !DEFERRED_NOEXCEPT_SPEC_P gcc_assert triggering where, earlier, process_subob_fn had maybe_instan

[C++ PATCH] Don't require 'bool' in a concept definition.

2019-03-14 Thread Jason Merrill
The concepts overhaul isn't ready yet, but we should at least support concept definitions without bool; that has been the one thing that prevents people from writing code that works in both TS and C++20 concepts. Tested x86_64-pc-linux-gnu, applying to trunk. * parser.c (cp_parser_decl_sp

Re: V4 [PATCH] i386: Handle REG_EH_REGION note

2019-03-14 Thread Jakub Jelinek
On Fri, Mar 15, 2019 at 03:36:15AM +0800, H.J. Lu wrote: > Like this? Yes. > gcc/ > > PR target/89650 > * config/i386/i386.c (remove_partial_avx_dependency): Handle > REG_EH_REGION note. > > gcc/testsuite/ > > PR target/89650 > * g++.target/i386/pr89650.C: New tes

V4 [PATCH] i386: Handle REG_EH_REGION note

2019-03-14 Thread H.J. Lu
On 3/14/19, Jakub Jelinek wrote: > On Thu, Mar 14, 2019 at 09:08:17PM +0800, H.J. Lu wrote: >> --- a/gcc/config/i386/i386.c >> +++ b/gcc/config/i386/i386.c >> @@ -2819,6 +2819,8 @@ remove_partial_avx_dependency (void) >>rtx set; >>rtx v4sf_const0 = NULL_RTX; >> >> + auto_vec splitted_insn

Re: duplicate using declarations

2019-03-14 Thread Paolo Carlini
Hi Nathan, On 14/03/19 16:59, Nathan Sidwell wrote: I see this is DR 36. http://wiki.edg.com/pub/Wg21kona2019/CoreWorkingGroup/cwg_active.html#36 I still think we should drop this check, for one thing we don't apply it consistently (eg, naming an unscoped enum value). I see that for example

Re: [PATCH] Fix PR89710

2019-03-14 Thread Jakub Jelinek
On Thu, Mar 14, 2019 at 03:10:59PM +0100, Richard Biener wrote: > I've added a testcase. > > Bootstrapped and tested on x86_64-unknown-linux-gnu, OK for trunk > or should it wait for GCC10? I meant something like following where we'd clean it up everything right away after we DCE some returns_twi

Re: [PATCH] Fix up tree-ssa-strlen.c ICEs (PR tree-optimization/89703)

2019-03-14 Thread Jakub Jelinek
On Thu, Mar 14, 2019 at 10:08:55AM -0600, Martin Sebor wrote: > What solution would you like to see for these (pointer vs integer) > mismatches? For GCC 9, I'd probably like most adding the similar pointer vs. non-pointer test to the return value like there is for the arguments, unless there is so

Re: [PATCH] Fix up tree-ssa-strlen.c ICEs (PR tree-optimization/89703)

2019-03-14 Thread Martin Sebor
On 3/14/19 2:43 AM, Jakub Jelinek wrote: On Thu, Mar 14, 2019 at 12:50:28AM +, Joseph Myers wrote: The C FE sadly passes through some really bad prototypes of builtin functions as "harmless": /* Accept "harmless" mismatches in function types such as missing qualifier

Re: duplicate using declarations

2019-03-14 Thread Nathan Sidwell
I see this is DR 36. http://wiki.edg.com/pub/Wg21kona2019/CoreWorkingGroup/cwg_active.html#36 I still think we should drop this check, for one thing we don't apply it consistently (eg, naming an unscoped enum value). On 3/14/19 11:47 AM, Nathan Sidwell wrote: Jason, Paolo, This concerns: nam

duplicate using declarations

2019-03-14 Thread Nathan Sidwell
Jason, Paolo, This concerns: namespace N { int i; } void f () { using N::i; using N::i; // { dg-error "declared" } } which is extracted from g++.dg/lookup/using53.C added fixing https://gcc.gnu.org/bugzilla/show_bug.cgi?id=20420 The comment mentions C++11 7.3.3/10, which does giv

Re: [PATCH] Adjust gcc.dg/uninit-pred-8_b.c (PR89551)

2019-03-14 Thread Richard Biener
On Thu, 14 Mar 2019, Christophe Lyon wrote: > On Thu, 14 Mar 2019 at 15:35, Jakub Jelinek wrote: > > > > On Thu, Mar 14, 2019 at 03:32:39PM +0100, Christophe Lyon wrote: > > > > 2019-03-04 Richard Biener > > > > > > > > PR testsuite/89551 > > > > * gcc.dg/uninit-pred-8_b.c: For

Re: [PATCH] Adjust gcc.dg/uninit-pred-8_b.c (PR89551)

2019-03-14 Thread Christophe Lyon
On Thu, 14 Mar 2019 at 15:35, Jakub Jelinek wrote: > > On Thu, Mar 14, 2019 at 03:32:39PM +0100, Christophe Lyon wrote: > > > 2019-03-04 Richard Biener > > > > > > PR testsuite/89551 > > > * gcc.dg/uninit-pred-8_b.c: Force logical-op-non-short-circuit > > > the way that

Re: [PATCH] Adjust gcc.dg/uninit-pred-8_b.c (PR89551)

2019-03-14 Thread Jakub Jelinek
On Thu, Mar 14, 2019 at 03:32:39PM +0100, Christophe Lyon wrote: > > 2019-03-04 Richard Biener > > > > PR testsuite/89551 > > * gcc.dg/uninit-pred-8_b.c: Force logical-op-non-short-circuit > > the way that makes the testcase PASS. > > Hi Richard, > > I think you forgot

Re: [PATCH] Adjust gcc.dg/uninit-pred-8_b.c (PR89551)

2019-03-14 Thread Richard Biener
On March 14, 2019 3:32:39 PM GMT+01:00, Christophe Lyon wrote: >On Mon, 4 Mar 2019 at 11:25, Richard Biener wrote: >> >> >> The CFG cleanup change made us remove an extra forwarder which >somehow >> makes VRP jump threading go berzerk. Fortunately only on >> logical-op-non-short-circuit=0 targe

Re: [PATCH] Adjust gcc.dg/uninit-pred-8_b.c (PR89551)

2019-03-14 Thread Christophe Lyon
On Mon, 4 Mar 2019 at 11:25, Richard Biener wrote: > > > The CFG cleanup change made us remove an extra forwarder which somehow > makes VRP jump threading go berzerk. Fortunately only on > logical-op-non-short-circuit=0 targets so the easy way to fix the > testcase is to force that our way. > > T

[PATCH][DOC][OBVIOUS] Remove dead option from manual (PR other/89712).

2019-03-14 Thread Martin Liška
Hi. This is removal of not supported option. I'm going to install it as obvious. Martin gcc/ChangeLog: 2019-03-14 Martin Liska PR other/89712 * doc/invoke.texi: Remove -fdump-class-hierarchy option. --- gcc/doc/invoke.texi | 1 - 1 file changed, 1 deletion(-) diff --git a

Re: [PATCH] Fix PR89710

2019-03-14 Thread Richard Biener
On Thu, 14 Mar 2019, Richard Biener wrote: > On Thu, 14 Mar 2019, Jakub Jelinek wrote: > > > On Thu, Mar 14, 2019 at 11:23:03AM +0100, Richard Biener wrote: > > > I am testing the following. There's IMHO also a missed optimization > > > (for CFG-cleanup?) that when a block does not end up in a c

Re: [PATCH] Fix mips subreg handling (PR target/89378)

2019-03-14 Thread Jeff Law
On 3/14/19 7:52 AM, Jakub Jelinek wrote: > Hi! > > On the gcc.dg/vect/pr88598-3.c testcase, gen_vec_extract... is called with > operands[1] that is already a subreg - (subreg:V4SF (reg:V4SI 201 [ _31 ]) 0) > and wraps it in another SUBREG, which is invalid in RTL. > > In all the following 4 spots

[PATCH 3/3] Fix GNU coding style in lto-common.c.

2019-03-14 Thread marxin
gcc/lto/ChangeLog: 2019-03-14 Martin Liska * lto-common.c: Update coding style. * lto.c (materialize_cgraph): Likewise. --- gcc/lto/lto-common.c | 214 ++- gcc/lto/lto.c| 30 +++--- 2 files changed, 128 insertions(+), 116 delet

[PATCH 2/3] Add lto-dump tool.

2019-03-14 Thread marxin
gcc/ChangeLog: 2019-03-14 Hrishikesh Kulkarni Martin Liska * Makefile.in: Add lto-dump.texi. * cgraph.h: Add new functions dump_visibility and dump_type_name. * doc/gcc.texi: Include lto-dump section. * doc/lto-dump.texi: New file.

[PATCH 0/3][stage1] [PATCH v2] LTO dump tool

2019-03-14 Thread marxin
Hi. The patch series is a remake of Hrishikesh's LTO dump tool that was part of GSoC last year. I decided to split the patch into 3 parts, where the first one is purely mechanical splitting code into a newly created one. The second part introduces the new tool. And the last one is about GNU coding

[PATCH] Fix mips subreg handling (PR target/89378)

2019-03-14 Thread Jakub Jelinek
Hi! On the gcc.dg/vect/pr88598-3.c testcase, gen_vec_extract... is called with operands[1] that is already a subreg - (subreg:V4SF (reg:V4SI 201 [ _31 ]) 0) and wraps it in another SUBREG, which is invalid in RTL. In all the following 4 spots I've verified that the operand's mode is some 128-bit

Re: [PR 89546] Add forgotten requeing in propagate_subaccesses_across_link

2019-03-14 Thread Richard Biener
On Thu, 14 Mar 2019, Martin Jambor wrote: > Hi, > > PR 89546 is a nasty miscompilation bug that is in the compiler since > r247604 (May 2017) but is surprisingly hard to trigger. Since that > revision, SRA does not consider all aggregates that are assigned a value > in a gimple assignment statem

[PR 89546] Add forgotten requeing in propagate_subaccesses_across_link

2019-03-14 Thread Martin Jambor
Hi, PR 89546 is a nasty miscompilation bug that is in the compiler since r247604 (May 2017) but is surprisingly hard to trigger. Since that revision, SRA does not consider all aggregates that are assigned a value in a gimple assignment statement from another aggregate as automatically containing

Re: [PATCH][i386] Fix DECL_RESULT building for resolver

2019-03-14 Thread Segher Boessenkool
On Thu, Mar 14, 2019 at 12:29:37PM +0100, Richard Biener wrote: > The following properly sets DECL_CONTEXT of the result decl we build, > otherwise LTO happily merges those across different resolver decls > ending up in IPA PTA ICEing on this invalidity. > > Bootstrap & regtest running on x86_64-u

Re: V3 [PATCH] i386: Handle REG_EH_REGION note

2019-03-14 Thread Jakub Jelinek
On Thu, Mar 14, 2019 at 09:08:17PM +0800, H.J. Lu wrote: > --- a/gcc/config/i386/i386.c > +++ b/gcc/config/i386/i386.c > @@ -2819,6 +2819,8 @@ remove_partial_avx_dependency (void) >rtx set; >rtx v4sf_const0 = NULL_RTX; > > + auto_vec splitted_insn; Perhaps throwing_insns or flow_transfe

V3 [PATCH] i386: Handle REG_EH_REGION note

2019-03-14 Thread H.J. Lu
On 3/14/19, H.J. Lu wrote: > On Thu, Mar 14, 2019 at 4:34 PM Jakub Jelinek wrote: >> >> On Thu, Mar 14, 2019 at 11:30:21AM +0800, H.J. Lu wrote: >> > We need to split the basic block if we create new insns, which may >> > throw exceptions, in the middle of the basic blocks. >> > >> > Tested on AV

Re: C++ PATCH for c++/89612 - ICE with member friend template with noexcept

2019-03-14 Thread Marek Polacek
Ping. On Thu, Mar 07, 2019 at 04:52:55PM -0500, Marek Polacek wrote: > This was one of those PRs where the more you poke, the more ICEs turn up. > This patch fixes the ones I could find. The original problem was that > maybe_instantiate_noexcept got a TEMPLATE_DECL created for the member > friend

Re: [wwwdocs] Update snapshots.html to refer to sha512sum

2019-03-14 Thread Jakub Jelinek
On Thu, Mar 14, 2019 at 11:45:53AM +, Jonathan Wakely wrote: > The checksum file uses SHA512 not MD5SUM, so the instructions should > be updated accordingly. > > SInce there's only one tarfile these days (not separate ones for > gcc-base, gcc-g++, gcc-fortran, etc) it doesn't seem necessary to

Re: [PATCH] Fix create_dispatcher_calls ICE (PR ipa/89684)

2019-03-14 Thread Richard Biener
On Wed, 13 Mar 2019, Jakub Jelinek wrote: > Hi! > > create_dispatcher_calls iterates over ipa_ref *s referring the current node > and wants to remove them all and create new ones. The problem is > that if there are any ipa_ref objects where two or more of them are from the > same cgraph node to

Re: Re : add tsv110 pipeline scheduling

2019-03-14 Thread James Greenhalgh
On Sat, Feb 23, 2019 at 01:28:22PM +, wuyuan (E) wrote: > Hi ,James: > Sorry for not responding to your email in time because of Chinese New Year’s > holiday and urgent work. The three questions you mentioned last email are due > to my misunderstanding of pipeline. > the first question, These

Re: [PATCH] Fix miscompilation due to REG_EQUAL note on a paradoxical subreg operation (PR rtl-optimization/89679)

2019-03-14 Thread Eric Botcazou
> Below is one patch, more in the spirit of > https://gcc.gnu.org/ml/gcc-patches/2016-04/msg00418.html > where we refuse to add REG_EQUAL note in that case. > > Attached is another variant, which keeps it around just in case something > would make use of it, but makes sure we don't fwprop into suc

[wwwdocs] Update snapshots.html to refer to sha512sum

2019-03-14 Thread Jonathan Wakely
The checksum file uses SHA512 not MD5SUM, so the instructions should be updated accordingly. SInce there's only one tarfile these days (not separate ones for gcc-base, gcc-g++, gcc-fortran, etc) it doesn't seem necessary to filter out the "OK" lines with grep, but I could add --quiet to the comma

[PATCH][i386] Fix DECL_RESULT building for resolver

2019-03-14 Thread Richard Biener
The following properly sets DECL_CONTEXT of the result decl we build, otherwise LTO happily merges those across different resolver decls ending up in IPA PTA ICEing on this invalidity. Bootstrap & regtest running on x86_64-unknown-linux-gnu, will apply as obvious. Wonder if other targets copied

Re: [PATCH] Fix PR89710

2019-03-14 Thread Richard Biener
On Thu, 14 Mar 2019, Jakub Jelinek wrote: > On Thu, Mar 14, 2019 at 11:23:03AM +0100, Richard Biener wrote: > > I am testing the following. There's IMHO also a missed optimization > > (for CFG-cleanup?) that when a block does not end up in a call > > outgoing abnormal edges can be purged? In thi

Re: [PR fortran/60091, patch] - Misleading error messages in rank-2 pointer assignment to rank-1 target

2019-03-14 Thread Dominique d'Humières
> Le 13 mars 2019 à 13:39, Harald Anlauf a écrit : > > Hi Thomas, > > I am not so convinced that "plain english" messages are the way to go, > even if they appear better readable at first sight, if conciseness is > lost. Well, "Syntax error" is concise, but not really helpful! > The main r

Re: [PATCH] Fix PR89710

2019-03-14 Thread Jakub Jelinek
On Thu, Mar 14, 2019 at 11:23:03AM +0100, Richard Biener wrote: > I am testing the following. There's IMHO also a missed optimization > (for CFG-cleanup?) that when a block does not end up in a call > outgoing abnormal edges can be purged? In this case it is > IPA inlining leaving us with this -

Re: [PATCH][RFC] Teach GIMPLE FE to build proper CFG + SSA (+ loops)

2019-03-14 Thread Richard Biener
On Wed, 13 Mar 2019, Richard Biener wrote: > On Wed, 13 Mar 2019, Bin.Cheng wrote: > > > On Wed, Mar 13, 2019 at 3:58 AM Richard Biener wrote: > > > > > > > > > This makes an attempt at fixing the most annoying parts of the GIMPLE > > > FE unit testing - the lack of proper CFG preservation and h

Re: patch to fix PR85860

2019-03-14 Thread Uros Bizjak
Hello! > The following patch fixes > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85860 > > The patch was successfully bootstrapped and tested on x86-64. > > Committed as rev. 269662 to trunk and as rev. 269663 to gcc-8-branch. Index: testsuite/gcc.target/i386/pr85860.c ===

[PATCH] Fix PR89710

2019-03-14 Thread Richard Biener
I am testing the following. There's IMHO also a missed optimization (for CFG-cleanup?) that when a block does not end up in a call outgoing abnormal edges can be purged? In this case it is IPA inlining leaving us with this - the inliner calls gimple_purge_dead_abnormal_call_edges on the return

Re: [PATCH] Make hashtab/hash-table elt removal not fail on removing non-existent entry

2019-03-14 Thread Jakub Jelinek
On Thu, Mar 14, 2019 at 09:57:27AM +0100, Richard Biener wrote: > I'd say make it work, thus your patch below is OK. Ok, here is an updated patch with some self-tests coverage as well that I'll bootstrap/regtest. 2019-03-14 Jason Merrill Jakub Jelinek * hash-table.h (rem

Re: [PATCH] Make hashtab/hash-table elt removal not fail on removing non-existent entry

2019-03-14 Thread Richard Biener
On Thu, 14 Mar 2019, Jakub Jelinek wrote: > On Wed, Mar 13, 2019 at 10:08:09PM -0400, Jason Merrill wrote: > > > The following testcase ICEs since my recent cxx_eval_loop_expr changes. > > > The problem is that the Forget saved values of SAVE_EXPRs. inside of the > > > loop can remove SAVE_EXPRs f

Re: [PATCH] Fix up tree-ssa-strlen.c ICEs (PR tree-optimization/89703)

2019-03-14 Thread Richard Biener
On Wed, 13 Mar 2019, Jakub Jelinek wrote: > Hi! > > The C FE sadly passes through some really bad prototypes of builtin > functions as "harmless": > /* Accept "harmless" mismatches in function types such > as missing qualifiers or pointer vs same size integer >

Re: V2 [PATCH] i386: Handle REG_EH_REGION note

2019-03-14 Thread H.J. Lu
On Thu, Mar 14, 2019 at 4:34 PM Jakub Jelinek wrote: > > On Thu, Mar 14, 2019 at 11:30:21AM +0800, H.J. Lu wrote: > > We need to split the basic block if we create new insns, which may > > throw exceptions, in the middle of the basic blocks. > > > > Tested on AVX2 and AVX512 machines with and with

Re: V2 [PATCH] x32: Add addr32 prefix to UNSPEC_VSIBADDR instructions

2019-03-14 Thread Uros Bizjak
On Thu, Mar 14, 2019 at 9:22 AM H.J. Lu wrote: > > > We can't use the %X5 since %X5 is used on operands. > > > > So, please introduce some other modifier ("X" was not to be taken > > literally, but *some* letter). Why are you overloading 'P'? > > Here is the updated patch with the 'M' modifier. >

Re: [PATCH] Fix up tree-ssa-strlen.c ICEs (PR tree-optimization/89703)

2019-03-14 Thread Jakub Jelinek
On Thu, Mar 14, 2019 at 12:50:28AM +, Joseph Myers wrote: > > The C FE sadly passes through some really bad prototypes of builtin > > functions as "harmless": > > /* Accept "harmless" mismatches in function types such > > as missing qualifiers or pointer vs same size inte

Re: V2 [PATCH] i386: Handle REG_EH_REGION note

2019-03-14 Thread Jakub Jelinek
On Thu, Mar 14, 2019 at 11:30:21AM +0800, H.J. Lu wrote: > We need to split the basic block if we create new insns, which may > throw exceptions, in the middle of the basic blocks. > > Tested on AVX2 and AVX512 machines with and without > > --with-arch=native > > OK for trunk? That looks much b

Re: V2 [PATCH] x32: Add addr32 prefix to UNSPEC_VSIBADDR instructions

2019-03-14 Thread H.J. Lu
On Mon, Mar 4, 2019 at 10:09 PM Uros Bizjak wrote: > > On Mon, Mar 4, 2019 at 2:54 PM H.J. Lu wrote: > > > > On Sun, Mar 03, 2019 at 10:34:29PM +0100, Uros Bizjak wrote: > > > On Sun, Mar 3, 2019 at 10:18 PM H.J. Lu wrote: > > > > > > > > On Sun, Mar 3, 2019 at 9:27 AM Uros Bizjak wrote: > > >

[PATCH] Make hashtab/hash-table elt removal not fail on removing non-existent entry

2019-03-14 Thread Jakub Jelinek
On Wed, Mar 13, 2019 at 10:08:09PM -0400, Jason Merrill wrote: > > The following testcase ICEs since my recent cxx_eval_loop_expr changes. > > The problem is that the Forget saved values of SAVE_EXPRs. inside of the > > loop can remove SAVE_EXPRs from new_ctx.values and if that is the last > > iter

Re: [PR72741] Encode OpenACC 'routine' directive's level of parallelism inside Fortran module files

2019-03-14 Thread Thomas Schwinge
Hi Thomas! On Wed, 13 Mar 2019 23:13:46 +0100, Thomas Koenig wrote: > Am 13.03.19 um 18:50 schrieb Thomas Schwinge: > >> There are many ways to deal with it without bumping MOD_VERSION in a > >> backwards but not forwards compatible way, so that a newer compiler will be > >> able to parse old *.m