Go patch committed: Remove stack_allocation_expression

2018-06-08 Thread Ian Lance Taylor
This patch to the Go frontend by Cherry Zhang removes stack_allocation_expression from the backend interface. Now that we consistently use temporary variables for temporaries, stack_allocation_expression is no longer used. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to ma

Re: [patch, fortran] Fix PR 85631, wrong size checking with allocatable arrays

2018-06-08 Thread Thomas Koenig
Hi Steve, On Fri, Jun 08, 2018 at 09:06:55PM +0200, Thomas Koenig wrote: the attached patch fixes a bug which was uncovered by the PR in a matmul regression. The problem is that bounds checking on the LHS with reallocation on assignment makes no sense, and the original flag was not set for th

RE: [PATCH][Aarch64] v2: Arithmetic overflow subv patterns [Patch 3/4]

2018-06-08 Thread Michael Collison
All requested changes made: - label_ref added as operand 3 - more descriptive variable names used Okay for trunk? -Original Message- From: James Greenhalgh Sent: Thursday, June 7, 2018 5:30 PM To: Michael Collison Cc: GCC Patches ; nd Subject: Re: [PATCH][Aarch64] v2: Arithmetic over

RE: [PATCH][Aarch64] v2: Arithmetic overflow addv patterns [Patch 2/4]

2018-06-08 Thread Michael Collison
All requested changes made: - label_ref added as operand 3 - more meaningful names given to variables Okay for trunk? -Original Message- From: James Greenhalgh Sent: Thursday, June 7, 2018 5:29 PM To: Michael Collison Cc: GCC Patches ; nd Subject: Re: [PATCH][Aarch64] v2: Arithmetic o

RE: [PATCH][Aarch64] v2: Arithmetic overflow common functions [Patch 1/4]

2018-06-08 Thread Michael Collison
Patch updated as requested: - name changed from 'aarch64_add_128bit_scratch_regs' to 'aarch64_addti_scratch_regs' - name changed from 'aarch64_subv_128bit_scratch_reg's to ' aarch64_subvti_scratch_regs' I did not find any helper function to replace ' aarch64_gen_unlikely_cbranch'. Okay for tru

[PATCH] PR fortran/78278 -- Issue error message for double initialization

2018-06-08 Thread Steve Kargl
The attach patch re-arranges code to permit gfortran to issue an error message under non-gnu -std=* options when an entity appears in a double initialization. Prior to this patch, the new testcase pr78278.f90 would compile without error. Regression tested on x86_64-*-freebsd. OK to commit? 2018-

Re: [PATCH 09/14] Remove cgraph_node::summary_uid and make cgraph_node::uid really unique.

2018-06-08 Thread Christophe Lyon
On 8 June 2018 at 22:05, Martin Liška wrote: > On 06/08/2018 09:58 PM, Christophe Lyon wrote: >> >> On 7 June 2018 at 14:09, Jan Hubicka wrote: gcc/ChangeLog: 2018-05-16 Martin Liska * cgraph.c (cgraph_node::remove): Do not recycle uid. * c

Re: [PATCH] Avoid excessive function type casts with splay-trees part 2

2018-06-08 Thread Bernd Edlinger
On 06/08/18 16:28, David Malcolm wrote: > On Fri, 2018-06-08 at 14:03 +, Bernd Edlinger wrote: >> Hi! >> >> >> This patch converts the splay-tree internals into a template, and >> makes >> the typed_splay_tree template really type-safe. Previously >> everything >> would break apart if KEY_TYPE

Re: [PATCH] Fix altivec-7 issues on Power 6

2018-06-08 Thread Carl Love
GCC maintainers: Aargh!! I attached an old copy of the patch to the original message. Guess it is time to do some house cleaning. Carl Love --- gcc/testsuite/ChangeLog: 2018-06-08 Carl Love * gcc.target/powerpc/altivec-7.c (main): Rem

Re: [PATCH 09/14] Remove cgraph_node::summary_uid and make cgraph_node::uid really unique.

