[PATCH] x86: allow to suppress default clobbers added to asm()s

2014-10-31 Thread Jan Beulich
While it always seemed wrong to me that there's no way to avoid the default "flags" and "fpsr" clobbers, the regression the fix for PR/60663 introduced (see PR/63637) makes it even more desirable to have such a mechanism: This way, at least asm()s with a single output and no explicit clobbers can a

Re: genmatch infinite loop during bootstrap on AIX

2014-10-31 Thread Richard Biener
On Thu, 30 Oct 2014, David Edelsohn wrote: > On Thu, Oct 30, 2014 at 4:51 AM, Richard Biener > wrote: > > On Wed, Oct 29, 2014 at 6:13 PM, David Edelsohn wrote: > >> On Wed, Oct 29, 2014 at 9:24 AM, Richard Biener > >> wrote: > >> > >>> Because only genmatch calls functions from libstdc++. Btw

[match-and-simplify] Merge from trunk

2014-10-31 Thread Richard Biener
2014-10-31 Richard Biener Merge from trunk rr216800 through r215940. Brings back next merge piece.

Re: add warning for unused user-defined operator

2014-10-31 Thread Richard Biener
On Thu, Oct 30, 2014 at 6:49 PM, Prathamesh Kulkarni wrote: > On Thu, Oct 30, 2014 at 11:12 PM, Prathamesh Kulkarni > wrote: >> On Tue, Oct 28, 2014 at 3:38 PM, Richard Biener >> wrote: >>> On Sat, Oct 25, 2014 at 12:38 PM, Prathamesh Kulkarni >>> wrote: Add warning for unused user-defined

Re: [gofrontend-dev] Re: [PATCH 7/9] Gccgo port to s390[x] -- part I

2014-10-31 Thread Dominik Vogt
On Thu, Oct 30, 2014 at 08:20:20AM -0700, Ian Taylor wrote: > /* { dg-skip-if "not supported for target" { ! "s390*-*-* x86_64-*-*" } } */ > +/* { dg-skip-if "not supported for target" { ! lp64 } } */ Hm, but then the test will be skipped on s390 (31 bit) too where it should work. The current so

Re: [gofrontend-dev] Re: [PATCH 7/9] Gccgo port to s390[x] -- part I

2014-10-31 Thread Dominik Vogt
On Thu, Oct 30, 2014 at 07:51:45AM -0700, Ian Taylor wrote: > On Thu, Oct 30, 2014 at 12:25 AM, Dominik Vogt > wrote: > > See attached patch. > > I don't mind skipping the test on other platforms, but xfail is not > correct. When an xfail test passes, we get an XPASS error from the > testsuite.

Re: [PATCH] Optimize UBSAN_NULL checks

2014-10-31 Thread Marek Polacek
On Thu, Oct 30, 2014 at 07:47:52PM +0100, Marek Polacek wrote: > This patch tries to optimize away redundant UBSAN_NULL checks. > It walks the statements, looks for UBSAN_NULL calls and keeps > track of pointers and statements checking that pointer in a > hash map. Now, if we can prove that some U

[committed] MAINTAINERS: add myself to write-after-approval list

2014-10-31 Thread Ilya Enkovich
2014-10-31 Ilya Enkovich * MAINTAINERS (Write After Approval): Add myself. Index: MAINTAINERS === --- MAINTAINERS (revision 216948) +++ MAINTAINERS (revision 216952) @@ -373,6 +373,7 @@ Bernd Edlinger

[PATCH, IPA ICF] Fix PR63696.

2014-10-31 Thread Maxim Ostapenko
Hi, this tiny patch fixes PR63696 (alloc-dealloc-mismatch in ipa-icf.c). Tested on x86_64-unknown-linux-gnu, ok to commit? -Maxim gcc/ChangeLog: 2014-10-31 Max Ostapenko * ipa-icf.c (sem_function::~sem_function): Change free to delete to avoid alloc-dealloc mismatch with new, called in i

RE: [PATCH 2/X, i386, PR54232] Enable EBX for x86 in 32bits PIC code

2014-10-31 Thread Zamyatin, Igor
> > Those macros use "=&b" etc. in asm constraints, so IMHO you'll get the same > error as for say: > > int > foo (void) > { > bar (); > int i = 0; > asm volatile ("" : "+b" (i)); > bar (); > return i; > } > > when compiled by gcc 4.9 and earlier with -O2 -m32 -fpic: > error: inconsist

Re: [PATCH, IPA ICF] Fix PR63696.

2014-10-31 Thread Yury Gribov
On 10/31/2014 11:35 AM, Maxim Ostapenko wrote: Hi, this tiny patch fixes PR63696 (alloc-dealloc-mismatch in ipa-icf.c). Tested on x86_64-unknown-linux-gnu, ok to commit? Could you add PR comment to ChangeLog? -Y

RE: [Ping] [PATCH, 4/10] expand ccmp

2014-10-31 Thread Zhenqiang Chen
> -Original Message- > From: Richard Henderson [mailto:r...@redhat.com] > Sent: Thursday, October 30, 2014 11:58 PM > To: Zhenqiang Chen > Cc: gcc-patches@gcc.gnu.org > Subject: Re: [Ping] [PATCH, 4/10] expand ccmp > > On 10/29/2014 03:30 AM, Zhenqiang Chen wrote: > > + > > +bool > > +cc

