Re: C++ PATCH to implement P1064R0, Virtual Function Calls in Constant Expressions (v4)

2018-09-26 Thread Jason Merrill
On Thu, Sep 20, 2018 at 5:20 AM, Jakub Jelinek wrote: > On Thu, Sep 20, 2018 at 09:12:53AM +0200, Andreas Schwab wrote: >> On Sep 19 2018, Jason Merrill wrote: >> >> > Andreas, do the new testcases pass? That would surprise me, but OK if so. >> >> No, they don't. >> >> /usr/local/gcc/gcc-2018092

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Qing Zhao
> On Sep 26, 2018, at 6:07 PM, Alexander Monakov wrote: > > On Wed, 26 Sep 2018, Qing Zhao wrote: >> The request is for application developers who want to use gcc's online >> patching feature. >> >> Today, developers can turn off inlining and deliver just the patched >> routine. They >>

Re: [PATCH v4] [aarch64] Add HiSilicon tsv110 CPU support

2018-09-26 Thread Zhangshaokun
Hi Kyrill, Thanks your reply. On 2018/9/26 19:20, Kyrill Tkachov wrote: > Hi Shaokun, > > On 25/09/18 14:40, Zhangshaokun wrote: >> Hi ARM maintainers, >> >> Any plan to support CTR_EL0.DIC and CTR_EL0.IDC in GCC? >> I saw it has been supported in linux mainline(on Mar 7), >> Patch link: >> http

[PATCH] declare tree_to_shwi et al. nonnull and pure

2018-09-26 Thread Martin Sebor
The attached patch adds attributes nonnull and pure to tree_to_shwi() and a small number of other heavily used functions that will benefit from both. First, I noticed that there are a bunch of functions in tree.c that deal gracefully with null pointers right alongside a bunch of other related fun

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Alexander Monakov
On Wed, 26 Sep 2018, Qing Zhao wrote: > The request is for application developers who want to use gcc's online >patching feature. > > Today, developers can turn off inlining and deliver just the patched routine. > They >can also allow all inlining and deliver the patched routine and all

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Qing Zhao
> On Sep 26, 2018, at 10:16 AM, Alexander Monakov wrote: > > On Wed, 26 Sep 2018, Qing Zhao wrote: > >> Alexander, >> >> thanks for the questions. >> >> Yes, we had some discussion on the questions you raised during the review of >> the initial patch back to 9/11/2018. >> please take a look

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Qing Zhao
> On Sep 26, 2018, at 12:16 PM, Jan Hubicka wrote: > >>> >>> On Sep 26, 2018, at 10:06 AM, Jan Hubicka wrote: >>> On Wed, Sep 26, 2018 at 10:45 AM, Jeff Law wrote: > On 9/26/18 7:38 AM, Jason Merrill wrote: >> On Wed, Sep 26, 2018 at 9:24 AM, Richard Biener >> wrote:

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Qing Zhao
> On Sep 26, 2018, at 12:16 PM, Jan Hubicka > wrote: > >>> >>> On Sep 26, 2018, at 10:06 AM, Jan Hubicka >> > wrote: >>> On Wed, Sep 26, 2018 at 10:45 AM, Jeff Law >>> > wrote: > On 9/26/18 7:38 AM, Jason Merrill w

[PATCH 1/2][IRA,LRA] Fix PR86939, IRA incorrectly creates an interference between a pseudo register and a hard register

2018-09-26 Thread Peter Bergner
gcc/ * ira-lives.c (make_hard_regno_born): Rename from this... (make_hard_regno_live): ... to this. Remove update to conflict information. Update function comment. (make_hard_regno_dead): Add conflict information update. Update function comment. (m

[PATCH 2/2][IRA,LRA] Fix PR86939, IRA incorrectly creates an interference between a pseudo register and a hard register

2018-09-26 Thread Peter Bergner
gcc/ * ira.h (copy_insn_p): New prototype. * ira-lives.c (ignore_reg_for_conflicts): New static variable. (make_hard_regno_dead): Don't add conflicts for register ignore_reg_for_conflicts. (make_object_dead): Likewise. (copy_insn_p): New function.

Support excess precision for integer / floating-point comparisons (PR c/87390)

2018-09-26 Thread Joseph Myers
In C11, implicit conversions from integer to floating-point types produce results with the range and precision of the corresponding evaluation format rather than only those of the type implicitly converted to. This patch implements that case of C11 excess precision semantics in the case of a compa

[PATCH 0/2][IRA,LRA] Fix PR86939, IRA incorrectly creates an interference between a pseudo register and a hard register

2018-09-26 Thread Peter Bergner
PR86939 shows a problem where IRA (and LRA) adds an unneeded conflict between a pseudo reg and a hard reg leading to an unnecessary copy. The definition of conflict that most register allocators use is that two live ranges conflict if one is "live" at the definition of the other and they have diff

Re: [patch,openacc] C, C++ OpenACC wait diagnostic change

2018-09-26 Thread Cesar Philippidis
On 09/26/2018 12:50 PM, Joseph Myers wrote: > On Wed, 26 Sep 2018, Cesar Philippidis wrote: > >> Attached is an old patch which updated the C and C++ FEs to use %<)%> >> for the right ')' symbol. It's mostly a cosmetic change. All of the >> changes are self-contained to the OpenACC code path. > >

