Re: [gomp4] Redesign oacc_parallel launch API

2015-08-06 Thread Cesar Philippidis
On 07/28/2015 09:52 AM, Nathan Sidwell wrote: I've committed this patch to the gomp4 branch to redo the launch API. I'll post a version for trunk once the versioning patch gets approved committed. This changes the API in a number of ways, allowing device-specific knowledge to be moved

Re: offload data version number

2015-08-06 Thread Nathan Sidwell
Ping? 1) updated version patch https://gcc.gnu.org/ml/gcc-patches/2015-08/msg00010.html 2) https://gcc.gnu.org/ml/gcc-patches/2015-08/msg00204.html An infrastructure piece from Thomas, who noticed liboffloadmic didn't have the include paths to #include gomp-constants.h. nathan On 08/02/15

Re: [PATCH 4/4] define ASM_OUTPUT_LABEL to the name of a function

2015-08-06 Thread Richard Sandiford
David Malcolm dmalc...@redhat.com writes: On Wed, 2015-08-05 at 16:22 -0400, Trevor Saunders wrote: On Wed, Aug 05, 2015 at 11:34:28AM -0400, David Malcolm wrote: On Wed, 2015-08-05 at 11:28 -0400, David Malcolm wrote: On Wed, 2015-08-05 at 13:47 +0200, Richard Biener wrote: On Wed, Aug

C++ PATCH for c++/66533 (ICE with generic lambda)

2015-08-06 Thread Jason Merrill
In this testcase a tentative parse was failing, and after an error we called cp_parser_skip_to_end_of_statement, which messes with generic function scope. So we shouldn't call that function during tentative parsing; we don't need to worry about error recovery then, anyway. Tested

Re: [gomp4] fix spinlock

2015-08-06 Thread Nathan Sidwell
On 08/06/15 17:56, Cesar Philippidis wrote: On 08/06/2015 01:41 AM, Nathan Sidwell wrote: I've committed this to fix the spinlock problem Cesar fell over. While there I added more checking on the worker dimension. I hit a couple of more bugs with the spinlocks. First, the address space

Re: [gomp4] Redesign oacc_parallel launch API

2015-08-06 Thread Nathan Sidwell
On 08/06/15 18:33, Cesar Philippidis wrote: Looking at set_oacc_fn_attrib, it appears that const values are also considered dynamic. See the attached test case more more info. Is that the expected behavior? If not, I could take a look at this after I finished my reduction patch. It's annoying

Re: [PR66776][PATCH][AARCH64] Add cmovdi_insn_uxtw pattern.