2018-06-08 Thread Martin Liška
On 06/08/2018 09:58 PM, Christophe Lyon wrote: On 7 June 2018 at 14:09, Jan Hubicka wrote: gcc/ChangeLog: 2018-05-16 Martin Liska * cgraph.c (cgraph_node::remove): Do not recycle uid. * cgraph.h (symbol_table::release_symbol): Do not pass uid. (symbol_table::allocate_

Re: [PATCH 09/14] Remove cgraph_node::summary_uid and make cgraph_node::uid really unique.

2018-06-08 Thread Christophe Lyon
On 7 June 2018 at 14:09, Jan Hubicka wrote: >> >> gcc/ChangeLog: >> >> 2018-05-16 Martin Liska >> >> * cgraph.c (cgraph_node::remove): Do not recycle uid. >> * cgraph.h (symbol_table::release_symbol): Do not pass uid. >> (symbol_table::allocate_cgraph_symbol): Do not set uid.

[PATCH] Fix altivec-7 issues on Power 6

2018-06-08 Thread Carl Love
GCC Maintainers: Test file gcc/testsuite/gcc.target/powerpc/altivec-7.c has issues when compiling for Power 6. Specifically, the new tests that were added for vec_unpackh and vec_unpackl that return a long long bool. The long long type is not compatible on Power 6 with just the "-maltivec" comma

Re: [patch, fortran] Fix PR 85631, wrong size checking with allocatable arrays

2018-06-08 Thread Steve Kargl
On Fri, Jun 08, 2018 at 09:06:55PM +0200, Thomas Koenig wrote: > > the attached patch fixes a bug which was uncovered by the PR in > a matmul regression. > > The problem is that bounds checking on the LHS with reallocation on > assignment makes no sense, and the original flag was not set for > th

Re: [PATCH] PR fortran/78571 -- Avoid ICE in invalid CHARACTER initialization

2018-06-08 Thread Steve Kargl
On Fri, Jun 08, 2018 at 09:01:11PM +0200, Thomas König wrote: > > Regression tested on x86_64-*-freebsd. OK to commit? > > OK, and thanks! > Thanks. Committed to trunk. -- Steve

Re: [PATCH] PR fortran/86059 -- NULL() cannot be in array constructor

2018-06-08 Thread Steve Kargl
On Fri, Jun 08, 2018 at 09:01:50PM +0200, Thomas Koenig wrote: > > Regression tested on x86_64-*-freebsd. OK to commit. > > OK, and thanks! Thanks. Committed to trunk. -- Steve

[patch, fortran] Fix PR 85631, wrong size checking with allocatable arrays

2018-06-08 Thread Thomas Koenig
Hello world, the attached patch fixes a bug which was uncovered by the PR in a matmul regression. The problem is that bounds checking on the LHS with reallocation on assignment makes no sense, and the original flag was not set for the case in question. I added both the original test and the red

Re: [PATCH] PR fortran/86059 -- NULL() cannot be in array constructor

2018-06-08 Thread Thomas Koenig
Hi Steve, Regression tested on x86_64-*-freebsd. OK to commit. OK, and thanks! Thomas

Re: [PATCH] PR fortran/78571 -- Avoid ICE in invalid CHARACTER initialization

2018-06-08 Thread Thomas König
Hi Steve, Regression tested on x86_64-*-freebsd. OK to commit? OK, and thanks! Thomas

Enforce F2008:C1282 and F2018:C1588

2018-06-08 Thread Steve Kargl
The attached patch adresses part of an issue raised in PR fortran/63514 by enforcing F2008:C1282 and F2018:C1588. Regression tested on x86_64-*-freebsd. OK to commit? PS: the actual underlying point of PR fortran/63514 is bogus, and I recommend that it be closed with WONTFIX. 2018-06-08 Steven

Re: [PATCH, rs6000] Add missing test cases, fix arguments to match specifications.

2018-06-08 Thread Segher Boessenkool
On Fri, Jun 08, 2018 at 10:09:23AM -0700, Carl Love wrote: > > > @@ -100,7 +152,6 @@ extract_uchar_15 (vector unsigned char a) > > >  /* { dg-final { scan-assembler "extsb " } } */ > > >  /* { dg-final { scan-assembler "extsh " } } */ > > >  /* { dg-final { scan-assembler   

Re: [PATCH, rs6000] Fix PR85755: PowerPC Gcc's -mupdate produces inefficient code

2018-06-08 Thread Peter Bergner
On 6/8/18 12:12 PM, Segher Boessenkool wrote: > On Fri, Jun 08, 2018 at 12:07:34PM -0500, Peter Bergner wrote: >> On 6/8/18 11:21 AM, Segher Boessenkool wrote: >>> On Fri, Jun 08, 2018 at 10:35:22AM -0500, Peter Bergner wrote: +/* { dg-final { scan-assembler-times {\mstdu\M} 2 } } */ +/*

Re: [PATCH, rs6000] Fix PR85755: PowerPC Gcc's -mupdate produces inefficient code

2018-06-08 Thread Segher Boessenkool
On Fri, Jun 08, 2018 at 12:07:34PM -0500, Peter Bergner wrote: > On 6/8/18 11:21 AM, Segher Boessenkool wrote: > > On Fri, Jun 08, 2018 at 10:35:22AM -0500, Peter Bergner wrote: > >> +/* { dg-final { scan-assembler-times {\mstdu\M} 2 } } */ > >> +/* { dg-final { scan-assembler-not {\mstfdu\M} } } *

[PATCH][PR sanitizer/86090] Add checks for lstat and readlink to sanitizer configure.

2018-06-08 Thread Denis Khalikov
Hello, this is a patch for PR sanitizer/86090 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86090 Thanks. From: Denis Khalikov Date: Fri, 8 Jun 2018 19:53:01 +0300 Subject: [PATCH] PR sanitizer/86090 * configure.ac: Check for lstat and readlink. * configure, config.h.in: Rebuild. --- libsanitizer

Re: [PATCH, rs6000] Add missing test cases, fix arguments to match specifications.

2018-06-08 Thread Carl Love
Segher: > > > @@ -100,7 +152,6 @@ extract_uchar_15 (vector unsigned char a) > >  /* { dg-final { scan-assembler "extsb " } } */ > >  /* { dg-final { scan-assembler "extsh " } } */ > >  /* { dg-final { scan-assembler "extsw " } } */ > > -/* { dg-final { scan-asse

Re: [PATCH, rs6000] Fix PR85755: PowerPC Gcc's -mupdate produces inefficient code

2018-06-08 Thread Peter Bergner
On 6/8/18 11:21 AM, Segher Boessenkool wrote: > On Fri, Jun 08, 2018 at 10:35:22AM -0500, Peter Bergner wrote: >> +/* { dg-final { scan-assembler-times {\mstdu\M} 2 } } */ >> +/* { dg-final { scan-assembler-not {\mstfdu\M} } } */ > > Does this need p8 at all? Would it be better to just test witho

[PATCH] Define special members as defaulted

2018-06-08 Thread Jonathan Wakely
This adds defaulted definitions for a few more types where implicitly declaring them is deprecated (as discussed at the WG21 meeting this week). * include/bits/ios_base.h (ios::Init::Init(const Init&)) (ios::Init::operator=): Define as defaulted. * include/bits/stl_bvector

Re: [PATCH, rs6000] Fix PR85755: PowerPC Gcc's -mupdate produces inefficient code

2018-06-08 Thread Segher Boessenkool
On Fri, Jun 08, 2018 at 10:35:22AM -0500, Peter Bergner wrote: > The fix for PR83969 accidentally disallowed PRE_INC and PRE_DEC addresses > from being matched for the Y constraint leading to poor code generation. > The old PRE_INC and PRE_DEC addresses were originally accepted via the > address_of

[PATCH] Protect rs6000_passes_ieee128 declaration

2018-06-08 Thread David Edelsohn
The new variable rs6000_passes_ieee128 is not referenced on non-ELF paths. This patch protects the definition to avoid unused variable warnings. Thanks, David * config/rs6000/rs6000.c (rs6000_passes_ieee128): Protect with #if TARGET_ELF. Index: rs6000.c ==

Re: [PATCH, rs6000] Fix PR85755: PowerPC Gcc's -mupdate produces inefficient code

2018-06-08 Thread Peter Bergner
On 6/7/18 8:16 PM, Peter Bergner wrote: > On 6/7/18 5:12 PM, Peter Bergner wrote: >> Is this ok for trunk and the release branches where the earlier fixes >> were backported to, assuming no bootstrap errors and the testsuite runs >> do not show any regressions? > > Hold off for now. I'm seeing a

Re: [PATCH][wwwdocs][arm] Mention removal of deprecated architectures

2018-06-08 Thread Kyrill Tkachov
On 08/06/18 16:16, Gerald Pfeifer wrote: On Fri, 8 Jun 2018, Kyrill Tkachov wrote: >> Now that Gerald has created a changes.html page for GCC 9 here's >> an entry about the removal of older arm architectures. Great! Happy to see that the page template is being used already, and thanks for st

Re: [PATCH][wwwdocs][arm] Mention removal of deprecated architectures

2018-06-08 Thread Gerald Pfeifer
On Fri, 8 Jun 2018, Kyrill Tkachov wrote: Now that Gerald has created a changes.html page for GCC 9 here's an entry about the removal of older arm architectures. Great! Happy to see that the page template is being used already, and thanks for starting to fill it. And I got a message from Ge

Break LTO cgraph dump into more pieces.

2018-06-08 Thread Jan Hubicka
Hi, this patch splits LTO cgraph dump file into multiple files: 1) cgraph which contains pretty much what cgraph dump has in normal compilation 2) lto-link which contains symtab before symtab merging and decision of the LTO linker 3) lto-decl-merge which dumps declaration merging 4) lto-par