[PATCH] RISC-V: Add missing negate patterns.

2018-09-26 Thread Jim Wilson
This adds a missing J constraint to an existing pattern, and adds missing integer negate patterns. Since subtract from zero canonicalizes to negate, adding the missing patterns helps eliminate some unnecessary sign extend instructions after subtract from zero for the 64-bit port. The libc.so.6 fi

Re: [patch,wip] warn on noncontiguous pointers

2018-09-26 Thread Cesar Philippidis
On 09/26/2018 01:49 PM, Thomas Koenig wrote: > Hi Cesar, > >> As of GCC 8, gfortran now errors when a pointer with a contiguous >> attribute is set to point to a target without a contiguous attribute. I >> think this is overly strict, and should probably be demoted to a >> pedantic warning as I've

Re: [patch,wip] warn on noncontiguous pointers

2018-09-26 Thread Thomas Koenig
Hi Cesar, As of GCC 8, gfortran now errors when a pointer with a contiguous attribute is set to point to a target without a contiguous attribute. I think this is overly strict, and should probably be demoted to a pedantic warning as I've done in the attached patch. We had a lengthy discussion

Re: [patch,openacc] Use correct location information for OpenACC shape and simple, clauses in C/C++

2018-09-26 Thread Jason Merrill
The C++ change is OK. On Wed, Sep 26, 2018 at 2:41 PM, Cesar Philippidis wrote: > Thomas, this is your old gomp4 patch that updates the error locations > for gang, worker and vector clauses. Those functions are parsed in > {c,cp}_parser_oacc_shape_clause. I'm not sure how much of an impact this >

Re: [patch,openacc] C, C++ OpenACC wait diagnostic change

2018-09-26 Thread Joseph Myers
On Wed, 26 Sep 2018, Cesar Philippidis wrote: > Attached is an old patch which updated the C and C++ FEs to use %<)%> > for the right ')' symbol. It's mostly a cosmetic change. All of the > changes are self-contained to the OpenACC code path. Why is the "before ')'" included in the call to c_pars

Re: [PATCH] PR libstdc++/59439 optimize uses of classic ("C") std::locale

2018-09-26 Thread Jonathan Wakely
On 26/09/18 19:31 +0200, Florian Weimer wrote: * Jonathan Wakely: Does anybody see any problems with this change? Can you put a debug assert into _M_add_reference and _M_remove_reference, to check that they are never called on an _S_classic object? Or put the check directly into those functi

[patch,wip] warn on noncontiguous pointers

2018-09-26 Thread Cesar Philippidis
As of GCC 8, gfortran now errors when a pointer with a contiguous attribute is set to point to a target without a contiguous attribute. I think this is overly strict, and should probably be demoted to a pedantic warning as I've done in the attached patch. I ran into this issue while I was tuning G

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Qing Zhao
> On Sep 26, 2018, at 11:02 AM, Jan Hubicka wrote: > >>> Not sure >>> what 'internal' would mean in this context. >>> >>> But then the implementation looks at callee->externally_visible which >>> matches hidden visibility... externally_visible is probably not >>> the very best thing to look at

[PATCH] RISC-V: Delete obsolete MIPS comment.

2018-09-26 Thread Jim Wilson
This deletes a comment that was accidentally carried over from the MIPS port that was used as the base for the RISC-V port. This comment is present in the MIPS port in gcc-4.8, but it is not relevant to RISC-V, at least not the current definition of RISC-V. This was tested with riscv{32,64}-{elf,

[patch,openacc] Use correct location information for OpenACC shape and simple, clauses in C/C++

2018-09-26 Thread Cesar Philippidis
Thomas, this is your old gomp4 patch that updates the error locations for gang, worker and vector clauses. Those functions are parsed in {c,cp}_parser_oacc_shape_clause. I'm not sure how much of an impact this patch has given that it does not require any test suite changes. However, we do have a co

[patch] nvptx libgcc atomic routines

2018-09-26 Thread Cesar Philippidis
This patch adds nvptx support for the atomic FETCH_AND_OP functions. I recall that this used to be important for OpenACC reductions back in the GCC 5.0 days before Nathan split reductions into four phases. Nowadays, atomic reductions use a spin lock that's implemented directly by the nvptx BE. Ther

[patch,openacc] Don't gimplify in ssa mode if seen_error in oacc_xform_loop

2018-09-26 Thread Cesar Philippidis
Again, this is another old gomp4 patch without a corresponding test case. I'm not familiar enough with the parloops kernels implementation to know if this patch is important. However, I'm somewhat inclined to drop patches from OG8 that don't impact correctness in the test suite. What do you want t

[patch,openacc] use existing local variable in cp_parser_oacc_enter_exit_data

2018-09-26 Thread Cesar Philippidis
This is an old gomp4 patch that updates the location of the clause for acc enter/exit data. Apparently, it didn't impact any test cases. Is this OK for trunk or should we drop it from OG8? I bootstrapped and regtested it for x86_64 Linux with nvptx offloading. Thanks, Cesar [OpenACC] Use existing

[patch,openacc] C, C++ OpenACC wait diagnostic change

2018-09-26 Thread Cesar Philippidis
Attached is an old patch which updated the C and C++ FEs to use %<)%> for the right ')' symbol. It's mostly a cosmetic change. All of the changes are self-contained to the OpenACC code path. Is this OK for trunk? I bootstrapped and regtested it for x86_64 Linux with nvptx offloading. Thanks, Cesa