Re: [PATCH AVX512] Fix dg.torture tests with avx512

2014-10-31 Thread Uros Bizjak
On Thu, Oct 30, 2014 at 3:55 PM, Ilya Tocar wrote: > Hi, > > I've run gcc.dg/torture/* tests with -mavx512bw -mavx512vl -mavx512dq > flags, and got a bunch of fails (mostly in permutes autogen). > Patch below fixes them. > Ok for trunk? > > 2014-10-30 Ilya Tocar > > * config/i386/i386.c

[ping*2] fix unwinding on e500 processors

2014-10-31 Thread Olivier Hainque
Hello, ping for https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01369.html a proposal to repair unwinding breakage on e500 targets. The url above is that of the first ping, where the originally submitted patch was splitted in two to facilitate review. The original submission, with a more complete

Re: [PATCH][PPC] Skip gcc.target tests with conflicting -mcpu

2014-10-31 Thread Andrew Stubbs
On 30/10/14 18:37, Mike Stump wrote: On Oct 30, 2014, at 10:25 AM, Andrew Stubbs wrote: Many of the tests in gcc.target/powerpc specify an explicit -mcpu option with dg-options. So, I think this isn’t the strategy people like for this sort of thing. The problem is default flags. You can hav

Re: [PATCH, IPA ICF] Fix PR63696.

2014-10-31 Thread Richard Biener
On Fri, Oct 31, 2014 at 9:35 AM, Maxim Ostapenko wrote: > Hi, > > this tiny patch fixes PR63696 (alloc-dealloc-mismatch in ipa-icf.c). > > Tested on x86_64-unknown-linux-gnu, ok to commit? Ok with referencing the PR from the changelog. Thanks, Richard. > -Maxim

Re: [gomp4] OpenACC acc_on_device

2014-10-31 Thread Thomas Schwinge
Hi! On Thu, 18 Sep 2014 20:01:02 +0200, I wrote: > Here is my OpenACC acc_on_device patch, in a more complete form, with > test cases and all that. > > On Wed, 17 Sep 2014 10:49:54 +0200, Jakub Jelinek wrote: > > On Wed, Sep 17, 2014 at 10:44:12AM +0200, Tobias Burnus wrote: > > > Cesar Philippi

Re: [PATCH] Fix PR63259: bswap not recognized when finishing with rotation