2015-08-06 Thread Renlin Li
Hi Pinski, On 06/08/15 10:48, pins...@gmail.com wrote: On Aug 6, 2015, at 11:40 AM, Renlin Li renlin...@arm.com wrote: Hi all, This is a simple patch to add a new cmovdi_insn_uxtw rtx pattern to aarch64 backend. For the following simple test case: unsigned long foo (unsigned int a,

*ping* Re: [Patch, fortran] merge two gfc_trans_scalar_assign flags

2015-08-06 Thread Mikael Morin
Le 19/04/2015 16:54, Mikael Morin a écrit : Hello, while working on pr65792, I noticed that gfc_trans_scalar_assign's l_is_temp and dealloc flags are used only once, and at the same place. This patch merges them together. The calls are changed from gfc_trans_scalar_assign (...blah...,

[Committed] S/390: Add missing doc for -mhtm, -mvx, and -mzvector

2015-08-06 Thread Andreas Krebbel
Hi, the attached patch adds documentation for three options. Committed to mainline. Bye, -Andreas- gcc/ChangeLog: 2015-08-06 Andreas Krebbel kreb...@linux.vnet.ibm.com * config/s390/s390.opt: Clarify description for -mzvector * doc/invoke.texi: Add documentation for

[Patch, Fortran, 66927, v1] [6 Regression] ICE in gfc_conf_procedure_call

2015-08-06 Thread Andre Vehreschild
Dear all, the attached patch fixes a regression introduced by my patches for the F2008-style allocate(). In this case a function returning an array of BT_CLASS objects can not be conv'ed using conv_expr_descriptor, but needs to be conv_expr_reference()'ed, because the _data component has the

Re: [libquadmath, patch] Add logbq() to libquadmath

2015-08-06 Thread FX
With the updated patch the test gfortran.dg/ieee/large_1.f90 compiles, but fails at run time due to the lines if (.not. ieee_support_underflow_control(x1)) call abort and if (.not. ieee_support_underflow_control(x2)) call abort IIRC Uros said that underflow id not supported for

Re: [fortran,patch] Extend IEEE support to all real kinds

2015-08-06 Thread FX
Can you please also introduce tests for ieee exceptions for long double and __float128 types (as is done for real and double in gfortran.dg/ieee/ieee_1.F90) as well as test for supported rounding modes as done for real and double in gfortran.dg/ieee/rounding_1.f90 ? On x86_64, these new

[PR66776][PATCH][AARCH64] Add cmovdi_insn_uxtw pattern.

2015-08-06 Thread Renlin Li
Hi all, This is a simple patch to add a new cmovdi_insn_uxtw rtx pattern to aarch64 backend. For the following simple test case: unsigned long foo (unsigned int a, unsigned int b, unsigned int c) { return a ? b : c; } With this new pattern, the new code-generation will be: cmpw0,

Re: [PR66776][PATCH][AARCH64] Add cmovdi_insn_uxtw pattern.

2015-08-06 Thread pinskia
On Aug 6, 2015, at 11:40 AM, Renlin Li renlin...@arm.com wrote: Hi all, This is a simple patch to add a new cmovdi_insn_uxtw rtx pattern to aarch64 backend. For the following simple test case: unsigned long foo (unsigned int a, unsigned int b, unsigned int c) { return a ? b

*ping* Re: [Patch, fortran] PR66929 fix iso_varying_string ICE

2015-08-06 Thread Mikael Morin
Le 25/07/2015 20:33, Mikael Morin a écrit : Le 21/07/2015 23:10, Paul Richard Thomas a écrit : On 21 July 2015 at 14:53, Mikael Morin mikael.mo...@sfr.fr wrote: Hello, The fix for PR61831 committed recently [1] introduced/uncovered a NULLL pointer dereference with iso_varying_string, because

*ping* Re: [Patch] Show address operator ('') in front of strings and functions in dumps

2015-08-06 Thread Mikael Morin
Le 21/07/2015 13:52, Mikael Morin a écrit : Hello, this is a followup to the bug report/patch at: https://gcc.gnu.org/ml/gcc-patches/2015-07/msg01062.html It's a fortran quite unimportant bug, so I bet nobody cares. However, the bug could have been detected when the co_reduce support was

Re: *ping* Re: [Patch, fortran] merge two gfc_trans_scalar_assign flags

2015-08-06 Thread Paul Richard Thomas
Dear Mikael, Well spotted! This is fine for trunk, since it is 'obvious' once seen. Cheers Paul On 6 August 2015 at 12:07, Mikael Morin mikael.mo...@sfr.fr wrote: Le 19/04/2015 16:54, Mikael Morin a écrit : Hello, while working on pr65792, I noticed that gfc_trans_scalar_assign's

Re: *ping* Re: [Patch, fortran] PR66929 fix iso_varying_string ICE

2015-08-06 Thread Paul Richard Thomas
Hi Mikael, This is fine for backporting. Thanks for doing this. Paul On 6 August 2015 at 12:09, Mikael Morin mikael.mo...@sfr.fr wrote: Le 25/07/2015 20:33, Mikael Morin a écrit : Le 21/07/2015 23:10, Paul Richard Thomas a écrit : On 21 July 2015 at 14:53, Mikael Morin mikael.mo...@sfr.fr

[Committed] S/390: Fix dwarf reg size table for -m31 -mzarch

2015-08-06 Thread Andreas Krebbel
Hi, this fixes an inconsistency with the dwarf reg size table when using -m31 -mzarch. In this mode we use 64 bit register while still adhering to the 31 bit ABI. This changed some of the GPR sizes returned by __builtin_init_dwarf_reg_size_table. It is not a big problem since it only changed

Re: *ping* Re: patch fortran, pr 59746, internal compiler error : segmentation fault

2015-08-06 Thread Paul Richard Thomas
Hi Mikael, This is OK for trunk. Thanks for resurrecting the patch. Cheers Paul On 6 August 2015 at 12:11, Mikael Morin mikael.mo...@sfr.fr wrote: Le 29/07/2015 20:35, Mikael Morin a écrit : Hello, I'm unburrying the patch from the thread starting at:

[Committed] S/390: Clobber VRs in __builtin_tbegin

2015-08-06 Thread Andreas Krebbel
Hi, a transaction rollback does not restore the contents of vector registers. So we have to add clobbers for them as we are doing already for the FPRs. Bootstrap and regression testing is fine on z13, zEC12, and z196 with 31 and 64 bit. Committed to mainline. Bye, -Andreas- gcc/ChangeLog:

[PING][Patch] Add support for IEEE-conformant versions of scalar fmin* and fmax*

2015-08-06 Thread David Sherwood
Hi, Sorry to bother people again. Is this OK to go now? Thanks! David. On Mon, 29 Jun 2015, David Sherwood wrote: Hi, I have added new STRICT_MAX_EXPR and STRICT_MIN_EXPR expressions to support the IEEE versions of fmin and fmax. This is done by recognising the math

*ping* Re: patch fortran, pr 59746, internal compiler error : segmentation fault

2015-08-06 Thread Mikael Morin
Le 29/07/2015 20:35, Mikael Morin a écrit : Hello, I'm unburrying the patch from the thread starting at: https://gcc.gnu.org/ml/gcc-patches/2014-03/msg00439.html I provide the patch in two flavors read-only (without whitespace changes) and write-only (with them). This has been tested on

[Patch] sext_hwi: Avoid left shift of negative value undefined behaviour

2015-08-06 Thread Mikael Morin
Hello, this avoids an error found with bootstrap-ubsan. Regression tested on x86_64-unknown-linux-gnu. OK for trunk? Mikael 2015-08-05 Mikael Morin mik...@gcc.gnu.org * hwint.h (sext_hwi): Rewrite without undefined behaviour on negative SRC. diff --git a/gcc/hwint.h

[PATCH, committed] jit.dg/test-benchmark.c: add a summary of timings

2015-08-06 Thread David Malcolm
Committed to trunk as r226697. Backported to gcc-5-branch as r226698. gcc/testsuite/ChangeLog: * jit.dg/test-benchmark.c (main): Record all elapsed times at each optimization level, and print a summary at the end. --- gcc/testsuite/jit.dg/test-benchmark.c | 18 +++---

Re: [fortran,patch] Extend IEEE support to all real kinds

2015-08-06 Thread Uros Bizjak
On Thu, Aug 6, 2015 at 11:26 AM, FX fxcoud...@gmail.com wrote: Can you please also introduce tests for ieee exceptions for long double and __float128 types (as is done for real and double in gfortran.dg/ieee/ieee_1.F90) as well as test for supported rounding modes as done for real and double

Re: [PATCH 4/4] define ASM_OUTPUT_LABEL to the name of a function

2015-08-06 Thread Trevor Saunders
On Thu, Aug 06, 2015 at 08:36:36PM +0100, Richard Sandiford wrote: David Malcolm dmalc...@redhat.com writes: On Wed, 2015-08-05 at 16:22 -0400, Trevor Saunders wrote: On Wed, Aug 05, 2015 at 11:34:28AM -0400, David Malcolm wrote: On Wed, 2015-08-05 at 11:28 -0400, David Malcolm wrote:

Re: [PATCH] toplevel: fixes for in-tree libiconv

2015-08-06 Thread DJ Delorie
I have applied and committed these patches, both in gcc and binutils-gdb.

[PATCH] cfns: fix mismatch in gnu_inline attributes

2015-08-06 Thread Mike Frysinger
Since the 3.0.3 release of gperf (made in May 2007), the generated func has had the gnu_inline attribute applied to it. The gcc source however has not been updated to include that which has lead to a mismatch. In practice, this hasn't been an issue for two reasons: (1) Before gcc-5, the default

Huge C++ PATCH to merge c++-concepts branch

2015-08-06 Thread Jason Merrill
I've been banging on the concepts branch for the past month after Andrew told me it was about ready to merge, fixing bugs and streamlining things there to get familiar with the code while I could still look at it as a whole rather than mixed in with the rest of the compiler. But I think I've

Re: [gomp4] Worker reduction builtin

2015-08-06 Thread Cesar Philippidis
On 08/04/2015 04:50 AM, Nathan Sidwell wrote: +/* Worker reduction address expander. */ +static rtx +nvptx_expand_work_red_addr (tree exp, rtx target, + machine_mode ARG_UNUSED (mode), + int ignore) { - return nvptx_expand_lock_unlock

Re: [PATCH] Simple optimization for MASK_STORE.

2015-08-06 Thread Yuri Rumyantsev
HI All, Here is updated patch which implements Richard proposal to use vector comparison with boolean result instead of target hook. Support for it was added to ix86_expand_branch. Any comments will be appreciated. Bootstrap and regression testing did not show any new failures. ChangeLog:

Re: [Patch, Fortran, 66927, v1] [6 Regression] ICE in gfc_conf_procedure_call

2015-08-06 Thread Mikael Morin
Le 06/08/2015 12:53, Andre Vehreschild a écrit : Dear all, the attached patch fixes a regression introduced by my patches for the F2008-style allocate(). In this case a function returning an array of BT_CLASS objects can not be conv'ed using conv_expr_descriptor, but needs to be

Re: [PATCH, i386] Disable AVX-512VL insns for scalar mode operands on -march=knl.

2015-08-06 Thread Uros Bizjak
On Thu, Aug 6, 2015 at 9:27 AM, Uros Bizjak ubiz...@gmail.com wrote: Is it ok to backport the patch to gcc-5-branch? A minor attribute fix is needed, please update type attribute of *vec_concatv2df for added alternatives, also for mainline. Fixed in mainline with the following patch:

RE: [RFC] [Patch]: Try and vectorize with shift for mult expr with power 2 integer constant.

2015-08-06 Thread Kumar, Venkataramanan
Hi Richard, -Original Message- From: Richard Biener [mailto:richard.guent...@gmail.com] Sent: Wednesday, August 05, 2015 5:11 PM To: Kumar, Venkataramanan Cc: Jeff Law; Jakub Jelinek; gcc-patches@gcc.gnu.org Subject: Re: [RFC] [Patch]: Try and vectorize with shift for mult expr

Re: [Patch, Fortran, 66927, v1] [6 Regression] ICE in gfc_conf_procedure_call

2015-08-06 Thread Andre Vehreschild
On Thu, 6 Aug 2015 14:00:56 +0200 Mikael Morin mikael.mo...@sfr.fr wrote: Le 06/08/2015 12:53, Andre Vehreschild a écrit : Dear all, the attached patch fixes a regression introduced by my patches for the F2008-style allocate(). In this case a function returning an array of BT_CLASS

[PATCH] S/390: Disallow SImode addresses in 64 bit

2015-08-06 Thread Andreas Krebbel
Hi, the attached patch is an attempt to fix the problem reported here: https://gcc.gnu.org/ml/gcc/2015-05/msg00305.html The problem is that we have address style operands as shift count operands. In order to benefit from reloading e.g. for invalid base registers (r0) we mark the respective

Re: s390: SImode pointers vs LR

2015-08-06 Thread Andreas Krebbel
On Tue, Jun 02, 2015 at 05:32:02PM +0200, Andreas Krebbel wrote: ... +(define_insn *shiftmode3_imm + [(set (match_operand:GPR 0 register_operand =d) +(SHIFT:GPR (match_operand:GPR 1 register_operand d0) + (match_operand 2 immediate_operand J)))] + +

Re: [PATCH 4/4] define ASM_OUTPUT_LABEL to the name of a function

2015-08-06 Thread David Malcolm
On Wed, 2015-08-05 at 16:22 -0400, Trevor Saunders wrote: On Wed, Aug 05, 2015 at 11:34:28AM -0400, David Malcolm wrote: On Wed, 2015-08-05 at 11:28 -0400, David Malcolm wrote: On Wed, 2015-08-05 at 13:47 +0200, Richard Biener wrote: On Wed, Aug 5, 2015 at 12:57 PM, Trevor Saunders

Fix offloading machine mode stream reading (was: Regression in target MIC compiler)

2015-08-06 Thread Thomas Schwinge
Hi! On Wed, 5 Aug 2015 15:10:40 +0100, David Sherwood david.sherw...@arm.com wrote: In lto_input_mode_table there is the following line of code: machine_mode inner = (machine_mode) table[bp_unpack_value (bp, 8)]; Is this right? In lto_write_mode_table this inner mode is written out

[v3 patch] regex refactoring - pull out common data members as _Context

2015-08-06 Thread Tim Shen
In next few weeks I'm gonna sending patches for refactoring regex. The goal is to make the gigantic _Executor class into several smaller ones and hopefully more readable. After that, there are several correctness/performance issues to be fixed. We may also need more documentation, but

[gomp4] fix spinlock

2015-08-06 Thread Nathan Sidwell
I've committed this to fix the spinlock problem Cesar fell over. While there I added more checking on the worker dimension. nathan 2015-08-06 Nathan Sidwell nat...@codesourcery.com * config/nvptx/nvptx.c (nvptx_expand_lock_unlock): Create label. (nvptx_validate_dims): Check worker

Fwd: [PATCH 3/4] Add libgomp plugin for Intel MIC

2015-08-06 Thread Maxim Blumental
Applied the idea with python script alternative. Review, please. 2015-07-28 Maxim Blumenthal maxim.blument...@intel.com * configure.ac: Add a check for xxd or python presence when the target is intelmic or intelmicemul. * configure: Regenerate. *

[PATCH 0/2] Embed driver within libgccjit

2015-08-06 Thread David Malcolm
The attached two patches are an updated version of this patch sent in June: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00123.html [PATCH 02/16] gcc: Embed the driver in-process within libgccjit (an updated version of [patch 01/16] from that kit is in trunk as of r226530;

C++ PATCH for c++/67130 and 67131 (variable template-id issues)

2015-08-06 Thread Jason Merrill
These were introduced by my patch yesterday that keeps TEMPLATE_ID_EXPRs around longer for variable templates, so more places need to deal with them. Tested x86_64-pc-linux-gnu, applying to trunk and 5. commit 8814d2ca8d702ddca8c3e315f08275dbe3271cd6 Author: Jason Merrill ja...@redhat.com Date:

[PATCH 1/2] driver: support state cleanup

2015-08-06 Thread David Malcolm
This patch implements enough state cleanup with the driver to allow it to be linked within libgccjit.so and repeatedly run in-process. The state cleanup is optional and is only performed by libgccjit. When run within the driver executables, the code does the same as before. This corresponds to

[PATCH 2/2] jit: use an embedded copy of the driver

2015-08-06 Thread David Malcolm
This patch requires the previous one, and would be committed with it; I've split them up for ease of review. This is an updated version of the second part of: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00123.html with various cleanups; in particular, providing a boolean option to support

[fortran,patch] Allow some IEEE functions in constant and specification expressions

2015-08-06 Thread FX
The attached patch fixes the only remaining IEEE bug (to my knowledge) in gfortran. A Fortran 2008 interpretation request was submitted two years ago about which of the IEEE functions were supposed to be used in constant and specification expressions. The interp, voted on by J3 in Nov 2014,

[COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-06 Thread Jiong Wang
James Greenhalgh writes: On Tue, Jul 28, 2015 at 02:12:36PM +0100, Jiong Wang wrote: The instruction sequences for preparing argument for TLS descriptor runtime resolver and the later function call to resolver can actually be hoisted out of the loop. Currently we can't because we have

[COMMITTED][AArch64] Tighten direct call pattern to repair -fno-plt

2015-08-06 Thread Jiong Wang
James Greenhalgh writes: On Thu, Jul 16, 2015 at 11:21:25AM +0100, Jiong Wang wrote: Jeff Law writes: On 06/23/2015 02:29 AM, Ramana Radhakrishnan wrote: If you try disabling the REG_EQUAL note generation [*], you'll probably find a performance regression on arm32 (and probably

[COMMITTED][AArch64][sibcall]Tighten direct call pattern to repair -fno-plt

2015-08-06 Thread Jiong Wang
James Greenhalgh writes: On Tue, Jul 21, 2015 at 01:42:35PM +0100, Jiong Wang wrote: Jiong Wang writes: Alexander Monakov writes: Attachment is the patch which repair -fno-plt support for AArch64. aarch64_is_noplt_call_p will only be true if: * gcc is generating position

Re: [PATCH 9/15][AArch64] vld{2,3,4}{,_lane,_dup}, vcombine, vcreate

2015-08-06 Thread Alan Lawrence
Alan Lawrence wrote: James Greenhalgh wrote: Hi Alan, The arm_neon.h portion of this patch does not apply after Charles' recent changes. Could you please rebase and resubmit the patch for review? Thanks, James Ah, indeed, thanks. Here's a rebased version, using Charles' new versions of

Re: [PATCH, i386] Disable AVX-512VL insns for scalar mode operands on -march=knl.

2015-08-06 Thread Uros Bizjak
On Wed, Aug 5, 2015 at 10:07 AM, Kirill Yukhin kirill.yuk...@gmail.com wrote: Hello, Is it ok to backport the patch to gcc-5-branch? A minor attribute fix is needed, please update type attribute of *vec_concatv2df for added alternatives, also for mainline. Otherwise, the patch looks safe, so

[gomp4] fork/join target hook

2015-08-06 Thread Nathan Sidwell
I realized other targets might need to do different things with the openacc fork and join buitins. I created a new target hook and default implementation. The default deletes the internal functions if there is no RTL expander for them. nathan 2015-08-06 Nathan Sidwell

Re: [gomp4] fix spinlock

2015-08-06 Thread Cesar Philippidis
On 08/06/2015 01:41 AM, Nathan Sidwell wrote: I've committed this to fix the spinlock problem Cesar fell over. While there I added more checking on the worker dimension. I hit a couple of more bugs with the spinlocks. First, the address space argument to membar wasn't being handled properly.