Re: [PATCH] change predicates to return bool instead of int

2018-09-26 Thread Jeff Law
On 9/26/18 11:22 AM, Martin Sebor wrote: > The attached patch modifies the return types of a number > of predicates in tree.h and tree.c from int to bool. > > Tested on x86_64-linux with no unexpected failures. > > Martin > > gcc-tree-int2bool.diff > > gcc/ChangeLog: > > * tree.c (zerop)

RFC: [PATCH] x86: Add -mzero-caller-saved-regs=[skip|used|all]

2018-09-26 Thread H.J. Lu
Add -mzero-caller-saved-regs=[skip|used|all] command-line option and zero_caller_saved_regs("skip|used|all") function attribue: 1. -mzero-caller-saved-regs=skip and zero_caller_saved_regs("skip") Don't zero caller-saved integer registers upon function return. 2. -mzero-caller-saved-regs=used and

Re: [Patch, Aarch64] Testsuite fix to fix one of the regressions in PR 87433, gcc.dg/zero_bits_compound-1.c

2018-09-26 Thread Jeff Law
On 9/26/18 8:58 AM, Steve Ellcey wrote: > PR rtl-optimization/85160 which allowed combine to convert > two instructions into two different instructions if they had a lower cost > caused a couple of regressions on aarch64.  This patch fixes one of them. > > After the above patch, the gcc.dg/zero_bi

[PR 87415] handle 1 bit bit fields in set_value_range_with_overflow()

2018-09-26 Thread Aldy Hernandez
As I've said in the PR... For a 1-bit signed field we are trying to subtract the following ranges: [0, 0] - VR_VARYING Mathematically these are: [MAX, MAX] - [MIN, MAX] [0, 0] - [MIN, MAX] => [0, 0] - [-1, 0] For ranges: [a, b] - [c, d] is [a - d, b - c], so combine_bounds() yields:

[PATCH, GCC/ARM] Fix PR87374: ICE with -mslow-flash-data and -mword-relocations

2018-09-26 Thread Thomas Preudhomme
Hi, GCC ICEs under -mslow-flash-data and -mword-relocations because there is no way to load an address, both literal pools and MOVW/MOVT being forbidden. This patch gives an error message when both options are specified by the user and adds the according dg-skip-if directives for tests that use ei

Re: [PATCH] PR libstdc++/59439 optimize uses of classic ("C") std::locale

2018-09-26 Thread Florian Weimer
* Jonathan Wakely: > Does anybody see any problems with this change? Can you put a debug assert into _M_add_reference and _M_remove_reference, to check that they are never called on an _S_classic object? Or put the check directly into those functions? Thanks, Florian

[PATCH] change predicates to return bool instead of int

