Re: [PATCH 01/13] recog: Increased max number of alternatives - v2

2015-05-22 Thread Andreas Krebbel
On Tue, May 19, 2015 at 10:40:26AM +0200, Andreas Krebbel wrote: On 05/18/2015 04:19 PM, Richard Biener wrote: Please use uint64_t instead. Done. Ok with that change? I've applied the following patch. Bye, -Andreas- gcc/ * recog.h: Increase MAX_RECOG_ALTERNATIVES. Change

Re: Calculate TYPE_CANONICAL only for types that can be accessed in memory

2015-05-22 Thread Richard Biener
On Thu, 21 May 2015, Jan Hubicka wrote: Hi, this is next part of the series. It disables canonical type calculation for incomplete types with exception of arrays based on claim that we do not have good notion of those. I can botostrap this with additional checks in alias.c that canonical

Re: [C++ Patch] PR 61683

2015-05-22 Thread Paolo Carlini
Hi, On 04/30/2015 01:56 AM, Paolo Carlini wrote: Hi, this seems pretty straightforward given the grammar. Tested x86_64-linux. ... again, given the grammar, I think this is even obvious: if nobody screams, I'm going to commit the patch in a day or so (but I'm naming the testcase

Re: Cleanup and improve canonical type construction in LTO

2015-05-22 Thread Richard Biener
On Thu, 21 May 2015, Jan Hubicka wrote: On Wed, 20 May 2015, Jan Hubicka wrote: Code quality does not seem to be affected too much, which I suppose is partly thanks to that tree-ssa-alias.c pointer hack. My main point was to cleanup the hack about comparing only TYPE_CODE of

Re: [PATCH 1/3][AArch64][PR target/65697] Strengthen barriers for sync-fetch-op builtins.

2015-05-22 Thread Matthew Wahab
[Added PR number and updated patches] On Aarch64, the __sync builtins are implemented using the __atomic operations and barriers. This makes the the __sync builtins inconsistent with their documentation which requires stronger barriers than those for the __atomic builtins. The difference

RE: [Patch] [AArch64] PR target 66049: fix add/extend gcc test suite failures

2015-05-22 Thread Kumar, Venkataramanan
Hi Kyrill, Sorry for little delay in responding. -Original Message- From: Kyrill Tkachov [mailto:kyrylo.tkac...@foss.arm.com] Sent: Tuesday, May 19, 2015 9:13 PM To: Kumar, Venkataramanan; James Greenhalgh; gcc-patches@gcc.gnu.org Cc: Ramana Radhakrishnan;

Re: [PATCH] Fix PR65701(?), fix typo in vect_enhance_data_refs_alignment

