[PATCH] diagnose unsupported uses of hardware register variables (PR 88000)

2018-11-13 Thread Martin Sebor
In PR 88000 the reporter expects to be able to use an explicit register local variable in a context where it isn't supported i.e., for something other than an input or output of an asm statement: namely to pass it as argument to a user-defined function. GCC emits unexpected object code in this

Re: [RS6000] Don't pass -many to the assembler

2018-11-13 Thread Alan Modra
On Tue, Nov 13, 2018 at 05:17:41AM -0600, Segher Boessenkool wrote: > On Tue, Nov 13, 2018 at 12:02:55PM +1030, Alan Modra wrote: > > OK, fair enough. Another option is to just disable -many when gcc is > > in development, like we enable checking. > > That is a good plan for GCC 9 at least.

Re: [PATCH][lower-subreg] Fix PR87507

2018-11-13 Thread Peter Bergner
On 11/13/18 6:06 PM, Eric Botcazou wrote: >> PR rtl-optimization/87507 >> * lower-subreg.c (operand_for_simple_move_operator): New function. >> (simple_move): Strip simple operators. >> (find_pseudo_copy): Likewise. >> (resolve_operand_for_simple_move_operator): New

Re: [C++ Patch] Fix two grokdeclarator locations

2018-11-13 Thread Jason Merrill
On 11/12/18 6:39 AM, Paolo Carlini wrote: Hi again, On 08/11/18 10:26, Paolo Carlini wrote: Hi, two additional grokdeclarator locations that we can easily fix by using declarator->id_loc. Slightly more interesting, testing revealed a latent issue in the make_id_declarator uses:

Re: [PATCH][lower-subreg] Fix PR87507

2018-11-13 Thread Eric Botcazou
> PR rtl-optimization/87507 > * lower-subreg.c (operand_for_simple_move_operator): New function. > (simple_move): Strip simple operators. > (find_pseudo_copy): Likewise. > (resolve_operand_for_simple_move_operator): New function. > (resolve_simple_move): Strip

[committed] Fix debug stmt handling in omp-simd-clone.c (PR tree-optimization/87898)

2018-11-13 Thread Jakub Jelinek
Hi! Gimple debug binds (both normal and source) need to have a decl as the first operand. The simd clone adjustment code would in some cases transform that into an ARRAY_REF. The following patch removes such debug stmts. In the future we could have a VAR_DECL with DECL_ABSTRACT_ORIGIN pointing

Re: [PATCH] Remove redundant loop in unsynchronized_pool_resource code

2018-11-13 Thread Jonathan Wakely
On 13/11/18 23:19 +, Jonathan Wakely wrote: On 13/11/18 22:59 +, Jonathan Wakely wrote: * src/c++17/memory_resource.cc (bitset::find_first_unset()): Remove unused function. (bitset::get_first_unset()): Remove loop, if there's are unset bits then

[PATCH] Fix bootstrap with GCC 4.1.2 (PR bootstrap/86739)

2018-11-13 Thread Jakub Jelinek
Hi! As mentioned in the PR, with GCC before 4.3 one can't instantiate std::pair where one or both of the template parameters are reference types, because the std::pair constructor has arguments references to the template parameter types and the CWG that resolved hasn't been applied to those

Re: [PATCH] Improve handling of pool_options::largest_required_pool_block