2018-09-26 Thread Martin Sebor
The attached patch modifies the return types of a number of predicates in tree.h and tree.c from int to bool. Tested on x86_64-linux with no unexpected failures. Martin gcc/ChangeLog: * tree.c (zerop): Change return type to bool. (integer_zerop, integer_onep, integer_each_onep): Same. (integ

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Jan Hubicka
> > > On Sep 26, 2018, at 10:06 AM, Jan Hubicka wrote: > > > >> On Wed, Sep 26, 2018 at 10:45 AM, Jeff Law wrote: > >>> On 9/26/18 7:38 AM, Jason Merrill wrote: > On Wed, Sep 26, 2018 at 9:24 AM, Richard Biener > wrote: > > IIRC he explicitely wanted 'static' not 'hidden' linkag

PING: Re: VRP: special case all pointer conversion code

2018-09-26 Thread Aldy Hernandez
PING On 9/17/18 6:12 AM, Aldy Hernandez wrote: It seems most of the remaining anti range code in extract_range_from_unary_expr for CONVERT_EXPR_P is actually dealing with non-nullness in practice. Anti-range handling is mostly handled by canonicalizing anti-ranges into its two set constituen

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Qing Zhao
> On Sep 26, 2018, at 10:06 AM, Jan Hubicka wrote: > >> On Wed, Sep 26, 2018 at 10:45 AM, Jeff Law wrote: >>> On 9/26/18 7:38 AM, Jason Merrill wrote: On Wed, Sep 26, 2018 at 9:24 AM, Richard Biener wrote: > IIRC he explicitely wanted 'static' not 'hidden' linkage. Not sure > wh

Re: [PR 87339, testsuite] Fix failure of gcc.dg/warn-abs-1.c on some targets

2018-09-26 Thread Joseph Myers
On Wed, 26 Sep 2018, Martin Jambor wrote: > I see, I guess the easiest is to skip the test on targets that do not > really have long double, although if someone thinks that is too > restrictive, I can also split the test again and move long double bits > to a separate test. You should be able to

Re: [PATCH 11/25] Simplify vec_merge according to the mask.

2018-09-26 Thread Andrew Stubbs
On 26/09/18 17:48, Richard Sandiford wrote: Andrew Stubbs writes: + /* Nested vec_merge. */ + rtx nvm = gen_rtx_VEC_MERGE (mode, vm1, vm2, mask1); + ASSERT_EQ (vm1, simplify_merge_mask (nvm, mask1, 0)); + ASSERT_EQ (vm2, simplify_merge_mask (nvm, mask1, 1)); Think the last two should sim

Re: [PATCH, AArch64 07/11] Link static libgcc after shared libgcc for -shared-libgcc

2018-09-26 Thread Richard Henderson
On 9/26/18 9:49 AM, Joseph Myers wrote: > On Tue, 25 Sep 2018, rth7...@gmail.com wrote: > >> From: Richard Henderson >> >> We are about to introduce symbols to libgcc.a that will >> not be present in libgcc_s.so. Most symbols will be >> resolved from the shared library first, and only the new >>

Re: [PATCH, AArch64 07/11] Link static libgcc after shared libgcc for -shared-libgcc

2018-09-26 Thread Joseph Myers
On Tue, 25 Sep 2018, rth7...@gmail.com wrote: > From: Richard Henderson > > We are about to introduce symbols to libgcc.a that will > not be present in libgcc_s.so. Most symbols will be > resolved from the shared library first, and only the new > symbols will be pulled from the static library.

Re: [PATCH 11/25] Simplify vec_merge according to the mask.

2018-09-26 Thread Richard Sandiford
Andrew Stubbs writes: > On 17/09/18 10:05, Richard Sandiford wrote: >> Would be good to have self-tests for the new transforms. > [...] >> known_eq, since we require equality for correctness. Same for the >> other tests. > > How about the attached? I've made the edits you requested and written >

Re: [PATCH 07/25] [pr82089] Don't sign-extend SFV 1 in BImode

2018-09-26 Thread Richard Sandiford
Andrew Stubbs writes: > On 17/09/18 09:40, Richard Sandiford wrote: >> writes: >>> This is an update of the patch posted to PR82089 long ago. We ran into the >>> same bug on GCN, so we need this fixed as part of this series. >>> >>> 2018-09-05 Andrew Stubbs >>> Tom de Vries >>>

Re: [PATCH 11/25] Simplify vec_merge according to the mask.

2018-09-26 Thread Andrew Stubbs
Ping. On 20/09/18 16:26, Andrew Stubbs wrote: On 17/09/18 10:05, Richard Sandiford wrote: Would be good to have self-tests for the new transforms. [...] known_eq, since we require equality for correctness.  Same for the other tests. How about the attached? I've made the edits you requested

Re: [Patch, fortran] PRs 70752 and 72709 - more deferred character length bugs

2018-09-26 Thread Paul Richard Thomas
Hi Dominique, Thanks for the heads up - I will check it out and fix it next week before doing any commits. Cheers Paul On 26 September 2018 at 16:52, Dominique d'Humières wrote: >> Is se->string_length guaranteed to be of type gfc_array_index_type_here? >> If so, why? And if not, maybe a fold

Re: [PATCH 09/25] Elide repeated RTL elements.

2018-09-26 Thread Andrew Stubbs
Ping. On 20/09/18 11:52, Andrew Stubbs wrote: On 19/09/18 17:38, Andrew Stubbs wrote: Here's an updated patch incorporating the RTL front-end changes. I had to change from "repeated 2x" to "repeated x2" because the former is not a valid C token, and apparently that's important. Here's a patc

[Patch, Aarch64] Fix testsuite regressions related to PR tree-optimization/71625

2018-09-26 Thread Steve Ellcey
A patch for PR tree-optimized/71625 caused regressions in the gcc.target/aarch64/vclz.c and gcc.target/aarch64/vneg_s.c tests because a couple of routines that were not getting inlined before started getting inlined.  The inlining is not a bug, the  generated code is now smaller so some functions t

[PATCH] PR libstdc++/59439 optimize uses of classic ("C") std::locale

2018-09-26 Thread Jonathan Wakely
The global locale::_Impl that represents the "C" locale is never destroyed, so there is no need to keep track of reference count updates for that object. This greatly reduce contention between threads that refer to the classic locale. Since the global std::locale initially uses the classic locale,

Re: [patch] Fix AArch64 ILP ICE

2018-09-26 Thread Andrew Stubbs
On 26/09/18 14:38, Richard Biener wrote: OK. Committed, thanks. Andrew

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Jan Hubicka
> > Not sure > > what 'internal' would mean in this context. > > > > But then the implementation looks at callee->externally_visible which > > matches hidden visibility... externally_visible is probably not > > the very best thing to look at depending on what we intend to do. > > from the commen

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Qing Zhao
> On Sep 26, 2018, at 9:45 AM, Jeff Law wrote: > > On 9/26/18 7:38 AM, Jason Merrill wrote: >> On Wed, Sep 26, 2018 at 9:24 AM, Richard Biener wrote: >>> IIRC he explicitely wanted 'static' not 'hidden' linkage. Not sure >>> what 'internal' would mean in this context. >> >> I mean internal l

Re: [PATCH 07/25] [pr82089] Don't sign-extend SFV 1 in BImode

2018-09-26 Thread Andrew Stubbs
On 17/09/18 09:40, Richard Sandiford wrote: writes: This is an update of the patch posted to PR82089 long ago. We ran into the same bug on GCN, so we need this fixed as part of this series. 2018-09-05 Andrew Stubbs Tom de Vries PR82089 gcc/ * expmed

Re: [Patch, fortran] PRs 70752 and 72709 - more deferred character length bugs

2018-09-26 Thread Dominique d'Humières
> Is se->string_length guaranteed to be of type gfc_array_index_type_here? > If so, why? And if not, maybe a fold_convert is in order? I don’t know if this related, but if I build gfortran with the patches for PRs 70752 and 72709, 70149, and 65677 with --enable-checking=yes, compiling the test i

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Qing Zhao
> On Sep 26, 2018, at 8:24 AM, Richard Biener wrote: > > On Wed, 26 Sep 2018, Jason Merrill wrote: > >> On Fri, Sep 21, 2018 at 11:12 AM, Qing Zhao wrote: >>> Hi, this is the 4th version of the patch. >>> >>> mainly address Martin’s comments on some spelling issues. >>> >>> I have tested th

Re: [PATCH] Fix build with ISL 0.20

2018-09-26 Thread Alexey Neyman
On 09/26/2018 07:46 AM, Jeff Law wrote: On 9/26/18 8:43 AM, Richard Biener wrote: On Wed, Sep 26, 2018 at 4:10 PM Jeff Law wrote: On 9/25/18 1:07 PM, Alexey Neyman wrote: Hi, A trivial patch that fixes the build against the latest ISL release, 0.20. In that release, and were split in two h

[PATCH, i386]: Use fnstcw instead of fstcw to set x87 precision in crtprec.c

2018-09-26 Thread Uros Bizjak
Hello! There is no point to handle exceptions at the program startup time. 2018-09-26 Uros Bizjak * config/i386/crtprec.c (set_precision): Use fnstcw instead of fstcw. Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}. Committed to mainline SVN. Uros. Index: config/i386/cr