2015-05-22 Thread Richard Biener
On Fri, 10 Apr 2015, Richard Biener wrote: On Fri, 10 Apr 2015, Richard Biener wrote: The following patch fixes a typo (I think) which is present since the original introduction of the code in vect_enhance_data_refs_alignment. if (do_peeling all_misalignments_unknown

Re: [patch 1/10] debug-early merge: Ada front-end

2015-05-22 Thread Eric Botcazou
My apologies for the delay on Ada. I have reworked the patch to leave the first pass on the TYPE_DECLs which are definitely needed. I also optimized things a bit, since we don't need to save all the globals any more. Thanks, this looks fine modulo a couple of nits, see below. There is one

Re: [PATCH 3/3][Aarch64][PR target/65697] Add tests for __sync_builtins.

2015-05-22 Thread Matthew Wahab
[Added PR number and updated patches] This patch adds tests for the code generated by the Aarch64 backend for the __sync builtins. Tested aarch64-none-linux-gnu with check-gcc. Ok for trunk? Matthew gcc/testsuite/ 2015-05-21 Matthew Wahab matthew.wa...@arm.com PR target/65697

Re: C/C++ PATCH to allow deprecating enum values (PR c/47043)

2015-05-22 Thread Marek Polacek
On Thu, May 21, 2015 at 02:00:26PM -0400, Jason Merrill wrote: On 05/07/2015 12:22 PM, Marek Polacek wrote: - mark_used (decl); + mark_used (decl, 0); This should use tf_none rather than 0. Fixed. + build_enumerator (DECL_NAME (decl), value, newtag, +

Re: [PATCH 02/13] optabs: Fix vec_perm - V16QI middle end lowering.

2015-05-22 Thread Andreas Krebbel
On Tue, May 19, 2015 at 07:48:29AM -0700, Richard Henderson wrote: Ok to apply with that change? Yes, thanks. I've applied the following. Bye, -Andreas- gcc/ * optabs.c (expand_vec_perm): Don't re-use SEL as target operand. --- gcc/optabs.c |4 ++-- 1 file changed, 2

Re: Check canonical types in verify_type

2015-05-22 Thread Richard Biener
On Thu, 21 May 2015, Jan Hubicka wrote: Hmm, I see, interesting hack. For the first part of comment, I see that qualifiers needs to be ignored, but I do not see why we put short * and int * pointers to same class. For the reason that people are very lazy. For example GCC has code

[PATCH] Combine related fail of gcc.target/powerpc/ti_math1.c

2015-05-22 Thread Alan Modra
This patch fixes FAIL: gcc.target/powerpc/ti_math1.c scan-assembler-times adde 1 a failure caused by combine simplifying this i2src (plus:DI (plus:DI (reg:DI 165 [ val+8 ]) (reg:DI 169 [+8 ])) (reg:DI 76 ca)) to this (plus:DI (plus:DI (reg:DI 76 ca) (reg:DI 165 [ val+8 ]))

[PATCH][RFA] PR rtl-optimization/66237

2015-05-22 Thread Mikhail Maltsev
This patch fixes a bug introduced by refactoring. A cast from rtx_insn to rtx_jump_insn in fix_crossing_conditional_branches was placed before the check, and that caused ICE if the instruction is actually a call, rather than a jump. Bootstrapped/regtested on x86_64 linux and tested the regressed

Re: [PATCH 2/3][AArch64][PR target/65697] Strengthen barriers for sync-compare-swap builtins.

2015-05-22 Thread Matthew Wahab
[Added PR number and updated patches] This patch changes the code generated for __sync_type_compare_and_swap to ldxr reg; cmp; bne label; stlxr; cbnz; label: dmb ish; mov .., reg This removes the acquire-barrier from the load and ends the operation with a fence to prevent memory references

Re: [patch 10/10] debug-early merge: compiler proper

2015-05-22 Thread Eric Botcazou
FWIW, Ada is filled with these temporaries and/or types that should really be ignored, and are currently causing grief. It's a little hard to believe that types created in a front-end should be marked ignored. Either they are used by some objects and thus can be needed in the debug info, or

[Ada] Correct some anmolies in the handling of Atomic

2015-05-22 Thread Arnaud Charlet
This update corrects two problems in the handling of Atomic. First we do not need Atomic_Synchronization for an object renaming declaration. Second, when we do have a renaming of an atomic object, the renaming object should be marked as atomic. Compiling this test: 1. package Renamed_Atomic

Re: [RFC][PATCH][X86_64] Eliminate PLT stubs for specified external functions via -fno-plt=

2015-05-22 Thread Pedro Alves
On 05/21/2015 11:02 PM, Sriraman Tallam wrote: On Thu, May 21, 2015 at 2:51 PM, Pedro Alves pal...@redhat.com wrote: On 05/21/2015 10:12 PM, Sriraman Tallam wrote: My original proposal, for x86_64 only, was to add -fno-plt=function-name. This lets the user decide for which functions PLT must

Re: [Patch] [AArch64] PR target 66049: fix add/extend gcc test suite failures

2015-05-22 Thread Kyrill Tkachov
Hi Venkat, On 22/05/15 09:50, Kumar, Venkataramanan wrote: Hi Kyrill, Sorry for little delay in responding. -Original Message- From: Kyrill Tkachov [mailto:kyrylo.tkac...@foss.arm.com] Sent: Tuesday, May 19, 2015 9:13 PM To: Kumar, Venkataramanan; James Greenhalgh;

Re: [5/9] Create sensible dummy registers

2015-05-22 Thread Jeff Law
On 05/22/2015 09:39 AM, Richard Sandiford wrote: Eric Botcazou ebotca...@adacore.com writes: Some pieces of code create a temporary REG or MEM and only fill it in later when they're testing the cost of a particular rtx. This patch makes sure that even the dummy REG or MEM is valid, rather than

Re: [PATCH][RFA] PR rtl-optimization/66237

2015-05-22 Thread Jeff Law
On 05/22/2015 02:27 AM, Mikhail Maltsev wrote: This patch fixes a bug introduced by refactoring. A cast from rtx_insn to rtx_jump_insn in fix_crossing_conditional_branches was placed before the check, and that caused ICE if the instruction is actually a call, rather than a jump.

Final patch to cleanup hppa port's handling of shadd/scaled indexed addressing modes

2015-05-22 Thread Jeff Law
This is the final patch to the PA backend to cleanup its handling of shadd insns and scaled indexed addressing modes. First, it removes the old non-canonical shadd insns. Second, it removes some non-canonical peephole patterns. No idea what I was thinking when I wrote them. Given they're

Re: [PATCH] Fix PR66168: ICE due to incorrect invariant register info

2015-05-22 Thread Jeff Law
On 05/20/2015 08:04 PM, Thomas Preud'homme wrote: From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- ow...@gcc.gnu.org] On Behalf Of Thomas Preud'homme From: Steven Bosscher [mailto:stevenb@gmail.com] Sent: Tuesday, May 19, 2015 7:21 PM Not OK. This will break in move_invariants()

Re: [patch] testsuite enable PIE tests on FreeBSD

2015-05-22 Thread Jeff Law
On 05/21/2015 02:01 PM, Andreas Tobler wrote: On 21.05.15 20:14, Andreas Tobler wrote: On 20.05.15 22:30, Jeff Law wrote: On 05/20/2015 11:04 AM, Andreas Tobler wrote: Hi, the attached patch enables some PIE tests on FreeBSD. Ok for trunk? Thanks, Andreas 2015-05-20 Andreas Tobler

Re: [gofrontend-dev] Re: GO tools for gccgo cross

2015-05-22 Thread Ian Lance Taylor
On Fri, May 22, 2015 at 2:01 PM, Andrew Chambers andrewchambe...@gmail.com wrote: For example, I've tested on an x86, built cross compilers for ppc64 and ppc64le and then can invoke the native go tool (built to run on x86) to compile with either target compiler by changing my GOARCH value. I

Re: [PATCH/libiberty] fix build of gdb/binutils with clang.

2015-05-22 Thread Ian Lance Taylor
On Wed, May 20, 2015 at 3:58 PM, Yunlian Jiang yunl...@google.com wrote: GCC bootstraps with this patch. Committed as follows. Ian include/: 2015-05-22 Yunlian Jiang yunl...@google.com * libiberty.h (asprintf): Don't declare if HAVE_DECL_ASPRINTF is not defined. libiberty/: 2015-05-22

Re: match.pd: (x | y) ~x - y ~x

2015-05-22 Thread Marc Glisse
On Mon, 18 May 2015, Richard Biener wrote: On Fri, May 15, 2015 at 7:22 PM, Marc Glisse marc.gli...@inria.fr wrote: we already have the more complicated: x ~(x y) - x ~y (which I am reindenting by the way) and the simpler: (~x | y) x - x y, so I am proposing this one for completeness.

Re: Reuse predicate code analysis for constraints

2015-05-22 Thread Jeff Law
On 05/22/2015 09:42 AM, Richard Sandiford wrote: This patch adjusts the fix for PR target/65689 along the lines suggested in https://gcc.gnu.org/ml/gcc-patches/2015-04/msg01559.html. The idea is to reuse the existing gensupport.c routine to work out the codes accepted by constraints. I'd

Fix pa.md splitters for recent combine changes

2015-05-22 Thread Jeff Law
These should have gone in with the first patch in the series. Thankfully the splitters aren't terribly important anymore and thus having them goof'd up for a couple days hasn't been a problem. In fact, much like the hppa_legitimize_address code to handle shift-add/scaled addressing modes,

[PATCH], Add IEEE 128-bit floating point to PowerPC, patch #1

2015-05-22 Thread Michael Meissner
This patch is the first in a series of patches that will eventually add support for IEEE 128-bit floating point support to the PowerPC GCC compiler. At the current time, we do not plan to change the default for long double. I added a new type keyword (__float128) to get access to IEEE 128-bit

Re: C/C++ PATCH to allow deprecating enum values (PR c/47043)

2015-05-22 Thread Mikhail Maltsev
On 22.05.2015 12:10, Marek Polacek wrote: Thanks, applied. Here's the final version. By the way, we have a feature test macro, __cpp_attributes=200809 which can be used to determine, whether C++11 attribute syntax is supported by the compiler. I propose to add something similar for this

Re: [RFA] Fix combine to canonicalize (mult X pow2)) more often

2015-05-22 Thread Jeff Law
On 05/22/2015 09:45 AM, Segher Boessenkool wrote: On Thu, May 21, 2015 at 09:24:37AM -0600, Jeff Law wrote: When combine needs to split a complex insn, it will canonicalize a simple (mult X (const_int Y)) where Y is a power of 2 into the expected (ashift X (const_int Y')) if the (mult ...) is

RE: [PATCH] Print Pass Names

2015-05-22 Thread Aditya K
Subject: Re: [PATCH] Print Pass Names From: richard.guent...@gmail.com Date: Fri, 22 May 2015 21:32:24 +0200 To: hiradi...@msn.com; gcc-patches@gcc.gnu.org On May 22, 2015 6:32:38 PM GMT+02:00, Aditya K hiradi...@msn.com wrote: Currently, when we

Re: [PATCH] Print Pass Names

2015-05-22 Thread Jeff Law
On 05/22/2015 02:38 PM, Aditya K wrote: Subject: Re: [PATCH] Print Pass Names From: richard.guent...@gmail.com Date: Fri, 22 May 2015 21:32:24 +0200 To: hiradi...@msn.com; gcc-patches@gcc.gnu.org On May 22, 2015 6:32:38 PM GMT+02:00, Aditya K

Re: [Patch libstdc++] Rewrite cpu/generic/atomic_word.h

2015-05-22 Thread David Edelsohn
I bootstrapped this on powerpc-ibm-aix7.1.0.0 and my colleagues bootstrapped this on powerpc64-linux and powerpc64le-linux. It works and produces reasonable instruction sequences. We can iterate on the syntax, but the core concept seems to work correctly. Thanks, David

Re: [Patch]: libbacktrace - add support of PE/COFF

2015-05-22 Thread Ian Lance Taylor
On Thu, May 21, 2015 at 5:41 AM, Tristan Gingold ging...@adacore.com wrote: 2015-05-21 Tristan Gingold ging...@adacore.com * pecoff.c: New file. * Makefile.am (FORMAT_FILES): Add pecoff.c and dependencies. * Makefile.in: Regenerate. * filetype.awk: Detect

[PATCH, AARCH64] make stdarg functions work with +nofp

2015-05-22 Thread Jim Wilson
The compiler currently ICEs when compiling a stdarg function with +nofp, as reported in PR 66258. The aarch64.md file disables FP instructions using TARGET_FLOAT, which supports both -mgeneral-regs-only and +nofp. But there is code in aarch64.c that checks TARGET_GENERAL_REGS_ONLY. This results

Re: Fix two more memory leaks in threader

2015-05-22 Thread Jeff Law
On 05/20/2015 10:41 AM, Jakub Jelinek wrote: On Wed, May 20, 2015 at 10:36:25AM -0600, Jeff Law wrote: These fix the remaining leaks in the threader that I'm aware of. We failed to properly clean-up when we had to cancel certain jump threading opportunities. So thankfully this wasn't a big

Re: [gofrontend-dev] Re: GO tools for gccgo cross

2015-05-22 Thread Ian Lance Taylor
On Fri, May 22, 2015 at 3:11 PM, Andrew Chambers andrewchambe...@gmail.com wrote: I'm not suggesting breaking go conventions, I just think the default if no GOARCH is specified then it should match --target. Sounds good to me. Perhaps we could check the symlink name for the target triple if

Re: PR fortran/44054 Convert all gfc_error_1 calls to gfc_error

2015-05-22 Thread Manuel López-Ibáñez
PING: https://gcc.gnu.org/ml/gcc-patches/2015-05/msg01511.html This only needs approval from Fortran maintainers. On 17 May 2015 at 20:22, Manuel López-Ibáñez lopeziba...@gmail.com wrote: Hi, This patch finishes the conversion of Fortran diagnostics to use the common diagnostics by removing

Re: [PATCH GCC]Improve how we handle overflow for type conversion in scev/ivopts, part I

2015-05-22 Thread Richard Biener
On Wed, May 20, 2015 at 11:41 AM, Bin Cheng bin.ch...@arm.com wrote: Hi, As we know, GCC is too conservative when checking overflow behavior in SCEV and loop related optimizers. Result is some variable can't be recognized as scalar evolution and thus optimizations are missed. To be specific,

Re: ODR merging and implicit typedefs

2015-05-22 Thread Eric Botcazou
I will take a look if I can improve type_in_anonymous_namepsace somehow. So Ada produces TYPE_DECL with DECL_ABSTRACT that do have TYPE_STUB_DECL with TREE_PUBLIC NULL I suppose. Do you mean DECL_ARTIFICIAL instead of DECL_ABSTRACT? If so, presumably, yes, why wouldn't it do that? That

Re: Don't dump low gimple functions in gimple dump

2015-05-22 Thread Richard Biener
On Thu, May 21, 2015 at 5:36 PM, Thomas Schwinge tho...@codesourcery.com wrote: Hi! It's just been a year. ;-P In early March, I (hopefully correctly) adapted Tom's patch to apply to then-current GCC trunk sources; posting this here. Is the general approach OK? On Tue, 20 May 2014

[committed] Fix warnings in extend.texi

2015-05-22 Thread Marek Polacek
This is to fix two warning: `.' or `,' must follow @xref, not ) occurences. Applying to trunk. 2015-05-22 Marek Polacek pola...@redhat.com * doc/extend.texi: Use @pxref instead of @xref. diff --git gcc/doc/extend.texi gcc/doc/extend.texi index 5539199..6c51bc4 100644 ---

Ping: [Patch, fortran, PR44672, v6] [F08] ALLOCATE with SOURCE and no array-spec

2015-05-22 Thread Andre Vehreschild
Hi, the patch (65548) this one depends on is in trunk now. Still bootstraps ok and regtests with the issue in gfortran.dg/alloc_comp_constructor_1.f90 (which is addressed by the patch for pr58586 already) on x86_64-linux-gnu/f21. Ok for trunk? - Andre On Tue, 19 May 2015 12:26:02 +0200 Andre

[Ada] Constants without variable input are not hidden state

2015-05-22 Thread Arnaud Charlet
This patch implements the following rule with respect to constants: SPARK RM 7.1.1(2) - The hidden state of a package P consists of: * any variables, or constants with variable inputs, declared immediately in the private part or body of P. Constants without variable input are not

Re: Calculate TYPE_CANONICAL only for types that can be accessed in memory

2015-05-22 Thread Jan Hubicka
Now we have it spelled out 4 times ... makes sense to create a new macro for it? (though I cannot think of a good name... UNACCESSIBLE_TYPE_P ()?) Yep, actually I already made that version of patch yesterday but then got hooked by beers. This is better version (also with more sensible

[RFC / CFT] PR c++/66192 - Remove TARGET_RELAXED_ORDERING and use load acquires.

2015-05-22 Thread Ramana Radhakrishnan
All, This patch removes the special casing for targets with relaxed memory ordering and handles guard accesses with equivalent atomic load acquire operations. In this process we change the algorithm to load the guard variable with an atomic load that has ACQUIRE semantics. I'm not terribly

[PATCH] PR other/66250: Can't adjust complex nor decimal floating point modes

2015-05-22 Thread H.J. Lu
machmode.def has /* Allow the target to specify additional modes of various kinds. */ /* Complex modes. */ COMPLEX_MODES (INT); COMPLEX_MODES (FLOAT); /* Decimal floating point modes. */ DECIMAL_FLOAT_MODE (SD, 4, decimal_single_format); DECIMAL_FLOAT_MODE (DD, 8, decimal_double_format);

[Ada] Removal of SPARK RM 6.9 (11)

2015-05-22 Thread Arnaud Charlet
This patch removes the (incorrect) implementation of the following rule: SPARK RM 6.9 (11) - A non-ghost library unit package or generic package specification shall not require a completion solely because of ghost declarations. [In other words, if a library unit package or generic

Re: [patch 10/10] debug-early merge: compiler proper

2015-05-22 Thread Richard Biener
On Wed, May 20, 2015 at 5:50 PM, Aldy Hernandez al...@redhat.com wrote: On 05/18/2015 06:56 AM, Richard Biener wrote: BTW, thanks for the review. On Fri, May 8, 2015 at 2:40 AM, Aldy Hernandez al...@redhat.com wrote: As seen on TV. +/* FIRST_TIME is set to TRUE for the first time we are

Re: Calculate TYPE_CANONICAL only for types that can be accessed in memory

2015-05-22 Thread Jan Hubicka
+ /* No need for canonical types of functions and methods; those are never + accessed as memory locations. */ + if (TREE_CODE (t) == FUNCTION_TYPE || TREE_CODE (t) == METHOD_TYPE) +return; Just occured to me that it might make sense to remove the FUNCTION/METHOD_TYPE case in

Re: [RFC / CFT] PR c++/66192 - Remove TARGET_RELAXED_ORDERING and use load acquires.

2015-05-22 Thread Ramana Radhakrishnan
Bah ! now with patch attached. Ramana diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c index 1ba99d0..857c9ac 100644 --- a/gcc/config/alpha/alpha.c +++ b/gcc/config/alpha/alpha.c @@ -9987,12 +9987,6 @@ alpha_atomic_assign_expand_fenv (tree *hold, tree *clear, tree *update)

[Ada] Constants and hidden state

2015-05-22 Thread Arnaud Charlet
This patch modifies the treatment of constants within the state space of a package. Constants that appear in the hidden state space may or may not act as constituents or possess indicator Part_Of. This is because the compiler cannot accurately determine whether a constant has variable input which

[Ada] Cannot rename component of Volatile_Full_Access object

2015-05-22 Thread Arnaud Charlet
It is not allowed to rename a component of a composite object to which pragma Volatile_Full_Access has been applied. The following is compiled with -gnatj55 1. package RenamVFA is 2.type Int8_t is mod 2**8; 3.type Rec is record 4. A,B,C,D : Int8_t; 5.end

[Ada] Raise Program_Error on default initialization of references

2015-05-22 Thread Arnaud Charlet
This patch causes default initialization of objects of types Constant_Reference_Type and Reference_Type in the containers packages to raise Program_Error as required by the RM. Tested on x86_64-pc-linux-gnu, committed on trunk 2015-05-22 Bob Duff d...@adacore.com * a-cborma.ads,

Re: [Ada] Correct some anmolies in the handling of Atomic

2015-05-22 Thread Duncan Sands
Hi Arnaud, Index: exp_util.adb === --- exp_util.adb(revision 223476) +++ exp_util.adb(working copy) @@ -204,6 +204,13 @@ when others = null; end case; + -- Nothing to do for the identifier in

Re: [patch 10/10] debug-early merge: compiler proper

2015-05-22 Thread Richard Biener
On Wed, May 20, 2015 at 11:45 PM, Aldy Hernandez al...@redhat.com wrote: On 05/20/2015 05:01 PM, Jan Hubicka wrote: commit 8824b5ecba26cef065e47b34609c72677c3c36fc Author: Aldy Hernandez al...@redhat.com Date: Wed May 20 16:31:14 2015 -0400 Set DECL_IGNORED_P on temporary arrays

Re: [PATCH 1/3][AArch64] Strengthen barriers for sync-fetch-op builtins.

2015-05-22 Thread Ramana Radhakrishnan
Ok for trunk? I can't approve but do you mind taking care of -march=armv8-a in the arm backend too as that would have the same issues. Ramana Matthew gcc/ 2015-05-21 Matthew Wahab matthew.wa...@arm.com * config/aarch64/aarch64.c (aarch64_emit_post_barrier): New.

[Patch libstdc++] Rewrite cpu/generic/atomic_word.h

2015-05-22 Thread Ramana Radhakrishnan
Hi, While writing atomic_word.h for the ARM backend to fix PR target/66200 I thought it would make more sense to write it all up with atomic primitives instead of providing various fragile bits of inline asssembler. Thus this patch came about. I intend to ask for a specialized version of

Re: [PATCH 1/3][AArch64] Strengthen barriers for sync-fetch-op builtins.

2015-05-22 Thread Matthew Wahab
On 22/05/15 12:26, Ramana Radhakrishnan wrote: Ok for trunk? I can't approve but do you mind taking care of -march=armv8-a in the arm backend too as that would have the same issues. Will do, Matthew

Re: [patch, testsuite, ARM] don't try to execute advsimd-intrinsics tests on hardware without NEON

2015-05-22 Thread Richard Biener
On Thu, May 21, 2015 at 6:06 PM, Sandra Loosemore san...@codesourcery.com wrote: On 05/21/2015 03:48 AM, Christophe Lyon wrote: On 21 May 2015 at 07:33, Sandra Loosemore san...@codesourcery.com wrote: ARM testing shares the AArch64 advsimd-intrinsics execution tests. On ARM, though, the

Re: [Patch] [AArch64] PR target 66049: fix add/extend gcc test suite failures

2015-05-22 Thread Bin.Cheng
On Fri, May 22, 2015 at 4:58 PM, Kyrill Tkachov kyrylo.tkac...@foss.arm.com wrote: Hi Venkat, On 22/05/15 09:50, Kumar, Venkataramanan wrote: Hi Kyrill, Sorry for little delay in responding. -Original Message- From: Kyrill Tkachov [mailto:kyrylo.tkac...@foss.arm.com] Sent:

Add few cases to operand_equal_p

2015-05-22 Thread Jan Hubicka
Hi, I am working on patch that makes operand_equal_p replace logic from ipa-icf-gimple's compare_op via a valueizer hook. Currently the patch however cuts number of merges on firefox to half (apparently becuase it gives up on some tree codes too early) The patch bellow merges code from

[PATCH][3/n] Reduction vectorization improvements

2015-05-22 Thread Richard Biener
This does some more cleanup and refactoring with two fixes, the pure slp compute in vect_analyze_loop_operations was failing to look at pattern stmts and the vect_is_slp_reduction hunk makes reduction detection fail because the pattern state changes in between reduction detection and

Re: [RFC / CFT] PR c++/66192 - Remove TARGET_RELAXED_ORDERING and use load acquires.

2015-05-22 Thread Ramana Radhakrishnan
On 22/05/15 14:40, Jason Merrill wrote: On 05/22/2015 07:23 AM, Ramana Radhakrishnan wrote: + /* Load the guard value only through an atomic acquire load. */ + guard = build_atomic_load (guard, MEMMODEL_ACQUIRE); + /* Check to see if the GUARD is zero. */ guard = get_guard_bits

[RFC] operand_equal_p with valueization

2015-05-22 Thread Jan Hubicka
Hi, with aliasing sanity checks I got burnt again with ipa-icf-gimple's compare_operand doing alias set checks on all types it ever trips across. I always tought that we do not need two equality testers - operand_equal_p and compare_operand and given that it turns out to be non-trivial to fix

Re: [RFC] operand_equal_p with valueization

2015-05-22 Thread Richard Biener
On Fri, 22 May 2015, Jan Hubicka wrote: Hi, with aliasing sanity checks I got burnt again with ipa-icf-gimple's compare_operand doing alias set checks on all types it ever trips across. I always tought that we do not need two equality testers - operand_equal_p and compare_operand and given

Re: [RFC / CFT] PR c++/66192 - Remove TARGET_RELAXED_ORDERING and use load acquires.

2015-05-22 Thread Jason Merrill
On 05/22/2015 07:23 AM, Ramana Radhakrishnan wrote: + /* Load the guard value only through an atomic acquire load. */ + guard = build_atomic_load (guard, MEMMODEL_ACQUIRE); + /* Check to see if the GUARD is zero. */ guard = get_guard_bits (guard); I wonder if these calls should be

Re: [RFC / CFT] PR c++/66192 - Remove TARGET_RELAXED_ORDERING and use load acquires.

2015-05-22 Thread David Edelsohn
On Fri, May 22, 2015 at 9:40 AM, Jason Merrill ja...@redhat.com wrote: On 05/22/2015 07:23 AM, Ramana Radhakrishnan wrote: + /* Load the guard value only through an atomic acquire load. */ + guard = build_atomic_load (guard, MEMMODEL_ACQUIRE); + /* Check to see if the GUARD is zero.

[PATCH] Fix ICE in PR66251

2015-05-22 Thread Richard Biener
Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2015-05-22 Richard Biener rguent...@suse.de PR tree-optimization/66251 * tree-vect-stmts.c (vectorizable_conversion): Properly set STMT_VINFO_VEC_STMT even for the SLP case. *

Re: [PATCH][ARM] Handle UNSPEC_VOLATILE in rtx costs and don't recurse inside the unspec

2015-05-22 Thread Ramana Radhakrishnan
On Mon, Apr 20, 2015 at 5:28 PM, Kyrill Tkachov kyrylo.tkac...@arm.com wrote: Hi all, A pet project of mine is to get to the point where backend rtx costs functions won't have to handle rtxes that don't match down to any patterns/expanders we have. Or at least limit such cases. A case dealt

[Ada] Small enhancement to unchecked conversion warning in -gnatf mode

2015-05-22 Thread Arnaud Charlet
In full warning mode, when an unchecked conversion is applied to types of different sizes, the compiler issues a warning describing the effects of the conversion on the additional or missing bits. When the source is smaller than the target, it was issuing a specific warning if the target is of a

[Ada] Make sure Volatile_Full_Access is treated like Atomic

2015-05-22 Thread Arnaud Charlet
This update makes sure that Volatile_Full_Access is treated like Atomic in all cases except checking specific RM legality rules, and controlling atomic synchronization. Tested on x86_64-pc-linux-gnu, committed on trunk 2015-05-22 Robert Dewar de...@adacore.com * exp_ch5.adb,

Re: Add few cases to operand_equal_p

2015-05-22 Thread Jan Hubicka
+ case OBJ_TYPE_REF: + { + if (!operand_equal_p (OBJ_TYPE_REF_EXPR (arg0), + OBJ_TYPE_REF_EXPR (arg1), flags)) + return false; + if (flag_devirtualize virtual_method_call_p (arg0)) + { + if (tree_to_uhwi

Re: [RFC] operand_equal_p with valueization

2015-05-22 Thread Jan Hubicka
And no, I'm hesitant to change operand_equal_p too much. It's very much deep-rooted into GENERIC. OK, as another option, i can bring relevant logic from operand_equal_p to ipa-icf and separate it into the compare_operand class like I did. Use it in ipa-icf-gimple now and we can slowly turn

Re: [patch 1/10] debug-early merge: Ada front-end

2015-05-22 Thread Aldy Hernandez
On 05/22/2015 04:31 AM, Eric Botcazou wrote: My apologies for the delay on Ada. I have reworked the patch to leave the first pass on the TYPE_DECLs which are definitely needed. I also optimized things a bit, since we don't need to save all the globals any more. Thanks, this looks fine modulo

Re: Do not compute alias sets for types that don't need them

2015-05-22 Thread Richard Biener
On Fri, 22 May 2015, Jan Hubicka wrote: Hi, this patch fixes few cases where we compute alias type and don't need to that are found by adding type_with_alias_set_p check to alias.c (I will send this patch separately as there is still one ICE caught by it I believe originating from

Do not compute alias sets for types that don't need them

2015-05-22 Thread Jan Hubicka
Hi, this patch fixes few cases where we compute alias type and don't need to that are found by adding type_with_alias_set_p check to alias.c (I will send this patch separately as there is still one ICE caught by it I believe originating from ipa-icf-gimple, I have more involved fix for that) The

[Ada] Duplicate symbol xxxAM due to anonymous access allocation

2015-05-22 Thread Arnaud Charlet
This patch reimplements the generation of anonymous finalization masters used in servicing anonymous access-to-controlled type allocations. The modification prevents the generation of a duplicate anonymous master in certain cases. -- Source -- -- gen_pack.ads with

[Ada] Size should be zero for null range discrete subtype

2015-05-22 Thread Arnaud Charlet
The 'Size of a discrete subtype with a null range should be zero. The following test: 1. with Ada.Text_IO; use Ada.Text_IO; 2. procedure Static_Null_Range_Size is 3.subtype Static_Null_Range is 4. Integer range 5 .. 0; 5.Dummy : Static_Null_Range; 6.

[Ada] Internal crash on package instantation compilation unit

2015-05-22 Thread Arnaud Charlet
This patch updates the implementation of anonymous masters that support finalization actions of anonymous access-to-controlled type allocations to handle package instantiations that act as a compilation unit. -- Source -- -- q.ads package Q is type Obj_T is tagged

Re: Add few cases to operand_equal_p

2015-05-22 Thread Richard Biener
On Fri, 22 May 2015, Jan Hubicka wrote: Hi, I am working on patch that makes operand_equal_p replace logic from ipa-icf-gimple's compare_op via a valueizer hook. Currently the patch however cuts number of merges on firefox to half (apparently becuase it gives up on some tree codes too

Re: Do not compute alias sets for types that don't need them

2015-05-22 Thread Jan Hubicka
Index: emit-rtl.c === --- emit-rtl.c (revision 223508) +++ emit-rtl.c (working copy) @@ -1787,8 +1787,15 @@ set_mem_attributes_minus_bitpos (rtx ref memset (attrs, 0, sizeof (attrs)); /* Get the alias

[C++ Patch] PR 65598

2015-05-22 Thread Paolo Carlini
Hi, this is also by and large obvious, I think: in order to use the right location for error messages about 'explicit', just use declspecs-locations[ds_explicit]. Tested x86_64-linux. Thanks, Paolo. PS: I'm pretty sure we do have similar issues for other decl-specifiers, which can be

Re: [patch 10/10] debug-early merge: compiler proper

2015-05-22 Thread Aldy Hernandez
On 05/22/2015 07:23 AM, Richard Biener wrote: On Wed, May 20, 2015 at 5:50 PM, Aldy Hernandez al...@redhat.com wrote: On 05/18/2015 06:56 AM, Richard Biener wrote: diff --git a/gcc/tree-core.h b/gcc/tree-core.h index ad1bb23..2a9f417 100644 --- a/gcc/tree-core.h +++ b/gcc/tree-core.h @@

[Ada] Rename Has_Volatile_Full_Access into Is_Volatile_Full_Access

2015-05-22 Thread Arnaud Charlet
This is an internal change that renames the Has_Volatile_Full_Access flag into Is_Volatile_Full_Access for the sake of consistency with similar flags. No user-visible changes. Tested on x86_64-pc-linux-gnu, committed on trunk 2015-05-22 Eric Botcazou ebotca...@adacore.com * einfo.ads

Re: [patch 10/10] debug-early merge: compiler proper

2015-05-22 Thread Aldy Hernandez
On 05/22/2015 07:26 AM, Richard Biener wrote: On Wed, May 20, 2015 at 11:45 PM, Aldy Hernandez al...@redhat.com wrote: On 05/20/2015 05:01 PM, Jan Hubicka wrote: commit 8824b5ecba26cef065e47b34609c72677c3c36fc Author: Aldy Hernandez al...@redhat.com Date: Wed May 20 16:31:14 2015 -0400

Re: [C++ Patch] PR 65598

2015-05-22 Thread Jason Merrill
OK. Jason

[PATCH, i386, libgcc]: Split SSE specific part from set_fast_math

2015-05-22 Thread Uros Bizjak
Hello! This patch splits SSE specific part of set_fast_math to its own function, decorated with fxsr,sse target attribute. This way, we can avoid compiling the whole file with -msse that implies generation of possibly unsupported CMOVE insns. Additionally, we can now use generic t-crtfm makefile

Copy TYPE_NO_FORCE_BLK in finalize_type_size

2015-05-22 Thread Jan Hubicka
Hi, PR 66181 is about ICE in verify_type that complains that type and its variant differs by TYPE_NO_FORCE_BLK. This flag is kind-of internal to stor-layout.c, so the divergence may not matter (I am not sure about it as C++ FE finalizes type variants separately and thus it may trip to

[patch] libstdc++/66017 Avoid bad casts and fix alignment of _Rb_tree_nodelong long::_M_storage

2015-05-22 Thread Jonathan Wakely
There are two problems involved in this PR. First, as Clang's ubsan detects, we are using static_cast to convert from _Rb_tree_node_base* to _Rb_tree_node_Val* in cases where there is no _Rb_tree_node_Val at that address (_M_impl._M_header is just an _Rb_tree_node_base). That's undefined

Reuse predicate code analysis for constraints

2015-05-22 Thread Richard Sandiford
This patch adjusts the fix for PR target/65689 along the lines suggested in https://gcc.gnu.org/ml/gcc-patches/2015-04/msg01559.html. The idea is to reuse the existing gensupport.c routine to work out the codes accepted by constraints. I'd originally done this with an eye to using

[PATCH/RFC] Make loop-header-copying more aggressive, rerun before tree-if-conversion

2015-05-22 Thread Alan Lawrence
This example which I wrote to test ifconversion, currently fails to if-convert or vectorize: int foo () { for (int i = 0; i 32 ; i++) { int m = (a[i] i) ? 5 : 4; b[i] = a[i] * m; } } ...because jump-threading in dom1 rearranged the loop into a form that neither

Re: [RFA] Fix combine to canonicalize (mult X pow2)) more often

2015-05-22 Thread Segher Boessenkool
On Thu, May 21, 2015 at 09:24:37AM -0600, Jeff Law wrote: When combine needs to split a complex insn, it will canonicalize a simple (mult X (const_int Y)) where Y is a power of 2 into the expected (ashift X (const_int Y')) if the (mult ...) is selected as a split point. However if the

Re: [RFC / CFT] PR c++/66192 - Remove TARGET_RELAXED_ORDERING and use load acquires.

2015-05-22 Thread Ramana Radhakrishnan
On 22/05/15 15:28, Jason Merrill wrote: On 05/22/2015 09:55 AM, David Edelsohn wrote: On Fri, May 22, 2015 at 9:40 AM, Jason Merrill ja...@redhat.com wrote: On 05/22/2015 07:23 AM, Ramana Radhakrishnan wrote: + /* Load the guard value only through an atomic acquire load. */ + guard =

Re: [RFC / CFT] PR c++/66192 - Remove TARGET_RELAXED_ORDERING and use load acquires.

2015-05-22 Thread Jason Merrill
On 05/22/2015 09:55 AM, David Edelsohn wrote: On Fri, May 22, 2015 at 9:40 AM, Jason Merrill ja...@redhat.com wrote: On 05/22/2015 07:23 AM, Ramana Radhakrishnan wrote: + /* Load the guard value only through an atomic acquire load. */ + guard = build_atomic_load (guard, MEMMODEL_ACQUIRE);

Re: [PATCH][AArch64] PR target/65491: Classify V1TF vectors as AAPCS64 short vectors rather than composite types

2015-05-22 Thread Kyrill Tkachov
Hi James, On 19/05/15 12:18, James Greenhalgh wrote: On Mon, Apr 20, 2015 at 11:16:02AM +0100, Kyrylo Tkachov wrote: Hi all, The ICE in the PR happens when we pass a 1x(128-bit float) vector as an argument. The aarch64 backend erroneously classifies it as a composite type when in fact it is a

Re: Add few cases to operand_equal_p

2015-05-22 Thread Jan Hubicka
+ case OBJ_TYPE_REF: + { + if (!operand_equal_p (OBJ_TYPE_REF_EXPR (arg0), + OBJ_TYPE_REF_EXPR (arg1), flags)) + return false; + if (flag_devirtualize virtual_method_call_p (arg0)) + { + if (tree_to_uhwi

Re: [RFC][PATCH][X86_64] Eliminate PLT stubs for specified external functions via -fno-plt=

2015-05-22 Thread Sriraman Tallam
On Fri, May 22, 2015 at 2:00 AM, Pedro Alves pal...@redhat.com wrote: On 05/21/2015 11:02 PM, Sriraman Tallam wrote: On Thu, May 21, 2015 at 2:51 PM, Pedro Alves pal...@redhat.com wrote: On 05/21/2015 10:12 PM, Sriraman Tallam wrote: My original proposal, for x86_64 only, was to add

  1   2   >