2018-11-13 Thread Jonathan Wakely
On 13/11/18 22:59 +, Jonathan Wakely wrote: @@ -898,9 +907,10 @@ namespace pmr { auto p = std::lower_bound(std::begin(pool_sizes), std::end(pool_sizes), opts.largest_required_pool_block); -if (int npools = p - std::begin(pool_sizes)) - return

[PATCH] Fix x86 bzhi/bextr iff zero_extract with zero size is undefined (PR rtl-optimization/87817)

2018-11-13 Thread Jakub Jelinek
Hi! As mentioned in the PR, it is unclear if zero_extract is well defined if the second argument is 0. x86 intrinsic require bzhi and bextr to be well defined in those cases (extraction of 0 bits results in 0), but e.g. combiner hapilly transforms that into << 64 >> 64, simplify-rtx.c, while it

Re: [PATCH] Fix debug stmt handling in optimize_recip_sqrt (PR tree-optimization/87977)

2018-11-13 Thread Jakub Jelinek
On Tue, Nov 13, 2018 at 10:19:10AM +0100, Jakub Jelinek wrote: > > > Though, in this particular case the sqrt call is > > > optimized away, so it wouldn't make a difference. > > > > > > Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk, or > > > should I do the

Re: [PATCH] Remove redundant loop in unsynchronized_pool_resource code

2018-11-13 Thread Jonathan Wakely
On 13/11/18 22:59 +, Jonathan Wakely wrote: * src/c++17/memory_resource.cc (bitset::find_first_unset()): Remove unused function. (bitset::get_first_unset()): Remove loop, if there's are unset bits then _M_next_word refers to the first one and there's no need

Re: RFA: vectorizer patches 1/2 : WIDEN_MULT_PLUS support

2018-11-13 Thread Joern Wolfgang Rennecke
On 12/11/18 14:30, Richard Biener wrote: I guess I already asked this question when WIDEN_MULT_PLUS_EXPR was introduced - but isn't that fully contained within a DOT_PROD_EXPR? I'm not sure what exactly you mean here. A mailing list search to find that post was unsuccessful. The earliest

Re: [PATCH] Fix incorrect assertion when deallocating big block

2018-11-13 Thread Jonathan Wakely
@@ -932,8 +946,7 @@ namespace pmr } void - __pool_resource::deallocate(void* p, size_t bytes [[maybe_unused]], - size_t alignment [[maybe_unused]]) + __pool_resource::deallocate(void* p, size_t bytes, size_t alignment) { const auto it =

[PATCH] Remove redundant loop in unsynchronized_pool_resource code

2018-11-13 Thread Jonathan Wakely
* src/c++17/memory_resource.cc (bitset::find_first_unset()): Remove unused function. (bitset::get_first_unset()): Remove loop, if there's are unset bits then _M_next_word refers to the first one and there's no need to loop. (_Pool::_Pool(size_t, size_t),

[PATCH] Improve handling of pool_options::largest_required_pool_block

2018-11-13 Thread Jonathan Wakely
Make the munge_options function round the largest_required_pool_block value to a multiple of the smallest pool size (currently 8 bytes) to avoid pools with odd sizes. Ensure there is a pool large enough for blocks of the requested size. Previously when largest_required_pool_block was exactly

[PATCH] Fix incorrect assertion when deallocating big block

2018-11-13 Thread Jonathan Wakely
Since a big_block rounds up the size to a multiple of big_block::min it is wrong to assert that the supplied number of bytes equals the big_block's size(). Add big_block::alloc_size(size_t) to calculate the allocated size consistently, and add comments to the code. *

[PATCH] Fix overflows in std::pmr::unsynchonized_pool_resource

2018-11-13 Thread Jonathan Wakely
* src/c++17/memory_resource.cc (bitset::full()): Handle edge case for _M_next_word maximum value. (bitset::get_first_unset(), bitset::set(size_type)): Use update_next_word() to update _M_next_word. (bitset::update_next_word()): New function, avoiding

ping x3 [PATCH 0/3] [MSP430] Add methods to extract MCU data from file

2018-11-13 Thread Jozef Lawrynowicz
ping On 29/10/2018 14:22, Jozef Lawrynowicz wrote: The same as previous pings except I removed the patch which updates the hard-coded device data - I'll commit that later as "obvious". Ok for trunk? The following series of patches extends MCU device data handling for the msp430 target,

Re: [PATCH][LRA] Fix PR87899: r264897 cause mis-compiled native arm-linux-gnueabihf toolchain

2018-11-13 Thread Peter Bergner
On 11/13/18 4:09 PM, Vladimir Makarov wrote: > On 11/13/2018 10:53 AM, Peter Bergner wrote: >> I think with the above results, I think the patch is ready for review. >> I'm attaching the latest updated patch below. >> >> Again, this passed bootstrap and regtesting on powerpc64le-linux with >> no

Re: [PATCH] RFC: C/C++: print help when a header can't be found

2018-11-13 Thread Jason Merrill
On Mon, Nov 12, 2018 at 4:01 PM Martin Sebor wrote: > On 11/11/2018 04:33 PM, David Malcolm wrote: > > When gcc can't find a header file, it's a hard error that stops the build, > > typically requiring the user to mess around with compile flags, Makefiles, > > dependencies, and so forth. > > > >

Re: [PATCH][LRA] Fix PR87899: r264897 cause mis-compiled native arm-linux-gnueabihf toolchain

2018-11-13 Thread Vladimir Makarov
On 11/13/2018 10:53 AM, Peter Bergner wrote: On 11/13/18 9:01 AM, Renlin Li wrote: I could verify that, your patch fixes all the ICEs I saw with arm-linux-gnueabihf toolchain! There are some differences on the test results, because I compare the latest results with something which is old. I

Re: [PATCH] C/C++: add fix-it hints for missing '&' and '*' (PR c++/87850)

2018-11-13 Thread Jason Merrill
On Mon, Nov 12, 2018 at 4:32 PM Martin Sebor wrote: > On 11/11/2018 02:02 PM, David Malcolm wrote: > > On Sun, 2018-11-11 at 11:01 -0700, Martin Sebor wrote: > >> On 11/10/2018 12:01 AM, Eric Gallager wrote: > >>> On 11/9/18, David Malcolm wrote: > This patch adds a fix-it hint to various

[PATCH v3] Add sinh(atanh(x)) and cosh(atanh(x)) optimizations

2018-11-13 Thread Giuliano Augusto Faulin Belinassi
Only do the optimization if flag_signed_zeros && !flag_finite_math_only is set, as suggested in the previous iteration. Before, the patch did the optimization even when -fno-signed-zeros and -ffinite-math-only was set. This could generate badly incorrect results for targets that do not support

Re: Bug 52869 - [DR 1207] "this" not being allowed in noexcept clauses

2018-11-13 Thread Jason Merrill
On Tue, Nov 13, 2018 at 10:40 AM Marek Polacek wrote: > On Tue, Nov 13, 2018 at 11:49:55AM +0530, Umesh Kalappa wrote: > > Hi All, > > > > the following patch fix the subjected issue > > > > Index: gcc/cp/parser.c > > === > > ---

Re: [PATCH][RFC] Come up with -flive-patching master option.

2018-11-13 Thread Qing Zhao
Hi, > On Nov 13, 2018, at 1:18 PM, Miroslav Benes wrote: > >> Attached is the patch for new -flive-patching=[inline-only-static | >> inline-clone] master option. >> >> '-flive-patching=LEVEL' >> Control GCC's optimizations to provide a safe compilation for >> live-patching. Provides

[wwwdocs] Update C++ status post San Diego

2018-11-13 Thread Marek Polacek
This patch updates the current C++ status with proposals accepted at the recent San Diego meeting. Committed to CVS. Index: projects/cxx-status.html === RCS file: /cvs/gcc/wwwdocs/htdocs/projects/cxx-status.html,v retrieving

Re: [PATCH 2/3] Add a pass to automatically add ptwrite instrumentation

2018-11-13 Thread Andi Kleen
On Tue, Nov 13, 2018 at 07:37:27PM +0100, Richard Biener wrote: > I'd look at doing the instrumentation after var-tracking has run - that is > what computes the locations in the end. That means instrumenting on late RTL > after register allocation (and eventually with branch range restrictions

Re: [PATCH v4] PR preprocessor/83173: Enhance -fdump-internal-locations output

2018-11-13 Thread David Malcolm
On Tue, 2018-11-13 at 14:54 -0500, Mike Gulick wrote: > 2018-11-13 Mike Gulick [...] > * gcc/diagnostic-core.h (num_digits): Add extern definition. FWIW you moved the decl to diagnostic.h, but didn't update the above ChangeLog entry. [...] > diff --git a/libcpp/location-example.txt

[PATCH v4] PR preprocessor/83173: Enhance -fdump-internal-locations output

2018-11-13 Thread Mike Gulick
2018-11-13 Mike Gulick PR preprocessor/83173 * gcc/input.c (dump_location_info): Dump reason and included_from fields from line_map_ordinary struct. Fix indentation when location > 5 digits. * libcpp/location-example.txt: Update example

Re: RFC (branch prediction): PATCH to implement P0479R5, [[likely]] and [[unlikely]].

2018-11-13 Thread Jason Merrill
On Tue, Nov 13, 2018 at 9:20 AM Martin Liška wrote: > > On 11/13/18 5:43 AM, Jason Merrill wrote: > > [[likely]] and [[unlikely]] are equivalent to the GNU hot/cold attributes, > > except that they can be applied to arbitrary statements as well as labels; > > this is most likely to be useful for

Re: [PATCH v3 3/3] PR preprocessor/83173: Enhance -fdump-internal-locations output

2018-11-13 Thread Mike Gulick
On 11/12/18 7:56 PM, David Malcolm wrote: > On Mon, 2018-11-12 at 21:13 +, Mike Gulick wrote: >> On 11/2/18 5:04 PM, David Malcolm wrote: >>> On Thu, 2018-11-01 at 11:56 -0400, Mike Gulick wrote: 2017-10-31 Mike Gulick PR preprocessor/83173 * gcc/input.c

Re: [PATCH] avoid copying inlining attributes in attribute copy

2018-11-13 Thread Jeff Law
On 11/13/18 12:15 PM, Martin Sebor wrote: > Enabling in Glibc the recent enhancement to detect attribute > mismatches in alias declarations (PR 81824) revealed a use > case where aliases are being declared for targets declared > with the always_inline attribute.  Copying the always_inline >

Re: [PATCH][GCC] Make DR_TARGET_ALIGNMENT compile time variable

2018-11-13 Thread Dominique d'Humières
Revision r266072 breaks bootstrap on darwin: In file included from ../../work/gcc/coretypes.h:430, from ../../work/gcc/tree-vect-data-refs.c:24: ../../work/gcc/poly-int.h: In instantiation of 'typename if_nonpoly::type maybe_lt(const Ca&, const poly_int_pod&) [with unsigned int

Re: [doc PATCH] Fix weakref description.

2018-11-13 Thread Michael Ploujnikov
On 2018-11-12 12:50 p.m., Michael Ploujnikov wrote: > On 2018-11-02 1:59 p.m., Michael Ploujnikov wrote: >> I came across this typo and also added a similar ld invocation for >> illustration purposes as mentioned by Jakub on irc. >> > > After talking to Jakub about it, I went with different

Re: [PATCH][RFC] Come up with -flive-patching master option.

2018-11-13 Thread Miroslav Benes
On Tue, 13 Nov 2018, Qing Zhao wrote: > Hi, Hi, > Attached is the patch for new -flive-patching=[inline-only-static | > inline-clone] master option. > > '-flive-patching=LEVEL' > Control GCC's optimizations to provide a safe compilation for > live-patching. Provides

[PATCH] avoid copying inlining attributes in attribute copy

2018-11-13 Thread Martin Sebor
Enabling in Glibc the recent enhancement to detect attribute mismatches in alias declarations (PR 81824) revealed a use case where aliases are being declared for targets declared with the always_inline attribute. Copying the always_inline attribute to the declaration of the alias would then

Re: [PATCH][lower-subreg] Fix PR87507

2018-11-13 Thread Peter Bergner
On 11/13/18 12:49 PM, Richard Henderson wrote: > On 11/13/18 5:38 PM, Peter Bergner wrote: >> On 11/13/18 2:53 AM, Eric Botcazou wrote: >>> Superfluous semi-colon. Given that the function returns an operand, its >>> name >>> is IMO misleading, so maybe [get_]operand_for_simple_move_operator. >>

Re: [PATCH][lower-subreg] Fix PR87507

2018-11-13 Thread Richard Henderson
On 11/13/18 5:38 PM, Peter Bergner wrote: > On 11/13/18 2:53 AM, Eric Botcazou wrote: >>> +static rtx >>> +simple_move_operator (rtx x) >>> +{ >>> + /* A word sized rotate of a register pair is equivalent to swapping >>> + the registers in the register pair. */ >>> + if (GET_CODE (x) ==

Re: record_ranges_from_incoming_edge: use value_range API for creating new range

2018-11-13 Thread Richard Biener
On November 13, 2018 5:40:59 PM GMT+01:00, Aldy Hernandez wrote: >With your cleanups, the main raison d'etre for my patch goes away, but >here is the promised removal of ignore_equivs_equal_p. > >I think the == operator is a bit confusing, and equality intent should >be clearly specified. I

[PATCH] Add missing ZLIBINC to CFLAGS-optinfo-emit-json.o

2018-11-13 Thread David Malcolm
On Tue, 2018-11-13 at 17:58 +, Kyrill Tkachov wrote: > Hi David, > > On 09/11/18 21:00, Jeff Law wrote: > > On 11/9/18 10:51 AM, David Malcolm wrote: > > > One of the concerns noted at Cauldron about -fsave-optimization- > > > record > > > was the size of the output files. > > > > > > This

Re: [RS6000] Don't pass -many to the assembler

2018-11-13 Thread Peter Bergner
On 11/13/18 12:06 PM, Iain Sandoe wrote: > As far as I expect, Darwin should be untouched by this - we have a separate > assembler (which doesn’t even respond to -many), so unless there’s some > higher level translation done (it’s not mentioned in any Darwin specs), we > should just carry on as

Re: [PATCH 2/3] Add a pass to automatically add ptwrite instrumentation

2018-11-13 Thread Richard Biener
On November 13, 2018 7:09:15 PM GMT+01:00, Andi Kleen wrote: >On Tue, Nov 13, 2018 at 09:03:52AM +0100, Richard Biener wrote: >> > I even had an earlier version of this that instrumented >> > assembler output of the compiler with PTWRITE in a separate script, >> > and it worked fine too. >> >>

[PATCH] Add missing ZLIBINC to CFLAGS-optinfo-emit-json.o

2018-11-13 Thread David Malcolm
On Tue, 2018-11-13 at 17:58 +, Kyrill Tkachov wrote: > Hi David, > > On 09/11/18 21:00, Jeff Law wrote: > > On 11/9/18 10:51 AM, David Malcolm wrote: > > > One of the concerns noted at Cauldron about -fsave-optimization- > > > record > > > was the size of the output files. > > > > > > This

Re: [PATCH 2/3] Add a pass to automatically add ptwrite instrumentation

2018-11-13 Thread Andi Kleen
On Tue, Nov 13, 2018 at 09:03:52AM +0100, Richard Biener wrote: > > I even had an earlier version of this that instrumented > > assembler output of the compiler with PTWRITE in a separate script, > > and it worked fine too. > > Apart from eventually messing up branch range restrictions I guess ;)

Re: [RS6000] Don't pass -many to the assembler

2018-11-13 Thread Iain Sandoe
Hi Folks, > On 13 Nov 2018, at 17:48, Peter Bergner wrote: > > On 11/13/18 5:17 AM, Segher Boessenkool wrote: >> On Tue, Nov 13, 2018 at 12:02:55PM +1030, Alan Modra wrote: >>> On Mon, Nov 12, 2018 at 04:34:34PM -0800, Mike Stump wrote: On Nov 12, 2018, at 3:13 PM, Alan Modra wrote:

RE: [PATCH 2/9][GCC][AArch64][middle-end] Add rules to strip away unneeded type casts in expressions

2018-11-13 Thread Joseph Myers
On Tue, 13 Nov 2018, Tamar Christina wrote: > Would restricting it to flag_unsafe_math_optimizations not be enough in > this case? Since if it's only done for unsafe math then you likely won't > care about a small loss in precision anyway? We have what should be the right logic (modulo DFP

Re: [PATCH] -fsave-optimization-record: compress the output using zlib

2018-11-13 Thread Kyrill Tkachov
Hi David, On 09/11/18 21:00, Jeff Law wrote: On 11/9/18 10:51 AM, David Malcolm wrote: > One of the concerns noted at Cauldron about -fsave-optimization-record > was the size of the output files. > > This file implements compression of the -fsave-optimization-record > output, using zlib. > > I

[PATCH][RFC] Come up with -flive-patching master option.

2018-11-13 Thread Qing Zhao
Hi, Attached is the patch for new -flive-patching=[inline-only-static | inline-clone] master option. '-flive-patching=LEVEL' Control GCC's optimizations to provide a safe compilation for live-patching. Provides multiple-level control on how many of the optimizations are enabled

Re: [RS6000] Don't pass -many to the assembler

2018-11-13 Thread Peter Bergner
On 11/13/18 5:17 AM, Segher Boessenkool wrote: > On Tue, Nov 13, 2018 at 12:02:55PM +1030, Alan Modra wrote: >> On Mon, Nov 12, 2018 at 04:34:34PM -0800, Mike Stump wrote: >>> On Nov 12, 2018, at 3:13 PM, Alan Modra wrote: >>> On darwin, we (darwin, as a platform decision) like all instructions

[PATCH][RS6000] Fix PR87870: ppc64 generates poor code when loading constants into TImode vars

2018-11-13 Thread Peter Bergner
PR87870 shows a problem loading simple constant values into TImode variables. This is a regression ever since VSX was added and we started using the vsx_mov_64bit pattern. We still get the correct code on trunk if we compile with -mno-vsx, since we fall back to using the older mov_ppc64 move

Re: record_ranges_from_incoming_edge: use value_range API for creating new range

2018-11-13 Thread Aldy Hernandez
With your cleanups, the main raison d'etre for my patch goes away, but here is the promised removal of ignore_equivs_equal_p. I think the == operator is a bit confusing, and equality intent should be clearly specified. I am providing the following for the derived class (with no hidden

RE: [PATCH 2/9][GCC][AArch64][middle-end] Add rules to strip away unneeded type casts in expressions

2018-11-13 Thread Tamar Christina
Hi Joseph, > What types exactly is this meant to apply to? Floating-point? Integer? > Mixtures of those? (I'm guessing not mixtures, because those would be > something other than "convert" here.) Originally I had it for both Floating-point and Integer, but not a mix of the two. > For

Re: [PR81878]: fix --disable-bootstrap --enable-languages=ada, and cross-back gnattools build

2018-11-13 Thread Richard Biener
On Tue, Nov 13, 2018 at 4:51 PM Alexandre Oliva wrote: > > On Nov 13, 2018, Richard Biener wrote: > > > Reworking gnattools build to always use host CC/CXX in "stage1" (or for > > crosses) > > rather than doing sth different. > > > Yeah, but gnattools is bootstrapped, right? > > No, it's not

Re: [PATCH][lower-subreg] Fix PR87507

2018-11-13 Thread Peter Bergner
On 11/13/18 2:53 AM, Eric Botcazou wrote: >> +static rtx >> +simple_move_operator (rtx x) >> +{ >> + /* A word sized rotate of a register pair is equivalent to swapping >> + the registers in the register pair. */ >> + if (GET_CODE (x) == ROTATE >> + && GET_MODE (x) == twice_word_mode

Re: [PATCH] Fix PR86991

2018-11-13 Thread Richard Biener
On Tue, 13 Nov 2018, Richard Biener wrote: > > This PR shows we have stale reduction groups lying around because > the fixup doesn't work reliably with reduction chains. Fixed by > delaying the build to after detection is successful. > > Bootstrap & regtest running on x86_64-unknown-linux-gnu.

Re: [PATCH][LRA] Fix PR87899: r264897 cause mis-compiled native arm-linux-gnueabihf toolchain

2018-11-13 Thread Peter Bergner
On 11/13/18 9:01 AM, Renlin Li wrote: > I could verify that, your patch fixes all the ICEs I saw with > arm-linux-gnueabihf toolchain! > There are some differences on the test results, because I compare the latest > results with something which is old. > > I haven't test it on bare-metal

Re: [PR81878]: fix --disable-bootstrap --enable-languages=ada, and cross-back gnattools build

2018-11-13 Thread Alexandre Oliva
On Nov 13, 2018, Richard Biener wrote: > Reworking gnattools build to always use host CC/CXX in "stage1" (or for > crosses) > rather than doing sth different. > Yeah, but gnattools is bootstrapped, right? No, it's not built in stage1, it's a post-bootstrap host subpackage. > For

Re: Bug 52869 - [DR 1207] "this" not being allowed in noexcept clauses

2018-11-13 Thread Marek Polacek
On Tue, Nov 13, 2018 at 11:49:55AM +0530, Umesh Kalappa wrote: > Hi All, > > the following patch fix the subjected issue > > Index: gcc/cp/parser.c > === > --- gcc/cp/parser.c (revision 266026) > +++ gcc/cp/parser.c (working

Re: [PATCH] Do not allow -mabi=ms and -fsanitize={,kernel-}address (PR sanitizer/87930).

2018-11-13 Thread Martin Liška
On 11/13/18 4:26 PM, Jakub Jelinek wrote: > On Tue, Nov 13, 2018 at 04:24:39PM +0100, Martin Liška wrote: >> 2018-11-13 Martin Liska >> >> * pr87930.c: Move from gcc/testsuite/gcc.target/i386/ >> into gcc/testsuite/gcc.dg/asan/. > > * gcc.target/i386/pr87930.c: Move to ... >

Re: [PATCH] Do not allow -mabi=ms and -fsanitize={,kernel-}address (PR sanitizer/87930).

2018-11-13 Thread Jakub Jelinek
On Tue, Nov 13, 2018 at 04:24:39PM +0100, Martin Liška wrote: > 2018-11-13 Martin Liska > > * pr87930.c: Move from gcc/testsuite/gcc.target/i386/ > into gcc/testsuite/gcc.dg/asan/. * gcc.target/i386/pr87930.c: Move to ... * gcc.dg/asan/pr87930.c: ... here. Guard

Re: [PATCH] Do not allow -mabi=ms and -fsanitize={,kernel-}address (PR sanitizer/87930).

2018-11-13 Thread Martin Liška
On 11/13/18 4:08 PM, Jakub Jelinek wrote: > On Tue, Nov 13, 2018 at 04:01:56PM +0100, Martin Liška wrote: >> On 11/12/18 1:07 PM, Jakub Jelinek wrote: >>> On Mon, Nov 12, 2018 at 01:03:41PM +0100, Martin Liška wrote: The patch reject usage of the mentioned options. Ready for trunk?

[PATCH] update-copyright.py: Add filters for D language sources

2018-11-13 Thread Iain Buclaw
Hi, This adds filters for upstream dmd, druntime, and phobos libraries, so that the update-copyright script doesn't complain or try to update the copyright years for those files. OK for trunk? -- Iain --- contrib/ChangeLog: 2018-11-13 Iain Buclaw * update-copyright.py

Re: [PATCH] Do not allow -mabi=ms and -fsanitize={,kernel-}address (PR sanitizer/87930).

2018-11-13 Thread Jakub Jelinek
On Tue, Nov 13, 2018 at 04:01:56PM +0100, Martin Liška wrote: > On 11/12/18 1:07 PM, Jakub Jelinek wrote: > > On Mon, Nov 12, 2018 at 01:03:41PM +0100, Martin Liška wrote: > >> The patch reject usage of the mentioned options. > >> > >> Ready for trunk? > >> Thanks, > >> Martin > >> > >>

Re: cleanups and unification of value_range dumping code

2018-11-13 Thread Richard Biener
On Tue, Nov 13, 2018 at 3:43 PM Aldy Hernandez wrote: > > > > On 11/13/18 3:12 AM, Richard Biener wrote: > > On Mon, Nov 12, 2018 at 10:50 AM Aldy Hernandez wrote: > >> > >> I have rebased my value_range dumping patch after your value_range_base > >> changes. > >> > >> I know you are not a fan

Re: [PATCH PR84648]Adjust loop exit conditions for loop-until-wrap cases.

2018-11-13 Thread Richard Biener
On Sun, Nov 11, 2018 at 9:02 AM bin.cheng wrote: > > Hi, > This patch fixes PR84648 by adjusting exit conditions for loop-until-wrap > cases. > It only handles simple cases in which IV.base are constants because we rely on > current niter analyzer which doesn't handle parameterized bound in

Re: [PATCH] Do not allow -mabi=ms and -fsanitize={,kernel-}address (PR sanitizer/87930).

2018-11-13 Thread Martin Liška
On 11/12/18 1:07 PM, Jakub Jelinek wrote: > On Mon, Nov 12, 2018 at 01:03:41PM +0100, Martin Liška wrote: >> The patch reject usage of the mentioned options. >> >> Ready for trunk? >> Thanks, >> Martin >> >> gcc/ChangeLog: >> >> 2018-11-12 Martin Liska >> >> PR sanitizer/87930 >> *

Re: [PATCH][LRA] Fix PR87899: r264897 cause mis-compiled native arm-linux-gnueabihf toolchain

2018-11-13 Thread Renlin Li
Hi Peter, I could verify that, your patch fixes all the ICEs I saw with arm-linux-gnueabihf toolchain! There are some differences on the test results, because I compare the latest results with something which is old. I haven't test it on bare-metal toolchain yet. But will do to ensure all

Re: [PATCH] [ARC] Cleanup, fix and set LRA default.

2018-11-13 Thread Andrew Burgess
* Claudiu Zissulescu [2018-11-12 13:29:33 +0200]: > From: claziss > > Hi Andrew, > > This is a patch which fixes and sets LRA by default. > > OK to apply? > Claudiu > > Commit message > > LP_COUNT register cannot be freely allocated by the compiler as it > size, and/or content

Re: [PATCH, GCC, AARCH64, 6/6] Enable BTI: Add configure option for BTI and PAC-RET

2018-11-13 Thread Sudakshina Das
Hi James On 07/11/18 15:36, James Greenhalgh wrote: > On Fri, Nov 02, 2018 at 01:38:46PM -0500, Sudakshina Das wrote: >> Hi >> >> This patch is part of a series that enables ARMv8.5-A in GCC and >> adds Branch Target Identification Mechanism. >>

Re: [PATCH, GCC, AARCH64, 5/6] Enable BTI : Add new pass for BTI.

2018-11-13 Thread Sudakshina Das
Hi On 02/11/18 18:38, Sudakshina Das wrote: > Hi > > This patch is part of a series that enables ARMv8.5-A in GCC and > adds Branch Target Identification Mechanism. > (https://developer.arm.com/products/architecture/cpu-architecture/a-profile/exploration-tools) > > This patch adds a new pass

Re: [PATCH, GCC, AARCH64, 1/6] Enable ARMv8.5-A in gcc

2018-11-13 Thread Sudakshina Das
Hi James On 07/11/18 15:16, James Greenhalgh wrote: > On Fri, Nov 02, 2018 at 01:37:33PM -0500, Sudakshina Das wrote: >> Hi >> >> This patch is part of a series that enables ARMv8.5-A in GCC and >> adds Branch Target Identification Mechanism. >>

Re: [PATCH] RFC: machine-readable diagnostic output (PR other/19165)

2018-11-13 Thread Richard Biener
On Tue, Nov 13, 2018 at 8:58 AM David Malcolm wrote: > > This patch implements a -fdiagnostics-format=json option which > converts the diagnostics to be output to stderr in a JSON format; > see the documentation in invoke.texi. > > Logically-related diagnostics are nested at the JSON level, using

Re: [PATCH] Improve -fprofile-report.

2018-11-13 Thread Richard Biener
On Tue, Nov 6, 2018 at 3:05 PM Martin Liška wrote: > > Hi. > > The patch is based on what was discussed on IRC and in the PR. > Apart from that the reported layout is improved. > > Patch survives regression tests on x86_64-linux-gnu. > > Ready for trunk? OK. Thanks, Richard. > Martin > >

Re: cleanups and unification of value_range dumping code

2018-11-13 Thread Aldy Hernandez
On 11/13/18 3:12 AM, Richard Biener wrote: On Mon, Nov 12, 2018 at 10:50 AM Aldy Hernandez wrote: I have rebased my value_range dumping patch after your value_range_base changes. I know you are not a fan of the gimple-pretty-print.c chunk, but I still think having one set of dumping code

Re: [PR81878]: fix --disable-bootstrap --enable-languages=ada, and cross-back gnattools build

2018-11-13 Thread Richard Biener
On Tue, Nov 13, 2018 at 2:10 PM Alexandre Oliva wrote: > > On Nov 13, 2018, Richard Biener wrote: > > >> Please let me know if there are objections to this change in the next > >> few days, e.g., if enabling C and C++ for an Ada-only build is too > >> onerous. It is certainly possible to rework

Re: [PATCH][cunroll] Add unroll-known-loop-iterations-only param and use it in aarch64

2018-11-13 Thread Richard Biener
On Tue, Nov 13, 2018 at 10:48 AM Kyrill Tkachov wrote: > > > On 13/11/18 09:28, Richard Biener wrote: > > On Tue, Nov 13, 2018 at 10:15 AM Kyrill Tkachov > > wrote: > >> Hi Richard, > >> > >> On 13/11/18 08:24, Richard Biener wrote: > >>> On Mon, Nov 12, 2018 at 7:20 PM Kyrill Tkachov > >>>

Re: [PATCH] More value_range API cleanup

2018-11-13 Thread Aldy Hernandez
On 11/13/18 8:58 AM, Richard Biener wrote: On Tue, 13 Nov 2018, Aldy Hernandez wrote: On 11/13/18 3:07 AM, Richard Biener wrote: On Tue, 13 Nov 2018, Aldy Hernandez wrote: The tricky part starts in the prologue for if (vr0->undefined_p ()) { vr0->deep_copy (vr1);

Re: RFC (branch prediction): PATCH to implement P0479R5, [[likely]] and [[unlikely]].

2018-11-13 Thread Martin Liška
On 11/13/18 5:43 AM, Jason Merrill wrote: > [[likely]] and [[unlikely]] are equivalent to the GNU hot/cold attributes, > except that they can be applied to arbitrary statements as well as labels; > this is most likely to be useful for marking if/else branches as likely or > unlikely.

PING^2: [PATCH] apply_subst_iterator: Handle define_split/define_insn_and_split

2018-11-13 Thread H.J. Lu
On Sun, Nov 4, 2018 at 7:24 AM H.J. Lu wrote: > > On Fri, Oct 26, 2018 at 12:44 AM H.J. Lu wrote: > > > > On 10/25/18, Uros Bizjak wrote: > > > On Fri, Oct 26, 2018 at 8:48 AM H.J. Lu wrote: > > >> > > >> On 10/25/18, Uros Bizjak wrote: > > >> > On Fri, Oct 26, 2018 at 8:07 AM H.J. Lu wrote:

Re: [PATCH] Fix aarch64_compare_and_swap* constraints (PR target/87839)

2018-11-13 Thread Kyrill Tkachov
Hi Jakub, On 13/11/18 09:28, Jakub Jelinek wrote: Hi! The following testcase ICEs because the predicate and constraints on one of the operands of @aarch64_compare_and_swapdi aren't consistent. The RA which goes according to constraints (insn 15 13 16 2 (set (reg:DI 104) (const_int

Re: [PATCH] More value_range API cleanup

2018-11-13 Thread Richard Biener
On Tue, 13 Nov 2018, Aldy Hernandez wrote: > On 11/13/18 3:07 AM, Richard Biener wrote: > > On Tue, 13 Nov 2018, Aldy Hernandez wrote: > > > > > > > > > > The tricky part starts in the prologue for > > > > > > > > > > if (vr0->undefined_p ()) > > > > > { > > > > >

[PATCH] Fix PR86991

2018-11-13 Thread Richard Biener
This PR shows we have stale reduction groups lying around because the fixup doesn't work reliably with reduction chains. Fixed by delaying the build to after detection is successful. Bootstrap & regtest running on x86_64-unknown-linux-gnu. Richard. 2018-11-13 Richard Biener PR

[PATCH][libbacktrace] Handle DW_FORM_GNU_strp_alt

2018-11-13 Thread Tom de Vries
Hi, The dwz tool attempts to optimize DWARF debugging information contained in ELF shared libraries and ELF executables for size. With the dwz -m option, it attempts to optimize by moving DWARF debugging information entries (DIEs), strings and macro descriptions duplicated in more than one

Re: [PATCH] More value_range API cleanup

2018-11-13 Thread Aldy Hernandez
On 11/13/18 3:07 AM, Richard Biener wrote: On Tue, 13 Nov 2018, Aldy Hernandez wrote: The tricky part starts in the prologue for if (vr0->undefined_p ()) { vr0->deep_copy (vr1); return; } but yes, we probably can factor out a bit more common code here. I'll

Re: [PR81878]: fix --disable-bootstrap --enable-languages=ada, and cross-back gnattools build

2018-11-13 Thread Alexandre Oliva
On Nov 13, 2018, Richard Biener wrote: >> Please let me know if there are objections to this change in the next >> few days, e.g., if enabling C and C++ for an Ada-only build is too >> onerous. It is certainly possible to rework gnattools build machinery >> so that it uses CC and CXX as

[PATCH] Fix PR87974

2018-11-13 Thread Richard Biener
Do not look at constant or external defs in reduction stmts to determine the reduction PHI vector type. Those are promoted/demoted as required. This is another fragile area, I'll poke around a bit but nevertheless, bootstrap & regtest queued. Richard. 2018-11-13 Richard Biener PR

[PATCH] Fix PR87931

2018-11-13 Thread Richard Biener
We need to restrict what we handle as last operation in a nested cycle because vectorizable_reduction performs the code-generation in the end. Boostrap and regtest in progress on x86_64-unknown-linux-gnu. Richard. 2018-11-13 Richard Biener PR tree-optimization/87931 *

[PATCH] Fix PR87967

2018-11-13 Thread Richard Biener
A simple omission... Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2018-11-13 Richard Biener PR tree-optimization/87967 * tree-vect-loop.c (vect_transform_loop): Also copy PHIs for constants for the scalar loop. *

[PATCH] Fix PR87962

2018-11-13 Thread Richard Biener
The following better detects invalid nested cycles in particular those part of an outer reduction. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2018-11-13 Richard Biener PR tree-optimization/87962 * tree-vect-loop.c (vect_is_simple_reduction):

RE: [PATCH 0/3] [ARC] Glibc required patches

2018-11-13 Thread Claudiu Zissulescu
Thank you for quick review. All the patches are pushed with the suggested mods. Claudiu From: Claudiu Zissulescu [claz...@gmail.com] Sent: Monday, November 12, 2018 12:25 PM To: gcc-patches@gcc.gnu.org Cc: francois.bed...@synopsys.com;

[PATCH 6/6] [RS6000] inline plt call sequences

2018-11-13 Thread Alan Modra
Version 2. Finally, the point of the previous patches in this series, support for inline PLT calls, keyed off -fno-plt. This emits code using new relocations that tie all insns in the sequence together, so that the linker can edit the sequence back to a direct call should the call target turn

[PATCH 5/6] [RS6000] Use standard call patterns for __tls_get_addr calls

2018-11-13 Thread Alan Modra
Version 2. The current code handling __tls_get_addr calls for powerpc*-linux generates a call then overwrites the call insn with a special tls_{gd,ld}_{aix,sysv} pattern. It's done that way to support !TARGET_TLS_MARKERS, where the arg setup insns need to be emitted immediately before the branch

[PATCH 4/6] [RS6000] Remove constraints on call rounded_stack_size_rtx arg

2018-11-13 Thread Alan Modra
Version 2. (Same as before, here for completeness.) This call arg is unused on rs6000. * config/rs6000/darwin.md (call_indirect_nonlocal_darwin64), (call_nonlocal_darwin64, call_value_indirect_nonlocal_darwin64), (call_value_nonlocal_darwin64): Remove constraints from

[PATCH 3/6] [RS6000] Replace TLSmode with P, and correct tls call mems

2018-11-13 Thread Alan Modra
Version 2. There is really no need to define a TLSmode mode iterator that is identical (since !TARGET_64BIT == TARGET_32BIT) to the much used P mode iterator. It's nonsense to think we might ever want to support 32-bit TLS on 64-bit or vice versa! The patch also fixes a minor error in the call

[PATCH 2/6] [RS6000] rs6000_indirect_call_template

2018-11-13 Thread Alan Modra
Version 2. Like the last patch for external calls, now handle most assembly code for indirect calls in one place. The patch also merges some insns, correcting some !rs6000_speculate_indirect_jumps cases branching to LR, which don't require a speculation barrier. *

[PATCH 1/6] [RS6000] rs6000_call_template for external call insn assembly output

2018-11-13 Thread Alan Modra
Version 2. This is a first step in tidying rs6000 call patterns, in preparation to support inline plt calls. * config/rs6000/rs6000-protos.h (rs6000_call_template): Declare. (rs6000_sibcall_template): Declare. (macho_call_template): Rename from output_call. *

Re: [RS6000] Remove unnecessary rtx_equal_p

2018-11-13 Thread Segher Boessenkool
On Tue, Nov 13, 2018 at 02:16:09PM +1030, Alan Modra wrote: > REGs are unique. This patch recognizes that fact, speeding up rs6000 > gcc infinitesimally. Bootstrapped etc. powerpc64le-linux. OK? Of course, fine for trunk. Thanks! Segher > * gcc/config/rs6000/rs6000.c

Re: [RS6000] Don't put large integer constants in TOC for -mcmodel=medium

2018-11-13 Thread Segher Boessenkool
On Tue, Nov 13, 2018 at 01:53:20PM +1030, Alan Modra wrote: > For -mcmodel=medium we can use toc-relative addressing to access > constants placed in read-only data, which is better since they can be > merged when in .rodata.cst8. > > Bootstrapped etc. powerpc64le-linux. OK? Okay, thanks!

Re: [RS6000] Don't pass -many to the assembler

2018-11-13 Thread Segher Boessenkool
On Tue, Nov 13, 2018 at 12:02:55PM +1030, Alan Modra wrote: > On Mon, Nov 12, 2018 at 04:34:34PM -0800, Mike Stump wrote: > > On Nov 12, 2018, at 3:13 PM, Alan Modra wrote: > > > > > > For people developing new code, it's the right way to go, and > > > especially so for people working on gcc

  1   2   >