Re: [PR 87339, testsuite] Fix failure of gcc.dg/warn-abs-1.c on some targets

2018-09-26 Thread Martin Jambor
Hi, On Wed, Sep 26 2018, Christophe Lyon wrote: > On Tue, 25 Sep 2018 at 17:50, Martin Jambor wrote: >> >> Hi, >> >> On Mon, Sep 24 2018, Christophe Lyon wrote: >> > On Mon, 24 Sep 2018 at 20:46, Martin Jambor wrote: >> >> >> >> Hi, >> >> >> >> the test added to check whether _Float128 types are

[PATCH, i386]: Do not use "u" constraint and remove FP_TOP_SSE_REGS and FP_SECOND_SSE_REGS register classes

2018-09-26 Thread Uros Bizjak
Hello! Stack registers are fixed up by regstack pass, so there is no point to specify "upper" FP register in the instruction patterns. This change allows register allocator a bit more freedom, which results in a few fxch instructions less. The patch also removes FP_TOP_SSE_REGS and FP_SECOND_SSE_

Re: libgo patch committed: Update to 1.11 release

2018-09-26 Thread Ian Lance Taylor
On Wed, Sep 26, 2018 at 12:57 AM, Uros Bizjak wrote: >> I've committed a patch to update libgo to the 1.11 release. As usual >> for these updates, the patch is too large to attach to this e-mail >> message. I've attached some of the more relevant directories. This >> update required some minor

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Alexander Monakov
On Wed, 26 Sep 2018, Qing Zhao wrote: > Alexander, > > thanks for the questions. > > Yes, we had some discussion on the questions you raised during the review of > the initial patch back to 9/11/2018. > please take a look at those discussions at: > > https://gcc.gnu.org/ml/gcc-patches/2018-09/

Re: libgo patch committed: Update to 1.11 release

2018-09-26 Thread H.J. Lu
On Wed, Sep 26, 2018 at 7:50 AM, H.J. Lu wrote: > On Mon, Sep 24, 2018 at 2:46 PM, Ian Lance Taylor wrote: >> I've committed a patch to update libgo to the 1.11 release. As usual >> for these updates, the patch is too large to attach to this e-mail >> message. I've attached some of the more rel

Re: [C++ Patch] PR 84940 ("[7/8/9 Regression] internal compiler error: in build_value_init_noctor, at cp/init.c:465")

2018-09-26 Thread Jason Merrill
OK. On Tue, Sep 25, 2018 at 12:45 PM, Paolo Carlini wrote: > Hi, > > in this error-recovery regression we ICE after a sensible diagnostic emitted > by cp_build_unary_op, called by finish_unary_op_expr via build_x_unary_op. > In principle we could dig deeper, but I don't think it makes sense for >

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Jan Hubicka
> On Wed, Sep 26, 2018 at 10:45 AM, Jeff Law wrote: > > On 9/26/18 7:38 AM, Jason Merrill wrote: > >> On Wed, Sep 26, 2018 at 9:24 AM, Richard Biener wrote: > >>> IIRC he explicitely wanted 'static' not 'hidden' linkage. Not sure > >>> what 'internal' would mean in this context. > >> > >> I mean