2014-10-31 Thread Richard Biener
On Wed, Oct 29, 2014 at 2:30 PM, Thomas Preud'homme wrote: >> From: Richard Biener [mailto:richard.guent...@gmail.com] >> Sent: Wednesday, October 08, 2014 8:27 AM >> >> I wouldn't worry about that too much. Indeed the question would be >> what >> should be canonical on GIMPLE (expanders should c

Re: [Patchv2 3/4] Control SRA and IPA-SRA by a param rather than MOVE_RATIO

2014-10-31 Thread Richard Biener
On Wed, Oct 29, 2014 at 3:39 PM, James Greenhalgh wrote: > On Wed, Oct 01, 2014 at 05:38:12PM +0100, James Greenhalgh wrote: >> On Fri, Sep 26, 2014 at 10:11:13AM +0100, Richard Biener wrote: >> > On Thu, Sep 25, 2014 at 4:57 PM, James Greenhalgh >> > wrote: >> > Given the special value to note t

Re: [Patch] Cleanup widest_int_mode_for_size

2014-10-31 Thread Richard Biener
On Tue, Sep 23, 2014 at 11:17 AM, James Greenhalgh wrote: > > Hi, > > The comment on widest_int_mode_for_size claims that it returns the > widest integer mode no wider than size. The implementation looks more > like it finds the widest integer mode smaller than size. Everywhere it > is used, the m

[PATCH] Fix VRP of UBSAN_SUB_CHECK (PR sanitizer/63697)

2014-10-31 Thread Jakub Jelinek
Hi! This patch fixes a thinko in VRP of UBSAN_SUB_CHECK - if we have two VR_RANGEs for subtraction, to detect whether the subtraction might overflow we need to check if op0's minimum - op1's maximum overflow or if op0's maximum - op1's minimum overflow, while the code has been checking both maximu

[Ada] Tag initialization in object declarations

2014-10-31 Thread Arnaud Charlet
When a tagged object is initialized in a declaration, the expression may involve a view conversion, so the tag must be re-assigned explicitly to the object in a separate step. This assignment can only take place after the object is frozen. If there is an address clause for the object following the

[PATCH] Don't bootstrap libcc1

2014-10-31 Thread Jakub Jelinek
On Thu, Oct 30, 2014 at 09:39:06AM +0100, Paolo Bonzini wrote: > >> --- configure.ac 2014-10-28 14:39:53.018852391 +0100 > >> +++ configure.ac 2014-10-29 11:43:19.873216226 +0100 > >> @@ -2677,6 +2677,7 @@ for module in ${configdirs} ; do > >>fi > >>case ${module},${bootstrap_fixinclude

[Ada] Spurious error on component clause in generic unit

2014-10-31 Thread Arnaud Charlet
In ASIS mode the compiler creates and analyzes instance bodies in generic units and applies semantic checks on record components. Checks on staticness of components must not be applied to them, as they would not be in the standard compilation mode. The following must compile quietly: gcc -c -g

[Ada] Handling of implicit dereference in instantiations

2014-10-31 Thread Arnaud Charlet
The use of reference types and generalized indexing leads to multiple tree rewritings. When these uses are in a generic unit, the transformations are not propagated to instantiations, and the analysis of the instance must replicate that of the generic to recognize the presence of implicit dereferen

[Ada] Lift obsolete limitations for pragma Inline

2014-10-31 Thread Arnaud Charlet
This change lifts obsolete limitations for pragma Inline that have already been lifted for pragma Inline_Always, since they use the same machinery. Tested on x86_64-pc-linux-gnu, committed on trunk 2014-10-31 Eric Botcazou * inline.adb (Back_End_Cannot_Inline): Delete. (Add_In

Re: [PATCH] config-list.mk: Build Go only for supported targets (was: Patch RFA: Top-level configure patch: disable go on systems where it doesn't work)

2014-10-31 Thread Jan-Benedict Glaw
On Thu, 2014-10-30 17:10:38 -0700, Ian Taylor wrote: > On Thu, Oct 30, 2014 at 12:14 PM, Jan-Benedict Glaw wrote: > > On Thu, 2014-10-30 08:08:51 -0700, Ian Taylor wrote: > > > On Thu, Oct 30, 2014 at 6:19 AM, Jan-Benedict Glaw > > > wrote: > > > > This updates contrib/config-list.mk to build

RE: [PATCH, ifcvt] Check size cost in noce_try_store_flag_mask

2014-10-31 Thread Matthew Fortune
Andrew Pinski writes: > On Thu, Oct 30, 2014 at 11:30 PM, Zhenqiang Chen > wrote: > > Thank you all for the comments. Patch is updated. > > > > Bootstrap and no make check regression on X86-64. > > No make check regression with Cortex-M0 qemu. > > No performance changes for coremark, dhrystone, s

[Ada] Calls to protected operations in pre/postcondition

2014-10-31 Thread Arnaud Charlet
A protected specification cannot contain calls to its own operations, except if the call appears within a pre- or postcondition for another protected operation. Executing: gnatmake -q -gnata prot prot must yield: Good call Bad call --- with Text_IO; use Text_IO; with Ada.Assertion

Re: update address taken: don't drop clobbers

2014-10-31 Thread Richard Biener
On Sat, Oct 25, 2014 at 6:29 PM, Marc Glisse wrote: > On Fri, 24 Oct 2014, Jeff Law wrote: > >> I'm starting to agree -- a later message indicated you wanted to drop the >> unlink_stmt_vdef call and you wanted to avoid gsi_replace, that seems fine. >> I'll approve once those things are taken care

[Ada] Aspect Default_Storage_Pool

2014-10-31 Thread Arnaud Charlet
This aspect was not properly recognized by GNAT, even though the corresponding pragma was fully handled. Tested on x86_64-pc-linux-gnu, committed on trunk 2014-10-31 Ed Schonberg * aspects.ads, aspects.adb: Add aspect Default_Storage_Pool. * sem_ch13.adb (Analyze_One_Aspect):

[Ada] Inlining of calls to subprogram renamings

2014-10-31 Thread Arnaud Charlet
The compiler does not inline calls to entities which are subprogram renamings. This is visible by means of the following small reproducer; compiling the main unit without this patch the compiler reported a the warning indicating "inlining failed in call to R.Value" After this patch these sources a

Re: [PATCH v2] avoid alignment of static variables affecting stack's

2014-10-31 Thread Richard Biener
On Fri, Oct 24, 2014 at 4:57 PM, Jan Beulich wrote: > Function (or more narrow) scope static variables (as well as others not > placed on the stack) should also not have any effect on the stack > alignment. I noticed the issue first with Linux'es dynamic_pr_debug() > construct using an 8-byte alig

Re: [PATCH] Fix VRP of UBSAN_SUB_CHECK (PR sanitizer/63697)

2014-10-31 Thread Richard Biener
On Fri, Oct 31, 2014 at 11:58 AM, Jakub Jelinek wrote: > Hi! > > This patch fixes a thinko in VRP of UBSAN_SUB_CHECK - > if we have two VR_RANGEs for subtraction, to detect whether > the subtraction might overflow we need to check if > op0's minimum - op1's maximum overflow or if > op0's maximum -

Re: [PATCH] Don't bootstrap libcc1

2014-10-31 Thread Richard Biener
On Fri, Oct 31, 2014 at 12:01 PM, Jakub Jelinek wrote: > On Thu, Oct 30, 2014 at 09:39:06AM +0100, Paolo Bonzini wrote: >> >> --- configure.ac 2014-10-28 14:39:53.018852391 +0100 >> >> +++ configure.ac 2014-10-29 11:43:19.873216226 +0100 >> >> @@ -2677,6 +2677,7 @@ for module in ${configdirs}

[Ada] Remove unreachable inlining code

2014-10-31 Thread Arnaud Charlet
This removes unreachable code for back-end inlining in Expand_Call. No functional changes. Tested on x86_64-pc-linux-gnu, committed on trunk 2014-10-31 Eric Botcazou * exp_ch6.adb (Do_Inline): Remove unreachable code. (Do_Inline_Always): Likewise. Index: exp_ch6.adb

[Ada] Changes related to back-end inlining

2014-10-31 Thread Arnaud Charlet
This change affects only back-end inlining and is two-fold: 1. It lifts in a 3rd place the limitation associated with nested subprograms as well as with a couple of other constructs. After it is applied, the only significant limitation left are the nested packages. 2. It makes sure the errors ass

[Ada] Implementation of Default_Pool pragma

2014-10-31 Thread Arnaud Charlet
This patch adds missing semantic checks to the implementation of the Ada2012 aspect Default_Storage_Pool. Compiling bdb3dbm0.adb must yield: bdb3dbm0.adb:17:45: default storage pool must be a variable bdb3dbm0.adb:19:33: expected type "System.Storage_Pools.Root_Storage_Pool'CLASS"

[Ada] Derived type whose parent has a full view with access discriminants

2014-10-31 Thread Arnaud Charlet
An access discriminant has an anonymous access type whose scope is the enclosing package. If a derived type inherits access discriminants, their itypes needs to be referenced in the current scope before the bodies of primitive operations for the derived type are elaborated, to ensure that the first

[PATCH] Use NOP_EXPRs from genmatch

2014-10-31 Thread Richard Biener
This makes genmatch emit NOP_EXPRs instead of CONVERT_EXPRs. This avoids various corner cases in passes, fold and FE-ish code. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2014-10-31 Richard Biener * genmatch.c (expr::gen_transform): Use NOP_EXPRs instead o

[PATCH][AArch64] Properly guard CUMULATIVE_ARGS definition and remove 'enum' from machine_mode in aarch64.h

2014-10-31 Thread Kyrill Tkachov
Hi all, Following up from https://gcc.gnu.org/ml/gcc-patches/2014-10/msg03153.html this fixes up the aarch64 port accordingly to guard CUMULATIVE_ARGS properly so that we can remove the enum keyword from machine_mode. Building aarch64-none-elf succeeds (after reverting my previous patch). O

[Ada] Missing check on interface primitives

2014-10-31 Thread Arnaud Charlet
The compiler does not not verify always that all the primitives of an interface type are abstract or null procedures. After this patch the following test is compiled with errors: package Pkg is -- Test 1 type IA is tagged; function Get_myB (Self : IA) return natural; type IA is inter

Re: [PATCH, committed] AIX libstdc++ configure.host LD_FLAGS

2014-10-31 Thread Michael Haubenwallner
On 10/30/2014 03:19 PM, David Edelsohn wrote: > AIX has been unable to bootstrap since the match-and-simplify merge. > Richard Biener and I tracked this back to a bad interaction between a > GCC optimization and the AIX linker -G option to allow for SVR4-style > runtime linking. As the -G linker o

[PATCH] Use CONVERT_EXPR_P and friends in the middle-end

2014-10-31 Thread Richard Biener
This fixes the few places where explicit checks for NOP_EXPR or CONVERT_EXPRs crept in. A noticable change may be the tree-eh.c one where we previously considered FP NOP_EXPRs trapping if flag_trapping_math ("Any fp arithmetic may trap") but now like FP CONVERT_EXPRs only when honor_nans (but for

[Ada] New and updated library units for efficient and formal vectors

2014-10-31 Thread Arnaud Charlet
A new unit Ada.Containers.Formal_Indefinite_Vectors is introduced, which defines vectors possibly holding indefinite elements, such as classwide objects. The API of this new unit is based on the existing unit Ada.Containers.Formal_Vectors which has been simplified in favor of efficiency and provabi

[Ada] Handling of Default_Storage_Pool in generics and instantiations.

2014-10-31 Thread Arnaud Charlet
If there is a non-null default storage pool, a generic unit uses it for the allocators it may contain. At the point of instantiation, that default must be installed so that it applies to the allocators in the instance. This is achieved by adding an aspect specification Default_Storage_Pool to the

[Ada] Incorrect RM references on invalid uses of 'Access attribute.

2014-10-31 Thread Arnaud Charlet
The RM reference in the error message for a use of 'access whose prefix is not aliased mentioned the wrong paragraph in the RM. Compiling proc.adb must yield: proc.adb:6:03: object in prefixed call to "Q" must be aliased (RM 4.1.3 (13 1/2)) -- package P is type T is tagged null rec

[Ada] Switch -gnatp should have no effect in GNATprove mode

2014-10-31 Thread Arnaud Charlet
In GNATprove mode for formal verification, the presence or absence of switch -gnatp should have not effect. This was not the case, leading to missing proofs in GNATprove for overflow/range/division checks when -gnatp was used. Now fixed. Tested on x86_64-pc-linux-gnu, committed on trunk 2014-10-3

Re: [PATCH x86] Increase PARAM_MAX_COMPLETELY_PEELED_INSNS when branch is costly

2014-10-31 Thread Eric Botcazou
> Agreed, I think the value of 100 was set decade ago by Zdenek and me > completely artifically. I do not recall any serious tuning of this flag. Are you talking bout PARAM_MAX_COMPLETELY_PEELED_INSNS here? If so, see: https://gcc.gnu.org/ml/gcc-patches/2012-11/msg01193.html We have experience

Minor tweaks in ipa-inline.c

2014-10-31 Thread Eric Botcazou
The usual typo and formatting issues, although there was a novelty since want_inline_function_to_all_callers_p used a consistent 3-space indentation. The function also called twice node->ultimate_alias_target () for no valid reasons so the patch cleans that up too. No functional changes. Tested

Re: [RFC, PATCH]: Introduction of callgraph annotation class

2014-10-31 Thread Martin Liška
On 10/16/2014 04:15 PM, Martin Jambor wrote: Hi, On Wed, Oct 15, 2014 at 06:26:34PM +0200, Martin Liska wrote: Hello. Following patch introduces a new class called callgraph_annotation. Idea behind the patch is to provide a generic interface one can use to register custom info related to a c

[PATCH] Merge from match-and-simplify, remove fold_unary dispatch from fold_stmt

2014-10-31 Thread Richard Biener
This implements the last pattern from fold_unary that covers inputs that can come from a GIMPLE_UNARY_RHS assignment and thus allows removal of the fold_unary dispatch from fold_stmt and gimple_fold_stmt_to_constant_1. Remember that to not cause regressions it is enough to cover cases that do not

[Ada] Store the display name in the project node

2014-10-31 Thread Arnaud Charlet
The Display_Name of a project is now store in its project node instead of a hash table. No change of functionality. Tested on x86_64-pc-linux-gnu, committed on trunk 2014-10-31 Vincent Celier * prj-part.adb (Parse_Single_Project): Call Set_Display_Name_Of. * prj-proc.adb (Recu

Re: [PATCH][AArch64][4.8] LINK_SPEC changes for Cortex-A53 erratum 835769 workaround

2014-10-31 Thread Kyrill Tkachov
On 22/10/14 15:20, Kyrill Tkachov wrote: Hi all, This is the 4.8 backport of the LINK_SPEC changes to pass down the linker option --fix-cortex-a53-835769 Bootstrapped and tested on aarch64-none-linux-gnu. This depends on the patches under review at: https://gcc.gnu.org/ml/gcc-patches/2014-10/m

[PATCH][AARCH64]Add ACLE arch-related predefined macros

2014-10-31 Thread Renlin Li
Hi all, This is a simple patch to add arch-related macros defined ACLE 2.0. aarch64-none-elf target is tested on the model, no new issues. Is this Okay for trunk? gcc/ChangeLog: 2014-10-31 Renlin Li * config/aarch64/aarch64.c (aarch64_architecture_version): New. (processor): New a

[PATCH][AARCH64]Fix PR63424 by adding v2di3 pattern

2014-10-31 Thread Renlin Li
Hi all, This is a patch which will fix PR63424. It implements signed/unsigned max/min pattern for V2DI mode in terms of vcondv2div2di pattern. In this particular case, VEC_COND_EXPR (V2DImode) is generated as aarch64 target supports it (vcond for VALL). The VEC_COND_EXPR will further folded

Re: [PATCH, ifcvt] Check size cost in noce_try_store_flag_mask

2014-10-31 Thread pinskia
> On Oct 31, 2014, at 4:07 AM, Matthew Fortune > wrote: > > Andrew Pinski writes: >> On Thu, Oct 30, 2014 at 11:30 PM, Zhenqiang Chen >> wrote: >>> Thank you all for the comments. Patch is updated. >>> >>> Bootstrap and no make check regression on X86-64. >>> No make check regression with

[Patch 1/7] Hookize *_BY_PIECES_P

2014-10-31 Thread James Greenhalgh
Hi, This patch prepares for removing all the *BY_PIECES_P macros by introducing a new target hook TARGET_USE_BY_PIECES_INFRASTRUCTURE_P. Tested on ARM/AArch64/x86_64 with no issues. Ok for trunk? Thanks, James --- gcc/ 2014-10-31 James Greenhalgh * target.def (use_by_pieces_infra

RE: [Patch 1/6] Hookize MOVE_BY_PIECES_P, remove most uses of MOVE_RATIO

2014-10-31 Thread James Greenhalgh
On Wed, Oct 29, 2014 at 03:31:54PM +, James Greenhalgh wrote: > On Wed, Oct 29, 2014 at 11:42:06AM +, Matthew Fortune wrote: > > Hi James, > > > > I think you have a bug in the following hunk where you pass > > STORE_MAX_PIECES in place of the optimise for speed flag. I guess you > > would

[Patch 2/7 s390] Deprecate *_BY_PIECES_P, move to hookized version

2014-10-31 Thread James Greenhalgh
Hi, This patch moves s390 to TARGET_USE_BY_PIECES_INFRASTRUCTURE_P. It looks to me that s390 wires all the hooks in this set to the same return value, so that is what I've implemented. I tried building a compiler and there were no fires, but otherwise, I have no reasonable way to test this patc

[Patch 4/7 sh] Deprecate *_BY_PIECES_P, move to hookized version

2014-10-31 Thread James Greenhalgh
Hi, This patch moves sh to TARGET_USE_BY_PIECES_INFRASTRUCTURE_P. For sh, STORE_BY_PIECES and SET_BY_PIECES share an implementation, MOVE_BY_PIECES is different. Implement as so, and use the default implementation for CLEAR_BY_PIECES. I tried building a compiler and there were no fires, but oth

[Patch 3/7 arc] Deprecate *_BY_PIECES_P, move to hookized version

2014-10-31 Thread James Greenhalgh
Hi, This patch moves arc to TARGET_USE_BY_PIECES_INFRASTRUCTURE_P. While I am there, arc defines a macro CAN_MOVE_BY_PIECES, which is unused, so clean that up too. arc only implements MOVE_BY_PIECES_P, wiring it to false. Mirror that behaviour, and use the default hook for other by_pieces opera

[Patch 6/7 AArch64] Deprecate *_BY_PIECES_P, move to hookized version

2014-10-31 Thread James Greenhalgh
Hi, This patch moves aarch64 to TARGET_USE_BY_PIECES_INFRASTRUCTURE_P. AArch64 turns off STORE_BY_PIECES, so honour that and use the default implementation for other operations. Unlike the other patches in this series I do actually have some hardware for AArch64! So this one has been through a

[Patch 5/7 mips] Deprecate *_BY_PIECES_P, move to hookized version

2014-10-31 Thread James Greenhalgh
Hi, This patch moves mips to TARGET_USE_BY_PIECES_INFRASTRUCTURE_P. For MIPS, this means adapting mips_move_by_pieces_p (and fixing the long-standing comment "if this becomes a target hook, we should call the default definition instead) and mips_store_by_pieces_p. I tried building a compiler an

[Patch 7/7] Remove *_BY_PIECES_P

2014-10-31 Thread James Greenhalgh
Hi, This final patch gets rid of all the *_BY_PIECES_P macros. Bootstrapped on x86_64, ARM and AArch64. Thanks, James --- gcc/ 2014-10-31 James Greenhalgh * doc/tm.texi.in (MOVE_BY_PIECES_P): Remove. (CLEAR_BY_PIECES_P): Likewise. (SET_BY_PIECES_P): Likewise.

RE: [Patch, MIPS] Add Octeon3 support

2014-10-31 Thread Moore, Catherine
> -Original Message- > From: Hurugalawadi, Naveen > [mailto:naveen.hurugalaw...@caviumnetworks.com] > Sent: Friday, October 31, 2014 2:50 AM > To: Moore, Catherine; Matthew Fortune; Myers, Joseph > Cc: gcc-patches@gcc.gnu.org; Pinski, Andrew > Subject: Re: [Patch, MIPS] Add Octeon3 suppor

[PATCH, i686] Fix for asan test failures with -m32 happened after EBX enabling in PIC mode

2014-10-31 Thread Zamyatin, Igor
Hi! Following patch (moving initialization of pic_offset_table_rtx earlier) fixes failures for asan tests on 32 bits in PIC mode mentioned here - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63534#c48 Bootstrapped/regtested on x86_64, i686 Is it ok for trunk? ChangeLog: 2014-10-30 Igor Zam

Re: [PATCH, Pointer Bounds Checker 14/x] Passes [1/n] Expand interfaces

2014-10-31 Thread Jeff Law
On 10/30/14 10:37, Ilya Enkovich wrote: Hi, I rebased patches on current trunk. Bootstrap and check are clean on linux-x86_64. Darwin bootstrap has few issues due to IPA ICF pass. I also found my patches introduce an unused variable warning due to conditional code (under #ifdef ASM_OUTPUT_DE

Re: [gofrontend-dev] Re: [PATCH 7/9] Gccgo port to s390[x] -- part I

2014-10-31 Thread Ian Taylor
On Fri, Oct 31, 2014 at 2:11 AM, Dominik Vogt wrote: > On Thu, Oct 30, 2014 at 07:51:45AM -0700, Ian Taylor wrote: >> On Thu, Oct 30, 2014 at 12:25 AM, Dominik Vogt >> wrote: >> > See attached patch. >> >> I don't mind skipping the test on other platforms, but xfail is not >> correct. When an x

Re: [PATCH] x86: extend vect-args testcase to AVX flavors

2014-10-31 Thread Kirill Yukhin
On 30 Oct 09:32, Uros Bizjak wrote: > On Thu, Oct 30, 2014 at 8:50 AM, Jan Beulich wrote: > > gcc/testsuite: > > 2014-10-30 Jan Beulich > > > > * gcc.target/i386/i386.exp: Extend option set to test > > vect-args.c with to include -mavx, -mavx2, and -mavx512f. > > * gcc.t

Re: [gomp4] OpenACC wait directive

2014-10-31 Thread Cesar Philippidis
On 10/06/2014 03:56 AM, Ilmir Usmanov wrote: > Otherwise, Fortran part looks good for me. Thanks for the review again! I applied this patch to gomp-4_0-branch now that the middle end pieces are in place. Thanks, Cesar 2014-10-31 Cesar Philippidis gcc/fortran/ * gfortran.h (struct gfc_omp_c

Re: [PATCH x86] Increase PARAM_MAX_COMPLETELY_PEELED_INSNS when branch is costly

2014-10-31 Thread Evgeny Stupachenko
I've measured spec2000, spec2006 as well and EEMBC for Silvermont in addition. 100->120 change gives gain for Silvermont, the results on Haswell are flat. On Fri, Oct 31, 2014 at 3:14 PM, Eric Botcazou wrote: >> Agreed, I think the value of 100 was set decade ago by Zdenek and me >> completely ar

Re: [PATCH] microblaze: microblaze.md: Use 'SI' instead of 'VOID' for operand 1 of 'call_value_intern'

2014-10-31 Thread Chen Gang
At present, I use telnet (without password), login to microblaze qemu successfully! :-) - I compile busy box with the glibc in orginal 'ramfs', so get telnetd: use new busybox replace the old one, and add symbol link 'telnetd' to busybox in "/bin". - configure qemu with network support

[PATCH 00/27] Merger of jit branch v3

2014-10-31 Thread David Malcolm
I'd like to merge the JIT branch into trunk: https://gcc.gnu.org/wiki/JIT This is "v3" since it incorporates fixes for various issues identified in earlier submissions: v1: https://gcc.gnu.org/ml/gcc-patches/2014-09/msg02056.html v2: https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01168.html

[PATCH 01/27] gcc: configure and Makefile changes needed by jit

2014-10-31 Thread David Malcolm
An earlier version of this was posted as: "[PATCH 2/5] gcc: configure and Makefile changes needed by jit" https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01169.html Since then, I've eliminated the gcc_version, bindir, and pkgconfigdir additions, and added the FULL_DRIVER_NAME variable and syml

[PATCH 03/27] Add Sphinx to install.texi

2014-10-31 Thread David Malcolm
In https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01793.html, Joseph said: > Although Sphinx isn't a build dependency, as a dependency for > regenerating checked-in files I think it should be documented in > install.texi (like autoconf, gettext, etc.). This patch adds such documentation. gcc/Chan

[PATCH 02/27] JIT-related changes outside of jit subdir

2014-10-31 Thread David Malcolm
This was previously posted as: "[PATCH 05/10] JIT-related changes outside of jit subdir" https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01246.html and approved by Jeff in https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01410.html > OK if/when rest of JIT bits are approved. Joseph pointed out

[PATCH 05/27] New file: gcc/jit/config-lang.in

2014-10-31 Thread David Malcolm
gcc/jit/ * config-lang.in: New. --- gcc/jit/config-lang.in | 38 ++ 1 file changed, 38 insertions(+) create mode 100644 gcc/jit/config-lang.in diff --git a/gcc/jit/config-lang.in b/gcc/jit/config-lang.in new file mode 100644 index 000..7a32afe ---

[PATCH 22/27] Documentation: top-level index.rst

2014-10-31 Thread David Malcolm
The top-level index.rst provides the high-level structure for the rest of the docs (which will follow in the patches that follow). gcc/jit/ChangeLog: * docs/index.rst: New. --- gcc/jit/docs/index.rst | 50 ++ 1 file changed, 50 insertions(+)

[PATCH 09/27] New file: gcc/jit/libgccjit.map

2014-10-31 Thread David Malcolm
This linker script ensures that the library only exports the symbols we want it to. gcc/jit/ * libgccjit.map: New. --- gcc/jit/libgccjit.map | 100 ++ 1 file changed, 100 insertions(+) create mode 100644 gcc/jit/libgccjit.map diff --git a/

[PATCH 20/27] Documentation: Makefile and conf.py

2014-10-31 Thread David Malcolm
When I previously submitted the jit for review, I posted all of the documentation as one big patch, as: "[PATCH 08/10] Documentation for the JIT library (Re: Patches 5-10 of jit merger)" https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01392.html Since then, I've: * eliminated all mentions

[PATCH 07/27] New file: gcc/jit/dummy-frontend.c

2014-10-31 Thread David Malcolm
gcc/jit/ * dummy-frontend.c: New. --- gcc/jit/dummy-frontend.c | 240 +++ 1 file changed, 240 insertions(+) create mode 100644 gcc/jit/dummy-frontend.c diff --git a/gcc/jit/dummy-frontend.c b/gcc/jit/dummy-frontend.c new file mode 100644 index

[PATCH 06/27] New file: gcc/jit/Make-lang.in

2014-10-31 Thread David Malcolm
gcc/jit/ * Make-lang.in: New. --- gcc/jit/Make-lang.in | 298 +++ 1 file changed, 298 insertions(+) create mode 100644 gcc/jit/Make-lang.in diff --git a/gcc/jit/Make-lang.in b/gcc/jit/Make-lang.in new file mode 100644 index 000..167fcad

[PATCH 21/27] Documentation: the "examples" subdirectory

2014-10-31 Thread David Malcolm
This patch adds examples. These examples are used included by the documentation when it is built, and are run as code by the testsuite, ensuring that the examples shown in the docs build and run. gcc/jit/ * docs/examples/tut01-hello-world.c: New. * docs/examples/tut02-square.c: Ne

[PATCH 23/27] Documentation: the "intro" subdirectory

2014-10-31 Thread David Malcolm
The "intro" subdirectory of gcc/jit/docs consists of a 4-part tutorial aimed at experienced developers who are new users of the library, taking them from beginning use all the way up to adding JIT-compilation to an interpreter. gcc/jit/ * docs/intro/factorial.png: New. * docs/intro

Re: [Patch, testsuite] [AArch64,ARM] support bswap tests on aarch64_be

2014-10-31 Thread Ramana Radhakrishnan
On Wed, Oct 29, 2014 at 1:22 PM, Christophe Lyon wrote: > Hi, > > Following discussions after Thomas's patches improving bswap support > https://gcc.gnu.org/ml/gcc-patches/2014-09/msg01279.html > > I noticed that: > * the associated tests weren't executed on aarch64_be > * ARM targets older than v

Re: [patch] flatten/adjust optabs.h

2014-10-31 Thread Jeff Law
On 10/30/14 09:42, Andrew MacLeod wrote: This patch "adjusts" optabs.h. which was really sub-work of looking at expr.h. I moved the prototypes from expr.h to optabs.h that belong there, and realigned the stuff in optabs.h to be in the same order as the .c file. I also moved gen_move_insn from o

Re: ptx preliminary rtl patches [1/4]

2014-10-31 Thread Bernd Schmidt
On 10/30/2014 06:36 PM, Segher Boessenkool wrote: On Thu, Sep 11, 2014 at 03:24:54PM +0200, Bernd Schmidt wrote: The nvptx backend is somewhat unusual in that call insns set a pseudo. The combiner is surprised by this and allows combining them into other insns, which remain as INSN rather than C

Re: [PATCH, ifcvt] Check size cost in noce_try_store_flag_mask

2014-10-31 Thread Jeff Law
On 10/31/14 00:30, Zhenqiang Chen wrote: Thank you all for the comments. Patch is updated. Bootstrap and no make check regression on X86-64. No make check regression with Cortex-M0 qemu. No performance changes for coremark, dhrystone, spec2000 and spec2006 on X86-64 and Cortex-A15. For CSiBE, A

[PATCH 11/27] New file: gcc/jit/jit-common.h

2014-10-31 Thread David Malcolm
This header has forward declarations of both the jit::recording and jit::playback internal APIs. gcc/jit/ * jit-common.h: New. --- gcc/jit/jit-common.h | 182 +++ 1 file changed, 182 insertions(+) create mode 100644 gcc/jit/jit-common.h di

[PATCH 10/27] New file: gcc/jit/libgccjit.c

2014-10-31 Thread David Malcolm
This file implements the entrypoints of the library's public API. It performs error-checking at this boundary, before calling into the jit-recording.h internal API. gcc/jit/ * libgccjit.c: New. --- gcc/jit/libgccjit.c | 1506 +++ 1 file cha

[PATCH 12/27] New file: gcc/jit/jit-recording.h

2014-10-31 Thread David Malcolm
This file declares the gcc::jit::recording internal API, so that libgccjit.c can record the calls that are made to the public API, for later playback by the dummy frontend. gcc/jit/ * jit-recording.h: New. --- gcc/jit/jit-recording.h | 1593 +++

[PATCH 18/27] New file: gcc/jit/TODO.rst

2014-10-31 Thread David Malcolm
This is a list of TODOs for working on the JIT. gcc/jit/ * TODO.rst: New. --- gcc/jit/TODO.rst | 119 +++ 1 file changed, 119 insertions(+) create mode 100644 gcc/jit/TODO.rst diff --git a/gcc/jit/TODO.rst b/gcc/jit/TODO.rst new file m

[PATCH 14/27] New files: gcc/jit/jit-builtins.{c|h}

2014-10-31 Thread David Malcolm
These files implement support for builtins, for the gcc_jit_context_get_builtin_function API entrypoint. Only a subset of builtins are currently supported, based on those that I needed when porting GNU Octave's JIT. Attempts to use other builtins may lead to an error: "unimplemented primitive

[PATCH 08/27] New file: gcc/jit/libgccjit.h

2014-10-31 Thread David Malcolm
This header is the public API for the library. gcc/jit/ * libgccjit.h: New. --- gcc/jit/libgccjit.h | 977 1 file changed, 977 insertions(+) create mode 100644 gcc/jit/libgccjit.h diff --git a/gcc/jit/libgccjit.h b/gcc/jit/libgccjit.h

[PATCH 24/27] Documentation: add "topics" subdirectory

2014-10-31 Thread David Malcolm
This patch adds a series of topic-based reference articles, intended to give developers who've read the tutorial more detailed descriptions of particular aspects of the library. gcc/jit/ * docs/topics/contexts.rst: New. * docs/topics/expressions.rst: New. * docs/topics/func

[PATCH 17/27] New file: gcc/jit/libgccjit++.h

2014-10-31 Thread David Malcolm
This adds a C++ wrapper API, with syntactic sugar for reducing the verbosity compared to the C API. gcc/jit/ * libgccjit++.h: New. --- gcc/jit/libgccjit++.h | 1574 + 1 file changed, 1574 insertions(+) create mode 100644 gcc/jit/libgccjit++

[PATCH 16/27] New file: gcc/jit/jit-playback.c

2014-10-31 Thread David Malcolm
This files implements the gcc::jit::playback internal API, called by the dummy "frontend" to replay the public API calls made to the library. A thin wrapper around trees. gcc/jit/ * jit-playback.c: New. --- gcc/jit/jit-playback.c | 2104 1

[PATCH 25/27] Documentation: add "internals" subdirectory

2014-10-31 Thread David Malcolm
This final part of the documentation is a guide to the internals of the library, aimed at current and future contributors to the library (including myself). gcc/jit/ * docs/internals/index.rst: New. --- gcc/jit/docs/internals/index.rst | 216 +++ 1 file

[PATCH 13/27] New file: gcc/jit/jit-recording.c

2014-10-31 Thread David Malcolm
Implementation of the gcc::jit::recording internal API, so that libgccjit.c can record the calls that are made to the public API, for later playback by the dummy frontend. gcc/jit/ * jit-recording.c: New. --- gcc/jit/jit-recording.c | 3434 +++

  1   2   >