Re: [1/2] Add option to disable c++11 std::string small-size

2018-06-08 Thread Mikhail Kashkarov
Updated. On 05/29/2018 09:53 AM, Mikhail Kashkarov wrote: > Add option to disable c++11 std::string small-sizeoptimization usage. > >     * include/bits/basic_string.h [_GLIBCXX_DISABLE_STRING_SSO_USAGE]: >     (basic_string::_M_is_local, basic_string::_M_destroy) >     (basic_string::basic

Re: [2/2] Add AddressSanitizer annotations to std::string.

2018-06-08 Thread Mikhail Kashkarov
Hello, I've updated patches for std::string sanitization and disabling CXX11 string SSO usage for correct sanitization. >>       _M_destroy(_M_allocated_capacity); >>+    else >>+      __annotate_delete(); > >Do these calls definitely optimize away completely when not >sanitizing? Even

Re: [1/2] Add option to disable c++11 std::string SSO

2018-06-08 Thread Mikhail Kashkarov
Updated. On 05/29/2018 09:53 AM, Mikhail Kashkarov wrote: > Add option to disable c++11 std::string small-string optimization usage. > >     * include/bits/basic_string.h [_GLIBCXX_DISABLE_STRING_SSO_USAGE]: >     (basic_string::_M_is_local, basic_string::_M_destroy) >     (basic_string::ba

Re: [PATCH, rs6000] Cleanup vsx-vector-6 test files.

2018-06-08 Thread Segher Boessenkool
Hi! On Thu, Jun 07, 2018 at 04:10:08PM -0700, Carl Love wrote: > The test files gcc/testsuite/gcc.target/powerpc/vsx-vector- > 6[be|le].[p7|p8|p9].c cover testing for LE and BE for the various > processors. These were setup before we had the le and be targets. > Given that we now have the be and

Re: [PATCH] Avoid excessive function type casts with splay-trees part 2

2018-06-08 Thread David Malcolm
On Fri, 2018-06-08 at 14:03 +, Bernd Edlinger wrote: > Hi! > > > This patch converts the splay-tree internals into a template, and > makes > the typed_splay_tree template really type-safe. Previously > everything > would break apart if KEY_TYPE or VALUE_TYPE would not be pointer > types. > T

[PATCH] Avoid excessive function type casts with splay-trees part 2

2018-06-08 Thread Bernd Edlinger
Hi! This patch converts the splay-tree internals into a template, and makes the typed_splay_tree template really type-safe. Previously everything would break apart if KEY_TYPE or VALUE_TYPE would not be pointer types. This limitation is now removed. I took the freedom to add a remove function w

New Spanish PO file for 'gcc' (version 8.1.0)

2018-06-08 Thread Translation Project Robot
Hello, gentle maintainer. This is a message from the Translation Project robot. A revised PO file for textual domain 'gcc' has been submitted by the Spanish team of translators. The file is available at: http://translationproject.org/latest/gcc/es.po (This file, 'gcc-8.1.0.es.po', has just

[PATCH][OBVIOUS] Fix function signature in header file.

2018-06-08 Thread Martin Liška
Hi. One obvious fix. The function is unused, thus no compilation errors was spotted. I'm going to install the patch. Martin gcc/ChangeLog: 2018-06-08 Martin Liska * tree-cfg.h (debug_function): Fix argument type to match implementation. --- gcc/tree-cfg.h | 2 +- 1 file cha

Re: [PATCH][wwwdocs][arm] Mention removal of deprecated architectures

2018-06-08 Thread Kyrill Tkachov
On 08/06/18 14:30, Kyrill Tkachov wrote: Hi all, Now that Gerald has created a changes.html page for GCC 9 here's an entry about the removal of older arm architectures. Committing to CVS. And I got a message from Gerald's validation bot that my commit failed validation :( http://validator.

RE: Prefer open-coding vector integer division

2018-06-08 Thread Matthew Fortune
Richard Sandiford writes: > vect_recog_divmod_pattern currently bails out if the target has > native support for integer division, but I think in practice > it's always going to be better to open-code it anyway, just as > we usually open-code scalar divisions by constants. > > I think the only cu

[PATCH][wwwdocs][arm] Mention removal of deprecated architectures

2018-06-08 Thread Kyrill Tkachov
Hi all, Now that Gerald has created a changes.html page for GCC 9 here's an entry about the removal of older arm architectures. Committing to CVS. Thanks, Kyrill Index: htdocs/gcc-9/changes.html === RCS file: /cvs/gcc/wwwdocs/htdoc

Re: [PATCH] PPC: remove usage of cgraph_node::instrumentation_clone and cgraph_node::instrumented_version.

2018-06-08 Thread David Edelsohn
On Fri, Jun 8, 2018 at 9:24 AM Martin Liška wrote: > > Hi. > > This is MPX removal follow-up. The code is dead for PPC and was always false. > > I'll install that after some PPC maintainer will approve that. > Thanks, > Martin > > gcc/ChangeLog: > > 2018-06-08 Martin Liska > > * config/

[PATCH] PPC: remove usage of cgraph_node::instrumentation_clone and cgraph_node::instrumented_version.

2018-06-08 Thread Martin Liška
Hi. This is MPX removal follow-up. The code is dead for PPC and was always false. I'll install that after some PPC maintainer will approve that. Thanks, Martin gcc/ChangeLog: 2018-06-08 Martin Liska * config/powerpcspe/powerpcspe.c (rs6000_xcoff_visibility): Remove usage of

[PATCH 1/4] Transform switch_conversion into a class.

2018-06-08 Thread marxin
gcc/ChangeLog: 2018-06-07 Martin Liska * tree-switch-conversion.c (MAX_CASE_BIT_TESTS): Remove. (hoist_edge_and_branch_if_true): Likewise. (expand_switch_using_bit_tests_p): Likewise. (struct case_bit_test): Likewise. (case_bit_test_cmp): Likewise.

[PATCH 2/4] Switch other switch expansion methods into classes.

2018-06-08 Thread marxin
gcc/ChangeLog: 2018-06-07 Martin Liska * tree-switch-conversion.c (switch_conversion::collect): Record m_uniq property. (switch_conversion::expand): Bail out for special conditions. (group_cluster::~group_cluster): New. (group_cluster::group_cluster): L

[PATCH 3/4] Enable clustering for switch statements.

2018-06-08 Thread marxin
gcc/ChangeLog: 2018-06-07 Martin Liska * tree-switch-conversion.c (jump_table_cluster::find_jump_tables): New. (bit_test_cluster::find_bit_tests): Likewise. (switch_decision_tree::analyze_switch_statement): Find clusters. * tree-switch-conversion.h (str

[PATCH 0/4][v2] Implement smart multiple switch expansion algorithms

2018-06-08 Thread marxin
Hello. This is v2 of following patch series: https://gcc.gnu.org/ml/gcc-patches/2017-10/msg00347.html I've done some adjustments: - patch series is split: * 1/4 - factoring out of switch conversion algorithm * 2/4 - jump table and bit test use clustering data structures, but operate

[PATCH 4/4] Change default for jump_table expansion ratio to 8.

2018-06-08 Thread marxin
gcc/ChangeLog: 2018-06-07 Martin Liska * tree-switch-conversion.c (jump_table_cluster::can_be_handled): Change default ratio from 10 to 8. --- gcc/tree-switch-conversion.c | 10 ++ 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/gcc/tree-switch-conversio

Re: [AArch64][PATCH 2/2] PR target/83009: Relax strict address checking for store pair lanes

2018-06-08 Thread Kyrill Tkachov
Hi Andre, On 07/06/18 18:02, Andre Simoes Dias Vieira wrote: Hi, See below a patch to address PR 83009. Tested with aarch64-linux-gnu bootstrap and regtests for c, c++ and fortran. Ran the adjusted testcase for -mabi=ilp32. Is this OK for trunk? Cheers, Andre PR target/83009: Relax strict a

[committed] v2: Convert dump and optgroup flags to enums

2018-06-08 Thread David Malcolm
On Tue, 2018-06-05 at 18:16 +0200, Richard Biener wrote: > On June 5, 2018 4:49:21 PM GMT+02:00, David Malcolm com> wrote: > > On Tue, 2018-06-05 at 04:40 -0400, Trevor Saunders wrote: > > > On Fri, Jun 01, 2018 at 12:00:09PM +0200, Richard Biener wrote: > > > > On Tue, May 29, 2018 at 10:32 PM Da

[PATCH] rs6000: Delete mention of -mabi={no-,}spe in the documentation

2018-06-08 Thread Segher Boessenkool
The option no longer exists. Tested, committing. Segher 2018-06-08 Segher Boessenkool * doc/invoke.texi (RS/6000 and PowerPC Options): Delete mention of -mabi=spe and -mabi=no-spe. --- gcc/doc/invoke.texi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --g

[PATCH] rs6000: Delete unused min/max macros

2018-06-08 Thread Segher Boessenkool
The last use was deleted in 2017. There are the generic MIN/MAX macros to use already, and in this new world we should use std::min, std::max. Tested, committing. Segher 2018-06-08 Segher Boessenkool * config/rs6000/rs6000.c (min, max): Delete. --- gcc/config/rs6000/rs6000.c | 3

Re: [PATCH 05/14] Use summaries->get where possible. Small refactoring of multiple calls.

2018-06-08 Thread Martin Liška
On 06/07/2018 02:16 PM, Jan Hubicka wrote: >> >> gcc/ChangeLog: >> >> 2018-04-24 Martin Liska >> >> * ipa-fnsummary.c (dump_ipa_call_summary): Use ::get method. >> (analyze_function_body): Extract multiple calls of get_create. >> * ipa-inline-analysis.c (simple_edge_hints): Likewi

Re: [PATCH 07/14] Covert ipa-pure-const.c to symbol_summary.

2018-06-08 Thread Martin Liška
On 06/07/2018 02:57 PM, Jan Hubicka wrote: >> >> gcc/ChangeLog: >> >> 2018-04-24 Martin Liska >> >> * ipa-pure-const.c (struct funct_state_d): Do it class instead >> of struct. >> (class funct_state_summary_t): New function_summary class. >> (has_function_state): Remove. >>

[PATCH][OBVIOUS] Fix scan in ipa-icf-38.c.

2018-06-08 Thread Martin Liška
Hi. One obvious patch: scan proper dump file in ltrans of a LTO test-case. Martin gcc/testsuite/ChangeLog: 2018-06-08 Martin Liska * gcc.dg/ipa/ipa-icf-38.c: Scan optimized tree dump. --- gcc/testsuite/gcc.dg/ipa/ipa-icf-38.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions

Re: [Patch] Do not call the linker if we are creating precompiled header files

2018-06-08 Thread Joseph Myers
On Wed, 2 May 2018, Steve Ellcey wrote: > I tracked this down to driver::maybe_run_linker where it sees the linker > flags and increments num_linker_inputs, this causes the routine to call > the linker.   This patch checks to see if we are creating precompiled > header files and avoids calling the

[PATCH] Use flags_from_decl_or_type in lto_symtab_merge_p (PR ipa/85248).

2018-06-08 Thread Martin Liška
Hi. Second follow-up patch uses flags_from_decl_or_type in LTO merging of declarations. Hope it's more cleaner approach. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Martin >From 17d598f028c723cb11e8a9f786e3026c0cfca4aa Mon Sep 17 00:00:00 2001 Fr

Re: [AArch64][PATCH 1/2] Fix addressing printing of LDP/STP

2018-06-08 Thread Kyrill Tkachov
Hi Andre, On 07/06/18 18:01, Andre Simoes Dias Vieira wrote: Hi, The address printing for LDP/STP patterns that don't use parallel was not working properly when dealing with a post-index addressing mode. The post-index address printing uses the mode's size to determine the post-index immediat

[PATCH] Come up with Deprecated option flag.

2018-06-08 Thread Martin Liška
Hi. First follow-up MPX removal patch comes up with Deprecated option flag. That prints warning for options that have no effect: $ ./xgcc -B. /tmp/main.c -Wchkp -static-libmpxwrappers xgcc: warning: deprecated command line option ‘-static-libmpxwrappers’ cc1: warning: deprecated command line opti

Re: [ARM/FDPIC 13/21] [ARM] FDPIC: Support unwinding across thumb2 signal trampoline

2018-06-08 Thread Kyrill Tkachov
Hi Christophe, Similar comments to patch 11/21 On 25/05/18 09:03, Christophe Lyon wrote: 2018-XX-XX Christophe Lyon Mickaël Guêné libgcc/ * unwind-arm-common.inc (FDPIC_T2_LDR_R12_WITH_FUNCDESC) (FDPIC_T2_LDR_R9_WITH_GOT, FDPIC_T2_LDR_PC_WITH_RESTORER): New.

[PATCH] Default special members of regex types and add noexcept

2018-06-08 Thread Jonathan Wakely
Nothing very exciting, just adding noexcept and defaulting some members. * include/bits/regex.h (sub_match): Add noexcept to default constructor and length observer. (match_results): Add noexcept to default constructor and observers with no preconditions. Define de

Re: [ARM/FDPIC 12/21] [ARM] FDPIC: Restore r9 after we call __aeabi_read_tp

2018-06-08 Thread Kyrill Tkachov
Hi Christophe, Again, a patch description would be welcome :) On 25/05/18 09:03, Christophe Lyon wrote: 2018-XX-XX Christophe Lyon Mickaël Guêné gcc/ * config/arm/arm.c (arm_load_tp): Add FDPIC support. * config/arm/arm.md (load_tp_soft_fdpic): New pattern.

Re: [ARM/FDPIC 11/21] [ARM] FDPIC: Add support to unwind FDPIC signal frame

2018-06-08 Thread Kyrill Tkachov
Hi Christophe, I'll be honest, I'm not very familiar with this part of the compiler. I'll let Ramana or Richard comment on the approach. A description of what this patch does and how would be appreciated. Some comments inline nevertheless :) Thanks, Kyrill On 25/05/18 09:03, Christophe Lyon wro

Re: [ARM/FDPIC 06/21] [ARM] FDPIC: Add support for c++ exceptions

2018-06-08 Thread Richard Earnshaw (lists)
On 08/06/18 11:15, Kyrill Tkachov wrote: > Hi Christophe, > > On 25/05/18 09:03, Christophe Lyon wrote: >> When restoring a function address, we also have to restore the FDPIC >> register value (r9). >> >> 2018-XX-XX  Christophe Lyon  >>     Mickaël Guêné >> >>     gcc/ >>     * ginc

Re: [ARM/FDPIC 10/21] [ARM] FDPIC: Implement legitimize_tls_address_fdpic

2018-06-08 Thread Kyrill Tkachov
Hi Christophe, On 25/05/18 09:03, Christophe Lyon wrote: Support additional relocations: TLS_GD32_FDPIC, TLS_LDM32_FDPIC, and TLS_IE32_FDPIC. We do not support the GNU2 TLS dialect. 2018-XX-XX Christophe Lyon Mickaël Guêné gcc/ * config/arm/arm.c (tls_reloc): Add T

Re: [ARM/FDPIC 09/21] [ARM] FDPIC: Add support for taking address of nested function

2018-06-08 Thread Kyrill Tkachov
Hi Chrishophe, Could you please provide a description of what this patch does and how it achieves that? On 25/05/18 09:03, Christophe Lyon wrote: 2018-XX-XX Christophe Lyon Mickaël Guêné gcc/ * config/arm/arm.c (arm_asm_trampoline_template): Add FDPIC suppor

Re: [ARM/FDPIC 04/21] [ARM] FDPIC: Add support for FDPIC for arm architecture

2018-06-08 Thread Kyrill Tkachov
Hi Christophe, On 25/05/18 09:03, Christophe Lyon wrote: The FDPIC register is hard-coded to r9, as defined in the ABI. We have to disable tailcall optimizations if we don't know if the target function is in the same module. If not, we have to set r9 to the value associated with the target modu

[PATCH] i386; Add indirect_return function attribute

2018-06-08 Thread H.J. Lu
On x86, swapcontext may return via indirect branch when shadow stack is enabled. To support code instrumentation of control-flow transfers with -fcf-protection, add indirect_return function attribute to inform compiler that a function may return via indirect branch. Note: Unlike setjmp, swapconte

Re: [ARM/FDPIC 08/21] [ARM] FDPIC: Fix corner case of weak symbol

2018-06-08 Thread Kyrill Tkachov
Hi Christophe, On 25/05/18 09:03, Christophe Lyon wrote: When checking the address of a weak symbol in an executable, it is mandatory to use the GOTFUNCDESC scheme so that the address==NULL semantic is valid if the symbol is not present in the final link. 2018-XX-XX Christophe Lyon M

Re: [ARM/FDPIC 06/21] [ARM] FDPIC: Add support for c++ exceptions

2018-06-08 Thread Kyrill Tkachov
Hi Christophe, On 25/05/18 09:03, Christophe Lyon wrote: When restoring a function address, we also have to restore the FDPIC register value (r9). 2018-XX-XX Christophe Lyon Mickaël Guêné gcc/ * ginclude/unwind-arm-common.h (unwinder_cache): Add reserved5 fi

Re: [PATCH 03/14] Rename get methods in symbol-summary.h to get_create.

2018-06-08 Thread Martin Liška
On 06/08/2018 11:50 AM, Martin Jambor wrote: > Hi, > > On Thu, Jun 07 2018, Jan Hubicka wrote: >>> >>> gcc/ChangeLog: >>> >>> 2018-04-24 Martin Liska >>> >>> * config/i386/i386.c (ix86_can_inline_p): Use get_create instead >>> of get. >>> * hsa-common.c (hsa_summary_t::link_function

Re: [PATCH 03/14] Rename get methods in symbol-summary.h to get_create.

2018-06-08 Thread Martin Jambor
Hi, On Thu, Jun 07 2018, Jan Hubicka wrote: >> >> gcc/ChangeLog: >> >> 2018-04-24 Martin Liska >> >> * config/i386/i386.c (ix86_can_inline_p): Use get_create instead >> of get. >> * hsa-common.c (hsa_summary_t::link_functions): Likewise. >> (hsa_register_kernel): Likewise

Re: [PATCH 11/14] Port IPA CP to edge_clone_summaries.

2018-06-08 Thread Martin Jambor
On Thu, Jun 07 2018, Jan Hubicka wrote: >> >> gcc/ChangeLog: >> >> 2018-04-24 Martin Liska >> >> * ipa-cp.c (class edge_clone_summary): New summary. >> (grow_edge_clone_vectors): Remove. >> (ipcp_edge_duplication_hook): Remove. >> (class edge_clone_summary_t): New call_sum