Re: [PR 87339, testsuite] Fix failure of gcc.dg/warn-abs-1.c on some targets

2018-09-26 Thread Christophe Lyon
On Tue, 25 Sep 2018 at 17:50, Martin Jambor wrote: > > Hi, > > On Mon, Sep 24 2018, Christophe Lyon wrote: > > On Mon, 24 Sep 2018 at 20:46, Martin Jambor wrote: > >> > >> Hi, > >> > >> the test added to check whether _Float128 types are handled correctly by > >> the new warning about suspicious

[Patch, Aarch64] Testsuite fix to fix one of the regressions in PR 87433, gcc.dg/zero_bits_compound-1.c

2018-09-26 Thread Steve Ellcey
PR rtl-optimization/85160 which allowed combine to convert two instructions into two different instructions if they had a lower cost caused a couple of regressions on aarch64.  This patch fixes one of them. After the above patch, the gcc.dg/zero_bits_compound-1.c test on  aarch64 generates an and

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Jason Merrill
On Wed, Sep 26, 2018 at 10:45 AM, Jeff Law wrote: > On 9/26/18 7:38 AM, Jason Merrill wrote: >> On Wed, Sep 26, 2018 at 9:24 AM, Richard Biener wrote: >>> IIRC he explicitely wanted 'static' not 'hidden' linkage. Not sure >>> what 'internal' would mean in this context. >> >> I mean internal link

Re: libgo patch committed: Update to 1.11 release

2018-09-26 Thread H.J. Lu
On Mon, Sep 24, 2018 at 2:46 PM, Ian Lance Taylor wrote: > I've committed a patch to update libgo to the 1.11 release. As usual > for these updates, the patch is too large to attach to this e-mail > message. I've attached some of the more relevant directories. This > update required some minor

Re: [PATCH] Fix PR87440, extra lexical block in inline instances

2018-09-26 Thread Jason Merrill
On Wed, Sep 26, 2018 at 9:35 AM, Richard Biener wrote: > > We do not create a DW_AT_lexical_block for the outermost block in > functions but we do for DW_AT_inlined_subroutines. That makes > debuginfo look like if there were two of each local, the outer > one (from the abstract instance) optimize

Re: [PATCH] Fix build with ISL 0.20

2018-09-26 Thread Jeff Law
On 9/26/18 8:43 AM, Richard Biener wrote: > On Wed, Sep 26, 2018 at 4:10 PM Jeff Law wrote: >> >> On 9/25/18 1:07 PM, Alexey Neyman wrote: >>> Hi, >>> >>> A trivial patch that fixes the build against the latest ISL release, >>> 0.20. In that release, and were split in two >>> headers each. The

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Jeff Law
On 9/26/18 7:38 AM, Jason Merrill wrote: > On Wed, Sep 26, 2018 at 9:24 AM, Richard Biener wrote: >> IIRC he explicitely wanted 'static' not 'hidden' linkage. Not sure >> what 'internal' would mean in this context. > > I mean internal linkage as in the C and C++ standards. Since this is primaril

[Patch, Aarch64] Testsuite patch to fix one of the regressions in PR 87433, gcc.target/aarch64/ashltidisi.c

2018-09-26 Thread Steve Ellcey
The patch for PR rtl-optimization/85160 which allowed combine to convert two instructions into two different instructions if they had a lower cost caused a couple of regressions on aarch64.  This patch fixes one of them. After the above patch, the gcc.target/aarch64/ashltidisi.c test generated 3

Re: [PATCH] Fix build with ISL 0.20

