Re: [PATCH] Explicit register earlyclobber fix

2015-09-22 Thread Richard Henderson
> + /* Registers that can not be allocated for this allocno, for example > because > + there is an ASM_OPERANDS with that register as an output and this pseudo > + as an earlyclobber input. */ > + HARD_REG_SET forbidden_regs; You mean "with that register as an earlyclobber output and

Re: [PATCH] Explicit register earlyclobber fix

2015-09-22 Thread Jeff Law
On 09/22/2015 01:15 PM, Richard Henderson wrote: And doesn't it have to be =& and always at the start for an asm constraint? For operands in patterns, we have to consider operand alternatives, but that's not on issue here. Technically we do support alternatives on asms. Not usefully except

Re: [PATCH] Explicit register earlyclobber fix

2015-09-22 Thread Richard Henderson
On 09/22/2015 12:12 PM, Jeff Law wrote: > On 09/22/2015 12:50 PM, Richard Henderson wrote: >> >>> +asm_constraint_earlyclobber (const char *constraint) >>> +{ >>> + while (*constraint != 0) >>> +{ >>> + if (*constraint == '&') >>> +return true; >>> + ++constraint; >>> +} >>>

Re: [PATCH] Add new hooks ASM_OUTPUT_START_FUNCTION_HEADER ...

2015-09-22 Thread Jeff Law
On 09/21/2015 05:31 AM, Dominik Vogt wrote: This patch adds to new backend hooks ASM_OUTPUT_START_FUNCTION_HEADER and ASM_OUTPUT_END_FUNCTION_FOOTER that may be defined to emit assembly code at the very start or end of a function. This functionality is needed by the patch that ports the

[PATCH] Remove undefined behaviour from hppa backend

2015-09-22 Thread Jeff Law
Not unlike what we've seen in other ports. The PA backend left-shifts a negative number invoking undefined behaviour. This patch avoids the warning for undefined behaviour and presumably would allow the PA port to bootstrap again. Tested with the various PA crosses listed in

Re: [PATCH] Explicit register earlyclobber fix

2015-09-22 Thread Jeff Law
On 09/22/2015 12:50 PM, Richard Henderson wrote: +asm_constraint_earlyclobber (const char *constraint) +{ + while (*constraint != 0) +{ + if (*constraint == '&') + return true; + ++constraint; +} + return false; +} This would be return strchr (constraint, '&')

Re: [PATCH] New attribute to create target clones

2015-09-22 Thread Jeff Law
On 09/21/2015 07:25 AM, Bernd Schmidt wrote: On 08/27/2015 01:18 PM, Evgeny Stupachenko wrote: Based on RFC: https://gcc.gnu.org/ml/gcc-patches/2015-08/msg01322.html The patch implement an extension to Function Multiversioning that allows to clone a function for multiple targets.

Re: [PATCH] Explicit register earlyclobber fix

2015-09-22 Thread Richard Henderson
On 09/22/2015 12:18 PM, Jeff Law wrote: > On 09/22/2015 01:15 PM, Richard Henderson wrote: >>> And doesn't it have to be =& and always at the start for an asm constraint? >>> For operands in patterns, we have to consider operand alternatives, but >>> that's >>> not on issue here. >> >>

[C++ Patch] PR 53856

2015-09-22 Thread Paolo Carlini
Hi, today I noticed that the accepts-invalid half this bug report is already fixed in 5+, but the rejects-valid second half is still an issue: I think we can easily use CLASSTYPE_IS_TEMPLATE on current_class_type to skip members of non-template classes. Tested x86_64-linux. Thanks, Paolo.

Re: [RFC] PR tree-optimization/67628: Make tree ifcombine more symmetric and interactions with dom

2015-09-22 Thread Jeff Law
On 09/22/2015 07:36 AM, Kyrill Tkachov wrote: Hi all, Unfortunately, I see a testsuite regression with this patch: FAIL: gcc.dg/pr66299-2.c scan-tree-dump-not optimized "<<" The reduced part of that test is: void test1 (int x, unsigned u) { if ((1U << x) != 64 || (2 << x) != u

Re: [PATCH] Explicit register earlyclobber fix

2015-09-22 Thread Jeff Law
On 09/22/2015 01:20 PM, Richard Henderson wrote: On 09/22/2015 12:18 PM, Jeff Law wrote: On 09/22/2015 01:15 PM, Richard Henderson wrote: And doesn't it have to be =& and always at the start for an asm constraint? For operands in patterns, we have to consider operand alternatives, but that's

Re: [PATCH, libgomp] PR 67141, uninitialized acc_device_lock mutex

2015-09-22 Thread Chung-Lin Tang
On 2015/9/18 04:02 PM, Jakub Jelinek wrote: > On Fri, Sep 18, 2015 at 03:41:30PM +0800, Chung-Lin Tang wrote: >> this patch fixes the uninitialized acc_device_lock mutex situation >> reported in PR 67141. The patch attached on the bugzilla page >> tries to solve it by constructor priorities, which

Re: [PATCH, libgomp] PR 67141, uninitialized acc_device_lock mutex

2015-09-22 Thread Jakub Jelinek
On Tue, Sep 22, 2015 at 02:49:04PM +0800, Chung-Lin Tang wrote: > Committed, thanks for the review. > I believe this patch is also needed for 5.x, okay for that branch as well? Ok. Jakub

[PATCH][PR67666] Handle single restrict pointer in struct in create_variable_info_for_1

2015-09-22 Thread Tom de Vries
Hi, Consider this test-case: struct ps { int *__restrict__ p; }; void f (struct ps &__restrict__ ps1) { *(ps1.p) = 1; } Atm, the restrict on p has no effect. Now, say we add a field to the struct: struct ps { int *__restrict__ p; int a; }; Then the restrict on p does have the

[PATCH c-family/49654/49655] reject invalid options in pragma diagnostic

2015-09-22 Thread Manuel López-Ibáñez
Use find_opt instead of linear search through options in handle_pragma_diagnostic (PR 49654) and reject non-warning options and options not valid for the current language (PR 49655). Boot on x86_64-linux-gnu. OK? gcc/testsuite/ChangeLog: 2015-09-22 Manuel López-Ibáñez

Re: [PATCH] DWARF support for AIX v3

2015-09-22 Thread David Edelsohn
On Tue, Sep 22, 2015 at 11:29 AM, Richard Henderson wrote: >> @@ -10398,11 +10411,13 @@ output_line_info (bool prologue_only) >>ASM_GENERATE_INTERNAL_LABEL (p1, LN_PROLOG_AS_LABEL, 0); >>ASM_GENERATE_INTERNAL_LABEL (p2, LN_PROLOG_END_LABEL, 0); >> >> +#ifndef

Re: [PATCH] Fix 67064 - Register asm variable broken

2015-09-22 Thread Jason Merrill
On 09/22/2015 11:49 AM, Jason Merrill wrote: On 09/16/2015 10:24 AM, Andres Tiraboschi wrote: Hi, this patch fix the following bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67064 for gcc 5.2 It passes all the gcc tests except for this: FAIL: g++.dg/cpp1y/auto-fn15.C -std=gnu++14 (test for

Re: [AArch64/testsuite] Add more TLS local executable testcases

2015-09-22 Thread Jiong Wang
Marcus Shawcroft writes: > On 26 August 2015 at 14:58, Jiong Wang wrote: >> >> This patch cover tlsle tiny model tests, tls size truncation for tiny & >> small model included also. >> >> All testcases pass native test. >> >> OK for trunk? >> >> 2015-08-26 Jiong Wang

Re: ifcvt vs. expand_binop

2015-09-22 Thread Oleg Endo
On Tue, 2015-09-22 at 17:53 +0200, Bernd Schmidt wrote: > On 09/22/2015 03:35 PM, Oleg Endo wrote: > > On SH, the result of comparisons etc. is stored in the T_REG. It's a 1 > > bit reg but described as SImode. To get the T_REG into another reg, > > there's this insn: > > > > (define_insn "movt"

Re: ifcvt vs. expand_binop

2015-09-22 Thread Oleg Endo
On Wed, 2015-09-23 at 00:48 +0900, Oleg Endo wrote: > I haven't checked the details. But I guess because expand_binop wants > to somehow reuse the input and output it creates a DImode pseudo, puts > the input there, does the DImode plus and the returned "target" is a > SImode subreg of the

[PATCH 2/5] Reimplement diagnostic_show_locus, introducing rich_location classes (v2)

2015-09-22 Thread David Malcolm
This is v2 of this patch; an earlier version was sent as: https://gcc.gnu.org/ml/gcc-patches/2015-09/msg00737.html Thanks for the comments so far. Changes in v2: * Added a big descriptive comment for class rich_location in libcpp/include/line-map.h. * Implemented x-offset support for very

[PATCH 4/5] Implement tree expression tracking in C FE (v2)

2015-09-22 Thread David Malcolm
This is a combination of various patches from v1 of the kit, including: 12/22: Add source-ranges for trees 13/22: gcc-rich-location.[ch]: add methods for working with tree ranges 14/22: C: capture tree ranges for various expressions The implementation of how ranges are stored has completely

Re: [PATCH] New attribute to create target clones

2015-09-22 Thread Bernd Schmidt
On 09/22/2015 09:41 PM, Jeff Law wrote: Essentially it allows us to more easily support per-microarchitecture-optimized versions of functions. You list just have to list the microarchitectures and the compiler handles the rest. Very simple, very easy. I'd think it'd be particularly helpful

[PATCH 0/5] RFC: Overhaul of diagnostics (v2)

2015-09-22 Thread David Malcolm
This is an updated version of this patch kit: https://gcc.gnu.org/ml/gcc-patches/2015-09/msg00726.html It's still at the level of an RFC/work-in-progress; I'm posting for feedback rather than for formal approval at this time (though the first two patches are perhaps ready). For the sake of

[PATCH] Fix a -Wmisleading-indentation false-negative

2015-09-22 Thread Patrick Palka
We currently correctly emit a -Wmisleading-indentation warning for the code ... if (flagB); { foo (); } but we fail to emit a warning for the syntactically similar code ... else if (flagB); { foo (); } because in the heuristic in question we are inspecting the column of

[PATCH][committed][PR middle-end/67649] Fix use of valgrind API

2015-09-22 Thread Mikhail Maltsev
Hi all. Pool allocators use valgrind API to mark freed memory blocks as unaccessible. Shared memory block pool needs to make them accessible again before returning to other pools (otherwise valgrind will cry wolf). I checked that build passes without valgrind checks and starts fine (i.e. errors

[PATCH 5/5] Add plugin to recursively dump the source-ranges in a tree (v2)

2015-09-22 Thread David Malcolm
This patch adds a test plugin that recurses down an expression tree, printing diagnostics showing the ranges of each node in the tree. It corresponds to: [PATCH 15/22] Add plugin to recursively dump the source-ranges in a tree https://gcc.gnu.org/ml/gcc-patches/2015-09/msg00741.html from v1

[PATCH 1/5] Testsuite: add dg-{begin|end}-multiline-output commands

2015-09-22 Thread David Malcolm
This patch is essentially identical to v1 here: https://gcc.gnu.org/ml/gcc-patches/2015-09/msg00729.html The only change is in the ChangeLog, moving the libgo.exp ChangeLog entry into gcc/testsuite/ChangeLog, analogous to where Ian put it when introducing the file in r167407. OK for trunk?

[PATCH 3/5] Implement token range tracking within libcpp and the C FE (v2)

2015-09-22 Thread David Malcolm
This is an updated version of: https://gcc.gnu.org/ml/gcc-patches/2015-09/msg00736.html Changes in V2 of the patch: * c_lex_with_flags: don't write through the range ptr if it's NULL * don't add any fields to the C++ frontend's cp_token for now * libcpp/lex.c: prevent usage of

Re: [PATCH] shrink-wrap: Handle multiple predecessors of prologue

2015-09-22 Thread Segher Boessenkool
On Tue, Sep 22, 2015 at 11:11:47AM -0500, Segher Boessenkool wrote: > > So, given that your solution seems to work, the patch is ok. > > Thanks! Here is what I will commit after bootstrap+test (the superfluous > assert removed, and the comment for the code quoted above tweaked a bit). I added

fdiagnostics-color=never does not disable color for some diagnostics

2015-09-22 Thread Manuel López-Ibáñez
Actually, I was trying to reject non-warning options as argument to -Werror=. However, the new test fails because -fdiagnostics-color=never is always placed by the driver after the warning options when calling the compiler proper. This patch prunes all -fdiagnostics-color from the command-line but

Re: [C/C++ PATCH] RFC: Implement -Wduplicated-cond (PR c/64249) (take

2015-09-22 Thread Martin Sebor
On 09/22/2015 06:26 AM, Marek Polacek wrote: On Mon, Sep 21, 2015 at 07:06:01PM +0200, Marek Polacek wrote: I realized that current patch has a minor deficiency: it will start a chain even in case the first condition has a side-effect thus the chain should be invalid. I'll fix this problem

Re: [PATCH] New attribute to create target clones

2015-09-22 Thread Evgeny Stupachenko
Thank you for the review. The patch still works with gcc 5, but the fail reproduced on trunk (looks like it appeared while patch was at review). I'll debug it and fix. As a workaround to test the feature... Removing "gimple_call_set_fndecl (call, idecl);" from multiple_target.c should resolve the

Re: [PATCH 6/n] OpenMP 4.0 offloading infrastructure: option handling

2015-09-22 Thread Bernd Schmidt
On 09/22/2015 02:02 PM, Thomas Schwinge wrote: gcc/ * gcc.c (handle_foffload_option): Don't lose the trailing NUL character when appending to offload_targets. gcc/ * configure.ac (offload_targets, OFFLOAD_TARGETS): Separate offload targets by

Re: [ARM] Use vector wide add for mixed-mode adds

2015-09-22 Thread Michael Collison
This is a modified version of the previous patch that removes the documentation and read-md.c fixes. These patches have been submitted separately and approved. This patch is designed to address code that was not being vectorized due to missing widening patterns in the ARM backend. Code such

[gomp4] implicit data mappings of dummy arguments

2015-09-22 Thread Cesar Philippidis
Currently, the gimplifier will incorrectly create implicit firstprivate mappings for pointer variables. That's fine except when the pointer points to a dummy argument. In which case, the gimplifier should check the type of the value being pointed to before deciding on the type of implicit mapping.

Re: [AArch64] Fix vcvt_high_f64_f32 and vcvt_figh_f32_f64 intrinsics.

2015-09-22 Thread Marcus Shawcroft
On 21 September 2015 at 15:38, James Greenhalgh wrote: > --- > gcc/ > > 2015-09-21 James Greenhalgh > > * config/aarch64/aarch64-simd.md > > (aarch64_float_truncate_hi_v4sf): Rewrite as an expand. >

[PATCH] Explicit register earlyclobber fix

2015-09-22 Thread Andrew Jenner
When using an asm register variable as an input or output operand for an inline assembler block, GCC guarantees that the specified register is used for the operand in question (see https://gcc.gnu.org/onlinedocs/gcc/Local-Reg-Vars.html). Together with earlyclobber constraints

Re: ifcvt vs. expand_binop

2015-09-22 Thread Bernd Schmidt
On 09/22/2015 03:35 PM, Oleg Endo wrote: On SH, the result of comparisons etc. is stored in the T_REG. It's a 1 bit reg but described as SImode. To get the T_REG into another reg, there's this insn: (define_insn "movt" [(set (match_operand:SI 0 "arith_reg_dest" "=r")

Re: [PATCH] shrink-wrap: Handle multiple predecessors of prologue

2015-09-22 Thread Segher Boessenkool
On Tue, Sep 22, 2015 at 05:47:25PM +0200, Bernd Schmidt wrote: > On 09/21/2015 04:01 PM, Segher Boessenkool wrote: > >On Mon, Sep 21, 2015 at 01:56:28PM +0200, Bernd Schmidt wrote: > >>>+ basic_block new_bb = create_empty_bb (EXIT_BLOCK_PTR_FOR_FN > >>>(cfun)->prev_bb); > >>>+ BB_COPY_PARTITION

Re: [AArch64/testsuite] Add more TLS local executable testcases

2015-09-22 Thread Marcus Shawcroft
On 26 August 2015 at 14:58, Jiong Wang wrote: > > This patch cover tlsle tiny model tests, tls size truncation for tiny & > small model included also. > > All testcases pass native test. > > OK for trunk? > > 2015-08-26 Jiong Wang > > gcc/testsuite/ >

Re: [PATCH] DWARF support for AIX v3

2015-09-22 Thread Richard Biener
On Mon, Sep 21, 2015 at 5:41 PM, David Edelsohn wrote: > Appended is a patch to support DWARF on AIX and works with GDB and AIX > assembler. The AIX assembler prepends the CU length to the section > and does not want the compiler to provide it, so I need to disable > those

Re: [PATCH tree-inline] do not say "called from here" with UNKNOWN_LOCATION

2015-09-22 Thread Richard Biener
On Tue, Sep 22, 2015 at 2:22 AM, Manuel López-Ibáñez wrote: > On 21 September 2015 at 12:29, Richard Biener > wrote: >> On Mon, Sep 21, 2015 at 11:59 AM, Manuel López-Ibáñez >> wrote: >>> On 21 September 2015 at 10:18,

Re: [PATCH] Fix PR66952

2015-09-22 Thread Richard Biener
On Tue, 22 Sep 2015, Christophe Lyon wrote: > On 23 July 2015 at 13:17, Richard Biener wrote: > > On Thu, 23 Jul 2015, Kyrill Tkachov wrote: > > > >> > >> On 23/07/15 10:02, Andreas Schwab wrote: > >> > Richard Biener writes: > >> > > >> > > Index:

Re: [PATCH tree-inline v2] do not say "called from here" with UNKNOWN_LOCATION

2015-09-22 Thread Richard Biener
On Mon, 21 Sep 2015, Manuel López-Ibáñez wrote: > In https://sourceware.org/ml/libc-alpha/2014-12/msg00300.html, we give a > "called from here" note without actually having a location, which looks > strange. I haven't been able to generate such a testcase. If this happens, > try to at least point

Re: [patch] Pack global state of forwprop to one structure

2015-09-22 Thread Richard Biener
On Mon, 21 Sep 2015, Martin Jambor wrote: > Hi, > > the following patch almost removes the global state of pass_forwprop. > Only almost, because the pass calls fold_const with its own valueize > function which uses lattices, and changing the prototype of valueize > (by adding a void *data

Re: [PATCH][PR67666] Handle single restrict pointer in struct in create_variable_info_for_1

2015-09-22 Thread Richard Biener
On Tue, 22 Sep 2015, Tom de Vries wrote: > Hi, > > Consider this test-case: > > struct ps > { > int *__restrict__ p; > }; > > void > f (struct ps &__restrict__ ps1) > { > *(ps1.p) = 1; > } > > > Atm, the restrict on p has no effect. Now, say we add a field to the struct: > > struct ps >

[PING][PR67476] Add param parloops-schedule

2015-09-22 Thread Tom de Vries
Hi, These two patches: - https://gcc.gnu.org/ml/gcc-patches/2015-09/msg00938.html - https://gcc.gnu.org/ml/gcc-patches/2015-09/msg00940.html add a param parloop-schedule=. Thanks, - Tom

Re: [PATCH, i386] Introduce switch for Skylake Server CPU.

2015-09-22 Thread Kirill Yukhin
Hello Uroš, On 21 Sep 19:19, Uros Bizjak wrote: > On Mon, Sep 21, 2015 at 6:57 PM, Kirill Yukhin > wrote: > > Patch in the bottom. Is it ok? > > Comments inline. > > > -native" > > +native skylake-avx512" > > Please leave x86-64 and native at the last two places. They

Re: [PATCH] DWARF support for AIX v3

2015-09-22 Thread Trevor Saunders
On Tue, Sep 22, 2015 at 03:16:28PM +0200, Richard Biener wrote: > On September 22, 2015 2:38:34 PM GMT+02:00, David Edelsohn > wrote: > >On Tue, Sep 22, 2015 at 4:12 AM, Richard Biener > > wrote: > >> On Mon, Sep 21, 2015 at 5:41 PM, David Edelsohn

ifcvt vs. expand_binop

2015-09-22 Thread Oleg Endo
On SH, the result of comparisons etc. is stored in the T_REG. It's a 1 bit reg but described as SImode. To get the T_REG into another reg, there's this insn: (define_insn "movt" [(set (match_operand:SI 0 "arith_reg_dest" "=r") (match_operand:SI 1 "t_reg_operand"))] "TARGET_SH1"

[RFC] PR tree-optimization/67628: Make tree ifcombine more symmetric and interactions with dom

2015-09-22 Thread Kyrill Tkachov
Hi all, I'm looking into improving usage of aarch64 conditional compare instructions and PR 67628 is one area of improvement I identified. The problem there is different tree-level behaviour for the expressions: (a > b && b <= c) && c > d vs. a > b && (b <= c && c > d) The second variant

[PATCH][PR67671] Handle restrict pointer references as restrict in AA

2015-09-22 Thread Tom de Vries
Hi, Consider this test-case: ... struct ps { int *__restrict__ p; }; f (struct ps &__restrict__ ps1) { *(ps1.p) = 1; } ... Atm (meaning after the fix for PR67666) for this test-case, we register two clique/base annotations, one for the load of pointer ps1.p and one for the store to that

Re: [PATCH, i386] Introduce switch for Skylake Server CPU.

2015-09-22 Thread Uros Bizjak
On Tue, Sep 22, 2015 at 11:31 AM, Kirill Yukhin wrote: > Hello Uroš, > On 21 Sep 19:19, Uros Bizjak wrote: >> On Mon, Sep 21, 2015 at 6:57 PM, Kirill Yukhin >> wrote: >> > Patch in the bottom. Is it ok? >> >> Comments inline. >> >> > -native" >>

Re: [PATCH] PR target/67480: AVX512 bitwise logic insns pattern is incorrect

2015-09-22 Thread Kirill Yukhin
Hello Alexander, On 18 Sep 17:51, Alexander Fomin wrote: > Hi, > On Tue, Sep 08, 2015 at 11:41:50AM +0300, Kirill Yukhin wrote: > > Hi, > > So, here you'll emit, e.g. "pandq %xmm16, %xmm17" > > If think it'll be better to attach AVX-512VL related suffix while > > discriminating > > alternatives.

Re: [PING][PR67476] Add param parloops-schedule

2015-09-22 Thread Bernd Schmidt
On 09/22/2015 09:19 AM, Tom de Vries wrote: These two patches: - https://gcc.gnu.org/ml/gcc-patches/2015-09/msg00938.html - https://gcc.gnu.org/ml/gcc-patches/2015-09/msg00940.html add a param parloop-schedule=. The problem I have when trying to review them

Re: (patch,rfc) s/gimple/gimple */

2015-09-22 Thread Richard Biener
On Mon, Sep 21, 2015 at 9:32 PM, Richard Sandiford wrote: > Richard Biener writes: >> On Fri, Sep 18, 2015 at 3:32 PM, Trevor Saunders >> wrote: >>> On Wed, Sep 16, 2015 at 03:11:14PM -0400, David Malcolm wrote:

Re: (patch,rfc) s/gimple/gimple */

2015-09-22 Thread Richard Biener
On Tue, Sep 22, 2015 at 1:16 PM, Richard Biener wrote: > On Mon, Sep 21, 2015 at 9:32 PM, Richard Sandiford > wrote: >> Richard Biener writes: >>> On Fri, Sep 18, 2015 at 3:32 PM, Trevor Saunders

Re: [PATCH 6/n] OpenMP 4.0 offloading infrastructure: option handling

2015-09-22 Thread Thomas Schwinge
Hi! On Mon, 21 Sep 2015 19:41:59 +0300, Ilya Verbin wrote: > 2015-09-21 18:15 GMT+03:00 Thomas Schwinge : > > (, "--foffload* undocumented", has recently > > been filed.) > > > > (In the following, "intelmic" is short for >

Re: [gomp4] ptx reduction simplification

2015-09-22 Thread Thomas Schwinge
Hi! On Fri, 18 Sep 2015 20:05:48 -0400, Nathan Sidwell wrote: > I've committed this patch to rework and simplify [...] > the reduction lowering hooks. > > The current implementation [...] > [was] overcomplicated in a number of ways. > * omp-low.h (omp_reduction_init_op):

[ubsan PATCH] Fix uninitialized var issue (PR sanitizer/64906)

2015-09-22 Thread Marek Polacek
This fixes sanitizer/64906 by also pre-evaluating OP1. The problem in this testcase is that OP1 is "SAVE_EXPR " which can't be folded any more, but when we're creating the EQ_EXPR -- checking whether this expression equals zero -- it can be folded further to "f == 0". Afterwards we end up with

Re: [gomp4] ptx reduction simplification

2015-09-22 Thread Nathan Sidwell
On 09/22/15 11:10, Thomas Schwinge wrote: Hi! On Fri, 18 Sep 2015 20:05:48 -0400, Nathan Sidwell wrote: I've committed this patch to rework and simplify [...] the reduction lowering hooks. The current implementation [...] [was] overcomplicated in a number of ways.

Re: New post-LTO OpenACC pass

2015-09-22 Thread Nathan Sidwell
On 09/21/15 16:39, Nathan Sidwell wrote: On 09/21/15 16:30, Cesar Philippidis wrote: On 09/21/2015 09:30 AM, Nathan Sidwell wrote: +const pass_data pass_data_oacc_transform = +{ + GIMPLE_PASS, /* type */ + "fold_oacc_transform", /* name */ Want to rename the tree dump file to oacc_xforms

Re: [PATCH][PR67671] Handle restrict pointer references as restrict in AA

2015-09-22 Thread Richard Biener
On Tue, 22 Sep 2015, Tom de Vries wrote: > Hi, > > Consider this test-case: > ... > struct ps > { > int *__restrict__ p; > }; > > f (struct ps &__restrict__ ps1) > { > *(ps1.p) = 1; > } > ... > > Atm (meaning after the fix for PR67666) for this test-case, we register two > clique/base

Re: [PATCH 14/15][ARM/AArch64 Testsuite]Add test of vcvt{,_high}_i{f32_f16,f16_f32}

2015-09-22 Thread Marcus Shawcroft
On 25 August 2015 at 14:57, Alan Lawrence wrote: > Sorry - wrong version posted. The hunk for add_options_for_arm_neon_fp16 has > moved to the previous patch! This version also fixes some whitespace issues. > > gcc/testsuite/ChangeLog: > > *

Re: [PATCH] DWARF support for AIX v3

2015-09-22 Thread David Edelsohn
On Tue, Sep 22, 2015 at 9:54 AM, Trevor Saunders wrote: > On Tue, Sep 22, 2015 at 03:16:28PM +0200, Richard Biener wrote: >> On September 22, 2015 2:38:34 PM GMT+02:00, David Edelsohn >> wrote: >> >On Tue, Sep 22, 2015 at 4:12 AM, Richard Biener >>

[PATCH, nios2] Fix to nios2_legitimize_address

2015-09-22 Thread Chung-Lin Tang
Nios II Linux had a bad TLS relocation generated, exposed by the test case for PR 65771. A fix for this in nios2_legitimize_address() was tested and applied. Chung-Lin 2015-09-22 Chung-Lin Tang * config/nios2/nios2.c (nios2_legitimize_address): When handling

Re: [PATCH 1/3, libgomp] Adjust offload plugin interface for avoiding deadlock on exit

2015-09-22 Thread Chung-Lin Tang
Ping x2. On 2015/9/9 04:08 PM, Chung-Lin Tang wrote: > Ping. > > On 2015/8/27 09:44 PM, Chung-Lin Tang wrote: >> We've discovered that, for several of the libgomp plugin interface routines, >> if the target specific routine calls exit() (usually upon a fatal condition), >> deadlock ensues. We

Re: [PATCH] DWARF support for AIX v3

2015-09-22 Thread Richard Biener
On September 22, 2015 2:38:34 PM GMT+02:00, David Edelsohn wrote: >On Tue, Sep 22, 2015 at 4:12 AM, Richard Biener > wrote: >> On Mon, Sep 21, 2015 at 5:41 PM, David Edelsohn >wrote: >>> Appended is a patch to support DWARF on

[build] Use CRTs provided by Solaris

2015-09-22 Thread Rainer Orth
Solaris 12 (and probably a future Solaris 11 update or SRU) will finally bundle the CRTs (crt1.o, crti.o, crtn.o) required to link executables. Previously, there would be incomplete sets (like SPARC missing crt1.o and gcrt1.o) or inconsistencies and missing features between the versions GCC

Re: [C/C++ PATCH] RFC: Implement -Wduplicated-cond (PR c/64249) (take

2015-09-22 Thread Marek Polacek
On Mon, Sep 21, 2015 at 07:06:01PM +0200, Marek Polacek wrote: > I realized that current patch has a minor deficiency: it will start > a chain even in case the first condition has a side-effect thus the > chain should be invalid. I'll fix this problem soon. I changed my mind, the above mean

Re: [PATCH] DWARF support for AIX v3

2015-09-22 Thread David Edelsohn
On Tue, Sep 22, 2015 at 4:12 AM, Richard Biener wrote: > On Mon, Sep 21, 2015 at 5:41 PM, David Edelsohn wrote: >> Appended is a patch to support DWARF on AIX and works with GDB and AIX >> assembler. The AIX assembler prepends the CU length to the

[build] Support PIE on Solaris

2015-09-22 Thread Rainer Orth
Beyond the reasons for the bundled Solaris CRTs already cited in https://gcc.gnu.org/ml/gcc-patches/2015-09/msg01638.html they need to be PIC to support position independent executables (PIE). While linker support for PIE has existed in Solaris ld since at least Solaris 11.2 and GNU ld

Re: [AArch64] Handle const address in aarch64_print_operand

2015-09-22 Thread Marcus Shawcroft
On 8 September 2015 at 16:03, Jiong Wang wrote: > 2015-09-08 Jiong Wang > > gcc/ > * config/aarch64/aarch64.c (aarch64_print_operand): Add "CONST" > support. OK /Marcus

Re: [Aarch64][target/PR 67143][5.2] Backport correct constraints for atomic operations.

2015-09-22 Thread Marcus Shawcroft
On 9 September 2015 at 12:43, Matthew Wahab wrote: > gcc/ > 2015-09-09 Matthew Wahab > > Backport from mainline > 2015-08-14 Matthew Wahab > > PR target/67143 > *

Re: [PATCH] DWARF support for AIX v3

2015-09-22 Thread David Edelsohn
On Tue, Sep 22, 2015 at 9:16 AM, Richard Biener wrote: > On September 22, 2015 2:38:34 PM GMT+02:00, David Edelsohn > wrote: >>On Tue, Sep 22, 2015 at 4:12 AM, Richard Biener >> wrote: >>> On Mon, Sep 21, 2015 at 5:41

Re: [PATCH] DWARF support for AIX v3

2015-09-22 Thread Trevor Saunders
On Tue, Sep 22, 2015 at 10:09:51AM -0400, David Edelsohn wrote: > On Tue, Sep 22, 2015 at 9:54 AM, Trevor Saunders > wrote: > > On Tue, Sep 22, 2015 at 03:16:28PM +0200, Richard Biener wrote: > >> On September 22, 2015 2:38:34 PM GMT+02:00, David Edelsohn > >>

Re: ifcvt vs. expand_binop

2015-09-22 Thread Kyrill Tkachov
Hi Oleg, On 22/09/15 14:35, Oleg Endo wrote: On SH, the result of comparisons etc. is stored in the T_REG. It's a 1 bit reg but described as SImode. To get the T_REG into another reg, there's this insn: (define_insn "movt" [(set (match_operand:SI 0 "arith_reg_dest" "=r")

Re: [AArch64] Delete aarch64_symbol_context which is not used

2015-09-22 Thread Marcus Shawcroft
On 8 September 2015 at 16:00, Jiong Wang wrote: > > The concept of aarch64_symbol_context is not used in AArch64, this patch > remove it and all relevant code. > > ok for trunk? > > 2015-09-08 Jiong. Wang > > gcc/ > * config/aarch64/aarch64-protos.h

Re: [PATCH, i386, AVX-512] Fix iterator for k, introduce kshift[lr][bwdq].

2015-09-22 Thread Uros Bizjak
On Tue, Sep 22, 2015 at 5:14 PM, Kirill Yukhin wrote: > Hello, > Patch in the bottom fixes iterator for k insns > since QI mode is only available for AVX-512DQ. > > It also adds support for kshift[rl][bwdq]. This patterns > will be used for mask load/store autogeneration

OpenACC subarray data alignment in fortran

2015-09-22 Thread Cesar Philippidis
In both OpenACC and OpenMP, each subarray has at least two data mappings associated with them, one for the pointer and another for the data in the array section (fortan also has a pset mapping). One problem I observed in fortran is that array section data is casted to char *. Consequently, when

Re: ifcvt vs. expand_binop

2015-09-22 Thread Oleg Endo
Hi, On Tue, 2015-09-22 at 15:21 +0100, Kyrill Tkachov wrote: > where does noce_emit_store_flag call expand_simple_binop? > Do you mean the code following the call to noce_emit_store_flag > in noce_try_store_flag_constants? (I suspect that's the code that > will get triggered for your testcase)

C++ PATCH to disconnect -Wabi= from -fcompat-version=

2015-09-22 Thread Jason Merrill
While looking at PR 58074, I found that I wanted to be able to refer to different ABI compatibility levels for warnings vs. mangling compatibility aliases. Under this patch, if only one is specified it still implies the other, but if both are specified they can be different. I've also

[PATCH, i386, AVX-512] Fix iterator for k, introduce kshift[lr][bwdq].

2015-09-22 Thread Kirill Yukhin
Hello, Patch in the bottom fixes iterator for k insns since QI mode is only available for AVX-512DQ. It also adds support for kshift[rl][bwdq]. This patterns will be used for mask load/store autogeneration on which Ilya Enkovich is working on. gcc/ * config/i386/i386.md (define_code_attr

[gomp4] Another oacc reduction simplification

2015-09-22 Thread Nathan Sidwell
I've committed this patch, which simplifies the generation of openacc reduction code. Primarily three changes 1) Don't have a fake gang reduction outside of worker & vector loops. Deal with the receiver object directly. I.e. 'ref_to_res' need not be a null pointer for vector and worker

Re: [PATCH] DWARF support for AIX v3

2015-09-22 Thread Richard Henderson
On 09/21/2015 08:41 AM, David Edelsohn wrote: > +#ifndef XCOFF_DEBUGGING_INFO >if (DWARF_INITIAL_LENGTH_SIZE - DWARF_OFFSET_SIZE == 4) > dw2_asm_output_data (4, 0x, >"Initial length escape value indicating 64-bit DWARF extension"); >dw2_asm_output_data

Re: [PATCH] shrink-wrap: Handle multiple predecessors of prologue

2015-09-22 Thread Bernd Schmidt
On 09/21/2015 04:01 PM, Segher Boessenkool wrote: On Mon, Sep 21, 2015 at 01:56:28PM +0200, Bernd Schmidt wrote: + basic_block new_bb = create_empty_bb (EXIT_BLOCK_PTR_FOR_FN (cfun)->prev_bb); + BB_COPY_PARTITION (new_bb, pro); [...] + *entry_edge = make_single_succ_edge (new_bb, pro,

Re: [PATCH] Fix 67064 - Register asm variable broken

2015-09-22 Thread Jason Merrill
On 09/16/2015 10:24 AM, Andres Tiraboschi wrote: Hi, this patch fix the following bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67064 for gcc 5.2 It passes all the gcc tests except for this: FAIL: g++.dg/cpp1y/auto-fn15.C -std=gnu++14 (test for excess errors) Yep. The test is verifying