2018-09-26 Thread Richard Biener
On Wed, Sep 26, 2018 at 4:10 PM Jeff Law wrote: > > On 9/25/18 1:07 PM, Alexey Neyman wrote: > > Hi, > > > > A trivial patch that fixes the build against the latest ISL release, > > 0.20. In that release, and were split in two > > headers each. The (included from which is > > included by "grap

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Qing Zhao
Alexander, thanks for the questions. Yes, we had some discussion on the questions you raised during the review of the initial patch back to 9/11/2018. please take a look at those discussions at: https://gcc.gnu.org/ml/gcc-patches/2018-09/msg00549.html

Re: [PATCH, AArch64 08/11] aarch64: Add out-of-line functions for LSE atomics

2018-09-26 Thread Richard Henderson
On 9/26/18 7:33 AM, Florian Weimer wrote: >>> *That's not what I meant. I'm curious if LSE and non-LSE atomics on the >>> same location will still result in the expected memory ordering. If >>> they don't, then this requires *some* explanation why this is okay. >>> >>> Thanks, >>> Florian Yes, t

Re: [PATCH, AArch64 08/11] aarch64: Add out-of-line functions for LSE atomics

2018-09-26 Thread Florian Weimer
* Richard Henderson: > On 9/26/18 1:59 AM, Florian Weimer wrote: >> * rth: >> >>> diff --git a/libgcc/config/aarch64/lse.c b/libgcc/config/aarch64/lse.c >>> new file mode 100644 >>> index 000..20f4bde741f >>> --- /dev/null >>> +++ b/libgcc/config/aarch64/lse.c >> >>> +static void __attri

Re: [PATCH, AArch64 08/11] aarch64: Add out-of-line functions for LSE atomics

2018-09-26 Thread Richard Henderson
On 9/26/18 1:59 AM, Florian Weimer wrote: > * rth: > >> diff --git a/libgcc/config/aarch64/lse.c b/libgcc/config/aarch64/lse.c >> new file mode 100644 >> index 000..20f4bde741f >> --- /dev/null >> +++ b/libgcc/config/aarch64/lse.c > >> +static void __attribute__((constructor)) >> +init_ha

Re: [PATCH] Fix build with ISL 0.20

2018-09-26 Thread Jeff Law
On 9/25/18 1:07 PM, Alexey Neyman wrote: > Hi, > > A trivial patch that fixes the build against the latest ISL release, > 0.20. In that release, and were split in two > headers each. The (included from which is > included by "graphite.h") now includes and > ; and must be included explicitly

[PATCH][GCC][testsuite] Fix caching of tests for multiple variant runs and update existing target-supports tests.

2018-09-26 Thread Tamar Christina
Hi All, Currently some target supports checks such as vect_int cache their results in a manner that would cause them not to be rechecked when running the same tests against a different variant in a multi variant run. This causes tests to be skipped or run when they shouldn't be. there is already

Re: [PATCH] Fix PR87443, bogus/missing DW_AT_abstract_origins

2018-09-26 Thread Jason Merrill
OK. On Wed, Sep 26, 2018 at 9:30 AM, Richard Biener wrote: > > This fixes mentioned PR (I should stop looking at generated debug > info...) where it notes that concrete inline instance DW_TAG_lexical_block > miss DW_AT_abstract_origin attributes pointing to the abstract instance > and that inline

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Jason Merrill
On Wed, Sep 26, 2018 at 9:24 AM, Richard Biener wrote: > IIRC he explicitely wanted 'static' not 'hidden' linkage. Not sure > what 'internal' would mean in this context. I mean internal linkage as in the C and C++ standards. Jason

Re: [patch] Fix AArch64 ILP ICE

2018-09-26 Thread Richard Biener
On Tue, Sep 25, 2018 at 4:25 PM Andrew Stubbs wrote: > > On 22/09/18 19:51, Andreas Schwab wrote: > > That breaks aarch64 ILP32. > > The problem is that the mode given to expand_expr is just a "hint", > apparently, and it's being ignored. > > I'm testing the attached patch for GCN. It fixes the IC

[PATCH] Fix PR87440, extra lexical block in inline instances

2018-09-26 Thread Richard Biener
We do not create a DW_AT_lexical_block for the outermost block in functions but we do for DW_AT_inlined_subroutines. That makes debuginfo look like if there were two of each local, the outer one (from the abstract instance) optimized out (visible via info locals in gdb). The following elides th

Re: [PATCH][OpenACC] Update deviceptr handling during gimplification

2018-09-26 Thread Cesar Philippidis
On 09/25/2018 05:55 PM, Julian Brown wrote: > On Tue, 7 Aug 2018 15:09:38 -0700 > Cesar Philippidis wrote: > >> I had previously posted this patch as part of a monster deviceptr >> patch here >> . This >> patch breaks out the generic gimpl

[PATCH] Fix PR87443, bogus/missing DW_AT_abstract_origins

2018-09-26 Thread Richard Biener
This fixes mentioned PR (I should stop looking at generated debug info...) where it notes that concrete inline instance DW_TAG_lexical_block miss DW_AT_abstract_origin attributes pointing to the abstract instance and that inline instances of DW_TAG_lexical_block have DW_AT_abstract_origins point

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Richard Biener
On Wed, 26 Sep 2018, Jason Merrill wrote: > On Fri, Sep 21, 2018 at 11:12 AM, Qing Zhao wrote: > > Hi, this is the 4th version of the patch. > > > > mainly address Martin’s comments on some spelling issues. > > > > I have tested the patch on both x86 and aarch64, no issue. > > > > Okay for commit

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Jason Merrill
On Fri, Sep 21, 2018 at 11:12 AM, Qing Zhao wrote: > Hi, this is the 4th version of the patch. > > mainly address Martin’s comments on some spelling issues. > > I have tested the patch on both x86 and aarch64, no issue. > > Okay for commit? > > thanks. > > Qing. > > gcc/ChangeLog > > +2018-09-20

Re: [PATCH, AArch64 00/11] LSE atomics out-of-line

2018-09-26 Thread Michael Matz
Hi, On Wed, 26 Sep 2018, Florian Weimer wrote: > > Therefore, I've created small out-of-line helpers that are directly > > linked into every library or executable that requires them. There > > will be two direct branches, both of which will be well-predicted. > > This seems reasonable to me, co

Re: libgo patch committed: Update to 1.11 release

2018-09-26 Thread Ian Lance Taylor
ake check-gotools >> make[1]: Entering directory `/usr/local/gcc/gcc-20180926/Build/gotools' >> chmod -R u+w check-go-dir >> chmod: cannot access `check-go-dir': No such file or directory >> make[1]: *** [check-go-tool] Error 1 >> make[1]: Leaving directory `/us

Re: libgo patch committed: Update to 1.11 release

2018-09-26 Thread Ian Lance Taylor
On Wed, Sep 26, 2018 at 3:54 AM, Andreas Schwab wrote: > > All execution tests are now failing with "fatal error: impossible call > to aeshashbody". Which target? Ian

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Paolo Carlini
Hi, On 9/26/18 1:12 PM, Alexander Monakov wrote: On Fri, 21 Sep 2018, Qing Zhao wrote: +2018-09-20 Qing Zhao + + * cif-code.def (FUNCTION_EXTERN): New CIFCODE. + * common.opt (-finline-only-static): New option. + * doc/invoke.texi: Document -finline-only-static. + * i

Re: [PATCH v4] [aarch64] Add HiSilicon tsv110 CPU support

2018-09-26 Thread Kyrill Tkachov
Hi Shaokun, On 25/09/18 14:40, Zhangshaokun wrote: Hi ARM maintainers, Any plan to support CTR_EL0.DIC and CTR_EL0.IDC in GCC? I saw it has been supported in linux mainline(on Mar 7), Patch link: http://lists.infradead.org/pipermail/linux-arm-kernel/2018-March/565090.html Kernel link: https://g

Re: [PATCH][Middle-end][Version 4]Add a new option to control inlining only on static functions

2018-09-26 Thread Alexander Monakov
On Fri, 21 Sep 2018, Qing Zhao wrote: > +2018-09-20 Qing Zhao > + > + * cif-code.def (FUNCTION_EXTERN): New CIFCODE. > + * common.opt (-finline-only-static): New option. > + * doc/invoke.texi: Document -finline-only-static. > + * ipa-inline.c (can_inline_edge_p): Control inlining

Re: libgo patch committed: Update to 1.11 release

2018-09-26 Thread Andreas Schwab
All execution tests are now failing with "fatal error: impossible call to aeshashbody". Andreas. -- Andreas Schwab, SUSE Labs, sch...@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different."

[Ada] Spurious ineffective use_clause warning

2018-09-26 Thread Pierre-Marie de Rodat
This patch fixes an issue whereby user-defined subprograms used as generic actuals with corresponding formals containing other formal types led to spurious ineffective use_clause warnings. Tested on x86_64-pc-linux-gnu, committed on trunk 2018-09-26 Justin Squirek gcc/ada/ * sem_ch8.

[Ada] Fix inheritance of representation items defined as aspects

2018-09-26 Thread Pierre-Marie de Rodat
When a representation item is defined by a pragma or attribute definition clause, the entity it applies to is that of the Name of the representation item. But when it is defined by an aspect definition, the entity is directly denoted by the Entity attribute of the represenation item. The circuitry

Re: [PATCH] Come up with --param asan-stack-small-redzone (PR sanitizer/81715).

2018-09-26 Thread Martin Liška
On 9/25/18 5:53 PM, Jakub Jelinek wrote: > On Tue, Sep 25, 2018 at 05:26:44PM +0200, Martin Liška wrote: >> The only missing piece is how to implement asan_emit_redzone_payload more >> smart. >> It means doing memory stores with 8,4,2,1 sizes in order to reduce # of >> insns. >> Do we have somewh

[Ada] Issue info message on inlined subprograms in GNATprove mode

2018-09-26 Thread Pierre-Marie de Rodat
Issue a positive message that inlining was performed in GNATprove mode, when corresponding debug switch -gnatd_f is set. Tested on x86_64-pc-linux-gnu, committed on trunk 2018-09-26 Yannick Moy gcc/ada/ * errout.ads: Update comment for insertion character '?'. * inline.adb: U

[Ada] Missing front-end code for constraint checks on fixed point exprs

2018-09-26 Thread Pierre-Marie de Rodat
This patch ensures that the front-end generates constraint checks for some operations that previously depended on gigi for the corresponding check. The patch also resets the Do_Range_Check flag so that it never appears in the tree presented to gigi. Tested on x86_64-pc-linux-gnu, committed on trun

[Ada] Spurious elaboration issue due to inlining

2018-09-26 Thread Pierre-Marie de Rodat
This patch ensures that the full compilation context is captured prior to package or subprogram instantiation/inlining and restored after the action takes place. Tested on x86_64-pc-linux-gnu, committed on trunk 2018-09-26 Hristian Kirtchev gcc/ada/ * sem_ch12.adb (Instantiate_Packag

[Ada] Do not issue by default info messages for inlining in GNATprove

2018-09-26 Thread Pierre-Marie de Rodat
Info messages about lack of inlining for analysis in GNATprove may be confusing to users. They are now only issued when GNATprove is called with switch --info, which it passes on to gnat2why with switch -gnatd_f. There is no effect on compilation. Tested on x86_64-pc-linux-gnu, committed on trunk

  1   2   >