Re: [PATCH] [AArch64, NEON] Improve vpmaxX & vpminX intrinsics

2014-12-09 Thread Yangfei (Felix)
> On 28 November 2014 at 09:23, Yangfei (Felix) wrote: > > Hi, > > This patch converts vpmaxX & vpminX intrinsics to use builtin functions > instead of the previous inline assembly syntax. > > Regtested with aarch64-linux-gnu on QEMU. Also passed the glorious > testsuite of Christophe Lyon. >

Re: [PATCH] [AArch64, NEON] Improve vpmaxX & vpminX intrinsics

2014-12-09 Thread Yangfei (Felix)
> You'll need to rebase over Alan Lawrance's patch. > https://gcc.gnu.org/ml/gcc-patches/2014-12/msg00279.html Yes, see my new patch: https://gcc.gnu.org/ml/gcc-patches/2014-12/msg00750.html > > +;; Pairwise Integer Max/Min operations. > > +(define_insn "aarch64_p" > > + [(set (match_operand:VQ_

Re: [PATCH, MPX runtime 1/2] Integrate MPX runtime library

2014-12-09 Thread Ilya Enkovich
On 24 Nov 17:02, Ilya Enkovich wrote: > > Right. This works for both top level and multilib checks because failing > test is used and CC is usually not set when it's called by the top level > configure. If we configure with CC=... then it may go wrong. I left only > target check in configure

Re: [PATCH, MPX wrappers 1/3] Add MPX wrappers library

2014-12-09 Thread Ilya Enkovich
On 05 Dec 15:52, Jeff Law wrote: > On 12/03/14 07:28, Ilya Enkovich wrote: > >>> #ifndef MPX_SPEC > >>> #define MPX_SPEC "\ > >>>-%{!nostdlib:%{!nodefaultlibs:" LIBMPX_SPEC "}}" > >>>+%{!nostdlib:%{!nodefaultlibs:" LIBMPX_SPEC LIBMPXWRAPPERS_SPEC "}}" > >>> #endif > >> > >>Ugh. Somehow I mis

[PING ^ 3] [RFC PATCH, AARCH64] Add support for -mlong-calls option

2014-12-09 Thread Yangfei (Felix)
Hi, This is a pin for: https://gcc.gnu.org/ml/gcc-patches/2014-11/msg02258.html Thanks.

Re: [PATCH] Fix broadcast from scalar patterns (PR target/63594)

2014-12-09 Thread Uros Bizjak
On Mon, Dec 8, 2014 at 10:42 PM, Jakub Jelinek wrote: > Hi! > > This patch attempts to fix > (set (reg:V*) (vec_duplicate:V* (reg/mem:))) > patterns. One issue is that there were separate patterns for > broadcast from gpr and separate patterns for broadcast from memory > (and vector reg), that is

Re: [PATCH, x86] Fix pblendv expand.

2014-12-09 Thread Uros Bizjak
On Tue, Dec 9, 2014 at 12:33 AM, Evgeny Stupachenko wrote: > The patch fix pblendv expand. > The bug was uncovered when permutation operands are constants. > In this case we init target register for expand_vec_perm_1 with > constant and then rewrite the target with constant for > expand_vec_perm_

Re: [PATCH] Mark explicit decls as implicit when we've seen a prototype

2014-12-09 Thread Richard Biener
On Mon, 8 Dec 2014, Joseph Myers wrote: > On Mon, 8 Dec 2014, Richard Biener wrote: > > > The alternative is to decide "used" in the middle-end at one point, > > for example at the end of all_lowering_passes where hopefully > > we have constant folded and removed dead code enough. We can also >

[PATCH, trivial] [AArch64] Remove declaration of removed function from aarch64-protos.h

2014-12-09 Thread Yangfei (Felix)
The definition of function aarch64_function_profiler is removed since GCC-4.9. But the declaration is still there in aarch64-protos.h. So remove it. OK for the trunk? Index: gcc/ChangeLog === --- gcc/ChangeLog (revision 218

Re: [PATCH, x86] Fix pblendv expand.

2014-12-09 Thread Uros Bizjak
On Tue, Dec 9, 2014 at 9:57 AM, Uros Bizjak wrote: >> The patch fix pblendv expand. >> The bug was uncovered when permutation operands are constants. >> In this case we init target register for expand_vec_perm_1 with >> constant and then rewrite the target with constant for >> expand_vec_perm_pbl

[PATCH] Fix half of PR64191

2014-12-09 Thread Richard Biener
This avoids vectorizing empty loops that only contain an indirect clobber. The real bug of course is that we don't remove the loop in the first place (but we might not able to prove it terminates). Still vectorizing it adds additional prologue/epilogue loops that only convolutes the final code we

Re: [PATCH] Fix broadcast from scalar patterns (PR target/63594)

2014-12-09 Thread Jakub Jelinek
On Tue, Dec 09, 2014 at 09:49:17AM +0100, Uros Bizjak wrote: > > (define_insn "_vec_dup_gpr" > > - [(set (match_operand:VI48_AVX512VL 0 "register_operand" "=v") > > - (vec_duplicate:VI48_AVX512VL > > - (match_operand: 1 "register_operand" "r")))] > > - "TARGET_AVX512F && (mode != D

Re: [RFC, PATCH, fortran] PR fortran/60255 Deferred character length

2014-12-09 Thread Andre Vehreschild
Hi Paul, > s/furure/future/ :-) Hups, fixed. > Why are you using a double underscore in get__len_component? Because the component is called _len. The routine should be called "get _len component", but spaces aren't allowed :-) Anyways, does this violate some style guide? Should I remove one of

RE: [PATCH] Fix PR 61225

2014-12-09 Thread Zhenqiang Chen
> -Original Message- > From: Jeff Law [mailto:l...@redhat.com] > Sent: Tuesday, December 09, 2014 5:29 AM > To: Zhenqiang Chen > Cc: Steven Bosscher; gcc-patches@gcc.gnu.org; Jakub Jelinek > Subject: Re: [PATCH] Fix PR 61225 > > On 12/04/14 01:43, Zhenqiang Chen wrote: > >>> > > > >>> > >

Re: [testsuite patch] avoid test when compile options is conflict with default mthumb

2014-12-09 Thread Mike Stump
On Dec 8, 2014, at 7:06 PM, Wang Deqiang wrote: > This is a ping for > > https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01049.html Seems reasonable enough. I was hoping the arm folks would chime in, we should have enough of them to review. Let’s given them two more days, and if no comments, O

Re: locales fixes

2014-12-09 Thread Jonathan Wakely
On 08/12/14 23:53 +0100, François Dumont wrote: After having installed all necessary locales on my system I end up with 4 failures. Here is a patch to fix them all. Did you discover why only you are seeing failures? The whole testsuite passes for me, with glibc 2.18, including the tests you

Re: [PATCH] Fix broadcast from scalar patterns (PR target/63594)

2014-12-09 Thread Uros Bizjak
On Tue, Dec 9, 2014 at 10:17 AM, Jakub Jelinek wrote: > On Tue, Dec 09, 2014 at 09:49:17AM +0100, Uros Bizjak wrote: >> > (define_insn "_vec_dup_gpr" >> > - [(set (match_operand:VI48_AVX512VL 0 "register_operand" "=v") >> > - (vec_duplicate:VI48_AVX512VL >> > - (match_operand: 1 "r

Re: [PATCH, trivial] [AArch64] Remove declaration of removed function from aarch64-protos.h

2014-12-09 Thread Richard Earnshaw
On 09/12/14 08:59, Yangfei (Felix) wrote: > The definition of function aarch64_function_profiler is removed since > GCC-4.9. > But the declaration is still there in aarch64-protos.h. So remove it. > OK for the trunk? > > > Index: gcc/ChangeLog > ==

[PATCH][libstdc++][testsuite] Mark as UNSUPPORTED tests that don't fit into tiny memory model

2014-12-09 Thread Kyrill Tkachov
Hi all, There are a few libstdc++ that don't fit into memory when the -mcmodel=tiny option is used. For example 25_algorithms/random_shuffle/1.cc on aarch64 is a 5.5M binary on aarch64 with -mcmodel=small. In the gcc and g++ testsuite we already catch such cases and mark them as UNSUPPORTED.

Re: Fix libgomp crash without TLS (PR42616)

2014-12-09 Thread Varvara Rainchik
Can we instead of adding new macroses in config/tls.m4 use something like that in libgomp: #if defined (HAVE_TLS) && defined (USE_EMUTLS) (with GCC_CHECK_EMUTLS in libgomp/configure.ac)? 2014-12-08 19:28 GMT+03:00 Jakub Jelinek : > On Mon, Dec 08, 2014 at 07:01:09PM +0300, Varvara Rainchik wrote

[patch] libstdc++/64203 fix for bare-metal targets

2014-12-09 Thread Jonathan Wakely
Tested x86_64-linux, committed to trunk and the 4.9 branch. commit 6e201632e6b99a8381ec973ae77a9b4e1db255d7 Author: Jonathan Wakely Date: Mon Dec 8 16:02:48 2014 + PR libstdc++/64203 * include/std/shared_mutex: Fix preprocessor conditions. * testsuite/experimental/feat-cxx14

[PATCH] Fix PR64199

2014-12-09 Thread Richard Biener
Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-12-09 Richard Biener PR middle-end/64199 * fold-const.c (fold_binary_loc): Use TREE_OVERFLOW_P. * gcc.dg/torture/pr64199.c: New testcase. Index: gcc/fold-const.c

Re: Fix libgomp crash without TLS (PR42616)

2014-12-09 Thread Jakub Jelinek
On Tue, Dec 09, 2014 at 02:49:44PM +0300, Varvara Rainchik wrote: > Can we instead of adding new macroses in config/tls.m4 use something > like that in libgomp: > > #if defined (HAVE_TLS) && defined (USE_EMUTLS) > > (with GCC_CHECK_EMUTLS in libgomp/configure.ac)? That would be fine too.

Re: [PATCH 3/n] OpenMP 4.0 offloading infrastructure: offload tables

2014-12-09 Thread Ilya Verbin
On 04 Dec 20:52, Jakub Jelinek wrote: > On Thu, Dec 04, 2014 at 10:35:19PM +0300, Ilya Verbin wrote: > > This issue can be resolved by forcing output of such variables. > > Is this fix ok? Should I add a testcase? > > Yes, with proper ChangeLog. Yes. Here is updated patch, ok to commit? Howeve

[Android] Stop unconditional disabling of ifuncs for Bionic #2

2014-12-09 Thread Alexander Ivchenko
Hi, Whether the *linux* target supports ifuncs or not is defined here: linux_has_ifunc_p (void) { return OPTION_BIONIC ? false : HAVE_GNU_INDIRECT_FUNCTION; } Bionic right now supports indirect functions, but there is no way to notify the compiler about that (For Android OPTION_BIONIC is alway

[AArch64, NEON] Improve vmulX intrinsics

2014-12-09 Thread Jiangjiji
Hi, This patch converts more intrinsics to use builtin functions instead of the previous inline assembly syntax. Passed the glorious testsuite of Christophe Lyon. Three testcases are added for the testing of intriniscs which are not covered by the testsuite: gcc.target/aarch64

Re: match.pd tweaks for vectors and issues with HONOR_NANS

2014-12-09 Thread Richard Biener
On Mon, Dec 8, 2014 at 3:45 PM, Marc Glisse wrote: > On Tue, 18 Nov 2014, Richard Biener wrote: > >>> I'll try to replace some more TYPE_MODE during stage3... >> >> >> Btw, a convenience would be to be able to write >> >> HONOR_NANS (type) >> >> thus effectively make HONOR_* inline functions with

Re: [PATCH 2/3] Extended if-conversion

2014-12-09 Thread Yuri Rumyantsev
Richard, Here is updated patch2 with the following changes: 1. Delete functions phi_has_two_different_args and find_insertion_point. 2. Use only one function for extended predication - predicate_extended_scalar_phi. 3. Save gsi before insertion of predicate computations for basic blocks if it has

Re: [COMMITTED] [PING] [PATCH] [AArch64, NEON] More NEON intrinsics improvement

2014-12-09 Thread Christophe Lyon
On 9 December 2014 at 03:26, Yangfei (Felix) wrote: >> On 5 December 2014 at 18:44, Tejas Belagod wrote: >> > >> >>> >> >>> +__extension__ static __inline float32x2_t __attribute__ >> >>> +((__always_inline__)) >> >>> +vfms_f32 (float32x2_t __a, float32x2_t __b, float32x2_t __c) { >> >>> + retur

Re: [Patch] Improving jump-thread pass for PR 54742

2014-12-09 Thread Richard Biener
On Mon, Dec 8, 2014 at 10:49 PM, Steve Ellcey wrote: > On Sat, 2014-12-06 at 19:21 +, Sebastian Pop wrote: > >> > I think it does not make sense to duplicate paths at -Os: I disabled the >> > FSM >> > jump-threading when optimizing for size like this. >> > >> > diff --git a/gcc/tree-ssa-threa

Re: [RFC, PATCH, fortran] PR fortran/60255 Deferred character length

2014-12-09 Thread Dominique d'Humières
Dear Andre, The patch causes an ICE for the test gfortran.dg/unlimited_polymorphic_1.f03: f951: internal compiler error: in gfc_add_component_ref, at fortran/class.c:236 f951: internal compiler error: Abort trap: 6 gfc: internal compiler error: Abort trap: 6 (program f951) Abort Reduced test fo

Re: [PATCH] Do not download packages for graphite loop optimizations by default when using ./contrib/download_prerequisites

2014-12-09 Thread Richard Biener
On Tue, Dec 9, 2014 at 6:36 AM, Chung-Ju Wu wrote: > Hi, all, > > In the discussion thread last year: > https://gcc.gnu.org/ml/gcc-patches/2013-05/msg01334.html > > I extended the script ./contrib/download_prerequisites so that it can > download isl and cloog packages for graphite loop optimizat

Re: [PATCH, x86] Fix pblendv expand.

2014-12-09 Thread Evgeny Stupachenko
The case comes from spec2006 403.gcc (or old GCC itself). for (i = 0; i < FIRST_PSEUDO_REGISTER; ++i) { vd->e[i].mode = VOIDmode; vd->e[i].oldest_regno = i; vd->e[i].next_regno = INVALID_REGNUM; } It is vectorized and only then completely peeled. Only after peeling all

Re: [AArch64, NEON] Improve vmulX intrinsics

2014-12-09 Thread Christophe Lyon
On 9 December 2014 at 13:52, Jiangjiji wrote: > Hi, > This patch converts more intrinsics to use builtin functions instead of > the > previous inline assembly syntax. > Passed the glorious testsuite of Christophe Lyon. > > Three testcases are added for the testing of intriniscs whic

[PATCH] Fix PR64193

2014-12-09 Thread Richard Biener
The following patch restores proper CSE by FRE/PRE when doing optimistic value-numbering of stores/loads. In that case we may end up value-numbering a virtual operand to the only executable edge value of a PHI - but as the alias walker doesn't know this it fails to handle the PHI which results in

[PATCH] Fix PR42108

2014-12-09 Thread Richard Biener
The following finally fixes PR42108 (well, hopefully...) by using range-information on SSA names to allow the integer divisions introduced by Fortran array lowering being hoisted out of loops, thus detecting them as not trapping. I chose to enhance tree_single_nonzero_warnv_p for this and adjuste

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

2014-12-09 Thread Richard Biener
On Mon, 8 Dec 2014, Ilya Verbin wrote: > Hi, > > On 28 Nov 09:36, Richard Biener wrote: > > On Fri, 28 Nov 2014, Ilya Verbin wrote: > > > I found a bug here, have_{lto,offload} must be set if at least one file > > > contains > > > lto/offload sections, but currently they are overwritten by the l

Re: [PATCH 8/9] Negative numbers added for sreal class.

2014-12-09 Thread Richard Biener
On Mon, Dec 8, 2014 at 5:52 PM, Martin Liška wrote: > On 11/28/2014 10:32 AM, Richard Biener wrote: >> >> On Thu, Nov 27, 2014 at 6:08 PM, Martin Liška wrote: >>> >>> On 11/21/2014 04:21 PM, Martin Liška wrote: On 11/21/2014 04:02 PM, Richard Biener wrote: > > > On Fri,

[PATCH, rtl-optimization]: Fix PR64213 by reverting fix for PR64037

2014-12-09 Thread Uros Bizjak
Hello! The fix for PR64037 [1] introduced severe problems, including bootstrap failure on alphaev6-linux-gnu. Non-bootstrapped testsuite results [2] can be compared with bootstrapped gcc with a revert [3]. As discussed in the PR, the problem was in a missed SI-DI zero_extend. [1] https://gcc.gnu.

Re: [PING ^ 3][PATCH, AArch64] Add doloop_end pattern for -fmodulo-sched

2014-12-09 Thread Tejas Belagod
On 18/11/14 11:28, Yangfei (Felix) wrote: On 11/18/2014 11:48 AM, Yangfei (Felix) wrote: +(define_expand "doloop_end" + [(use (match_operand 0 "" "")) ; loop pseudo + (use (match_operand 1 "" ""))] ; label + "" +{ + /* Currently SMS relies on the do-loop pattern to recognize loops

Re: Fix libgomp crash without TLS (PR42616)

2014-12-09 Thread Varvara Rainchik
Ok, the following patch works for Android: 2014-12-09 Varvara Rainchik * config.h.in: Regenerate. * configure: Regenerate. * configure.ac: Add GCC_CHECK_EMUTLS. * libgomp.h: Add check for USE_EMUTLS: this case is equal to HAVE_TLS. * team.c: Like

Re: [PATCH] Update libgcc.texi to match implementation in libgcc/libgcc2.c

2014-12-09 Thread Ian Lance Taylor
On Mon, Oct 27, 2014 at 8:19 PM, Kito Cheng wrote: > > This patch update `Bit operations` section in libgcc.text, most bit > operation function is take an unsigned integer instead of signed > integer in libgcc/libgcc2.c [1], and it seem more make sense :) > > ChangeLog > 2014-10-28 Kito Cheng >

Re: [PATCH 2/3] Extended if-conversion

2014-12-09 Thread Richard Biener
On Tue, Dec 9, 2014 at 2:11 PM, Yuri Rumyantsev wrote: > Richard, > > Here is updated patch2 with the following changes: > 1. Delete functions phi_has_two_different_args and find_insertion_point. > 2. Use only one function for extended predication - > predicate_extended_scalar_phi. > 3. Save gsi

[PATCH 0/4] [AARCH64,SIMD] PR63870 Improve error messages for single lane load/store

2014-12-09 Thread charles . baylis
From: Charles Baylis This patch series moves the checking of lane indices for vld[234](q?)_lane and vst[234](q?)_lane intrinsics so that it occurs during builtin expansion. The q register variants are checked directly, but since the d register variants use the same intrinsics, these are checked

[PATCH 1/4] vldN_lane error message enhancements (Q registers)

2014-12-09 Thread charles . baylis
From: Charles Baylis gcc/ChangeLog: Charles Baylis PR target/63870 * config/aarch64/aarch64-builtins.c (enum aarch64_type_qualifiers): Add qualifier_struct_load_store_lane_index. (aarch64_types_loadstruct_lane_qualifiers): Use qualifier_struct_load_st

[PATCH 2/4] vldN_lane error message enhancements (D registers)

2014-12-09 Thread charles . baylis
From: Charles Baylis gcc/ChangeLog Charles Baylis * config/aarch64/arm_neon.h (__LD2_LANE_FUNC): Add explicit lane bounds check. (__LD3_LANE_FUNC): Likewise. (__LD4_LANE_FUNC): Likewise gcc/testsuite/ChangeLog: Charles Baylis * gcc.target/aarch

[PATCH 4/4] vstN_lane error message enhancements (D registers)

2014-12-09 Thread charles . baylis
From: Charles Baylis gcc/ChangeLog: Charles Baylis * config/aarch64/arm_neon.h (__ST2_LANE_FUNC): Add explicit lane bounds check. (__ST3_LANE_FUNC): Likewise. (__ST4_LANE_FUNC): Likewise. gcc/testsuite/ChangeLog: Charles Baylis * gcc.target/aar

[PATCH 3/4] vstN_lane error message enhancements (Q register)

2014-12-09 Thread charles . baylis
From: Charles Baylis gcc/ChangeLog: Charles Baylis * config/aarch64/aarch64-builtins.c (aarch64_types_storestruct_lane_qualifiers): Mark last argument with qualifier_struct_load_store_lane_index. gcc/testsuite/ChangeLog: Charles Baylis * gcc.target/aar

Re: [PATCH] PR ipa/63909 ICE: SIGSEGV in ipa_icf_gimple::func_checker::compare_bb()

2014-12-09 Thread Martin Liška
On 11/21/2014 01:23 PM, Richard Biener wrote: On Fri, Nov 21, 2014 at 12:52 PM, Martin Liška wrote: On 11/20/2014 05:41 PM, Richard Biener wrote: On Thu, Nov 20, 2014 at 5:30 PM, Martin Liška wrote: Hello. Following patch fixes ICE in IPA ICF. Problem was that number of non-debug statemen

Re: [PATCH, x86] Fix pblendv expand.

2014-12-09 Thread Evgeny Stupachenko
I've tried to get smaller reproducer, however currently it is complicated as several functions in GCC. However patch is fixing spec2006 benchmark. Shouldn't that be enough for regression testing? Thanks, Evgeny On Tue, Dec 9, 2014 at 4:29 PM, Evgeny Stupachenko wrote: > The case comes from spec2

Re: [PATCH] AArch64: Add TARGET_SCHED_REASSOCIATION_WIDTH

2014-12-09 Thread Marcus Shawcroft
On 24 November 2014 at 13:46, Wilco Dijkstra wrote: >> Richard Earnshaw wrote: >> If all cores seem to benefit from FP reassociation set to 4, then it >> seems odd that 4 is not also the default for generic. >> >> Andrew, you may need to pick a target-specific value for ThunderX; I >> think Wilco

Re: [PATCH] PR other/63613: Add fixincludes for dejagnu.h

2014-12-09 Thread David Malcolm
On Mon, 2014-12-08 at 14:13 +0100, Rainer Orth wrote: > Jeff Law writes: > > > On 12/04/14 15:42, Rainer Orth wrote: > >> David Malcolm writes: > >> > >>> assumed -fgnu89-inline until a recent upstream fix; > >>> see http://lists.gnu.org/archive/html/dejagnu/2014-10/msg00011.html > >>> > >>> Re

Re: [PATCH, x86] Fix pblendv expand.

2014-12-09 Thread Richard Henderson
On 12/09/2014 07:59 AM, Evgeny Stupachenko wrote: > However patch is fixing spec2006 benchmark. Shouldn't that be enough > for regression testing? > No. Spec is not free. r~

Re: [PATCH][AARCH64][5/5] Add macro fusion support for cmp/b.X for ThunderX

2014-12-09 Thread Marcus Shawcroft
On 5 December 2014 at 14:36, Kyrill Tkachov wrote: > Hi all, > > Andrew posted this patch sometime ago (before stage1 closed) and I had > rebased it on top of the > other macro fusion patches in that series. > This is a respin of that patch with the comment about not calling > get_attr_type > repe

Re: [PATCH, x86] Fix pblendv expand.

2014-12-09 Thread Jakub Jelinek
On Tue, Dec 09, 2014 at 06:59:27PM +0300, Evgeny Stupachenko wrote: > I've tried to get smaller reproducer, however currently it is > complicated as several functions in GCC. Just add a gcc_assert where you are changing the code, testing for what you want to avoid. Then just delta reduce it or cre

Re: [PATCH 04/10] rs6000: Remove addic from the normal add pattern

2014-12-09 Thread Eric Botcazou
> It's unfortunate that GCC does not have separate patterns for a safe > ADD used by reload. It does, the addptrM3 pattern, but it works only with LRA at the moment. -- Eric Botcazou

Re: Fix libgomp crash without TLS (PR42616)

2014-12-09 Thread Richard Henderson
On 12/09/2014 06:53 AM, Varvara Rainchik wrote: > 2014-12-09 Varvara Rainchik > > * config.h.in: Regenerate. > * configure: Regenerate. > * configure.ac: Add GCC_CHECK_EMUTLS. > * libgomp.h: Add check for USE_EMUTLS: this case > is equal to HAVE_TLS. >

Re: [PATCH, x86] Fix pblendv expand.

2014-12-09 Thread Evgeny Stupachenko
I mean that there are a lot of people tracking spec2006 stability and therefore the issue should be on track in future. And that I can create the test case, but it would be as big as several GCC functions. Will work on reducing the test case. On Tue, Dec 9, 2014 at 7:20 PM, Richard Henderson wro

Re: [PATCH 04/10] rs6000: Remove addic from the normal add pattern

2014-12-09 Thread David Edelsohn
On Tue, Dec 9, 2014 at 11:24 AM, Eric Botcazou wrote: >> It's unfortunate that GCC does not have separate patterns for a safe >> ADD used by reload. > > It does, the addptrM3 pattern, but it works only with LRA at the moment. Hi, Eric Segher and I previously discussed addptrM3, but I thought tha

Re: [PATCH 04/10] rs6000: Remove addic from the normal add pattern

2014-12-09 Thread Segher Boessenkool
On Tue, Dec 09, 2014 at 11:48:44AM -0500, David Edelsohn wrote: > We definitely will have to define addptrM3 and restore addM3 when > rs6000 switches to LRA. Can LRA deal with adding a clobber of a hard register? How would you express that in the patterns, anyway? Segher

Re: [patch, build] Restore bootstrap in building libcc1 on darwin

2014-12-09 Thread Dominique d'Humières
This was for x86_64-apple-darwin14. The patch also works for x86_64-apple-darwin10. Dominique > Le 6 déc. 2014 à 01:49, Dominique d'Humières a écrit : > > Bootstrap just finished with the patch. > > Thanks, > > Dominique

RE: [PATCH] AArch64: Add TARGET_SCHED_REASSOCIATION_WIDTH

2014-12-09 Thread Wilco Dijkstra
> Marcus Shawcroft wrote: > > OK for commit? > > > > ChangeLog: > > 2014-11-24 Wilco Dijkstra > > > > * gcc/config/aarch64/aarch64-protos.h (tune-params): > > Add reasociation tuning parameters. > > * gcc/config/aarch64/aarch64.c (TARGET_SCHED_REASSOCIATION_WIDTH): > >

Re: [PATCH 04/10] rs6000: Remove addic from the normal add pattern

2014-12-09 Thread Segher Boessenkool
On Mon, Dec 08, 2014 at 09:01:39AM -0600, Segher Boessenkool wrote: > > Why are you removing the alternative instead of clobbering XER[CA]? > > I should have mentioned, sorry. > > We don't want to clobber CA on *every* add, and reload can generate more > adds out of thin air. And CA is a fixed r

Re: [Patch] Improving jump-thread pass for PR 54742

2014-12-09 Thread Sebastian Pop
Richard Biener wrote: > On Mon, Dec 8, 2014 at 10:49 PM, Steve Ellcey wrote: > > expected? Should this test also check flag_thread_jumps? Or should > > that be getting checked somewhere else? > > -fthread-jumps is an RTL optimization flag and ignored on GIMPLE. Does it make sense to add a -f[n

[PATCH, libcpp]: Check the result of vasprintf

2014-12-09 Thread Uros Bizjak
Hello! The compilation with gentoo glibc 2.20 emits following warning: ../../../gcc-svn/trunk/libcpp/directives.c:2411:28: warning: ignoring return value of ‘int vasprintf(char**, const char*, __gnuc_va_list)’, declared with attribute warn_unused_result [-Wunused-result] The manpage says: If me

[PATCH] TYPE_OVERFLOW_* cleanup

2014-12-09 Thread Marek Polacek
The issue here is that TYPE_OVERFLOW_TRAPS, TYPE_OVERFLOW_UNDEFINED, and TYPE_OVERFLOW_WRAPS macros work on integral types only, yet we pass e.g. pointer_type/real_type to them. This patch adds proper checking for these macros and adds missing guards to various places. This looks pretty straightfo

Re: [Patch] Improving jump-thread pass for PR 54742

2014-12-09 Thread Jeff Law
On 12/09/14 10:38, Sebastian Pop wrote: Richard Biener wrote: On Mon, Dec 8, 2014 at 10:49 PM, Steve Ellcey wrote: expected? Should this test also check flag_thread_jumps? Or should that be getting checked somewhere else? -fthread-jumps is an RTL optimization flag and ignored on GIMPLE.

Re: [Android] Stop unconditional disabling of ifuncs for Bionic #2

2014-12-09 Thread Jeff Law
On 12/09/14 05:39, Alexander Ivchenko wrote: Hi, Whether the *linux* target supports ifuncs or not is defined here: linux_has_ifunc_p (void) { return OPTION_BIONIC ? false : HAVE_GNU_INDIRECT_FUNCTION; } Bionic right now supports indirect functions, but there is no way to notify the compile

[PATCH, committed] jit-playback.c: Move dlopen code into a new function

2014-12-09 Thread David Malcolm
Another simplification of playback::context::compile. Committed to trunk as r218527. Index: gcc/jit/ChangeLog === --- gcc/jit/ChangeLog (revision 218526) +++ gcc/jit/ChangeLog (revision 218527) @@ -1,3 +1,12 @@ +2014-12-09 David Mal

Re: [PATCH] Fix PR 61225

2014-12-09 Thread Jeff Law
On 12/09/14 02:49, Zhenqiang Chen wrote: Do you need to verify SETA and SETB satisfy single_set? Or has that already been done elsewhere? A is NEXT_INSN (insn) B is prev_nonnote_nondebug_insn (insn), For I1 -> I2 -> B; I2 -> A; LOG_LINK can make sure I1 and I2 are single_set, but not A and B.

[PATCH, fixincludes]: Check return value of getcwd

2014-12-09 Thread Uros Bizjak
Hello! The compilation with gentoo glibc 2.20 emits following warning: ../../../gcc-svn/trunk/fixincludes/server.c:195:10: warning: ignoring return value of ‘getcwd’, declared with attribute warn_unused_result [-Wunused-result] The manpage says: On failure, these functions return NULL, and errn

[PATCH, committed] Guard less code with the JIT mutex

2014-12-09 Thread David Malcolm
Move acquisition/release of the JIT mutex from jit-recording.c:gcc::jit::recording::context::compile into jit-playback.c: gcc::jit::playback::context::compile and reduce the amount of code guarded by the mutex somewhat. For acquisition, we didn't need the mutex when building the tempdir and bu

Re: [PATCH 07/10] rs6000: The big carry insns addition

2014-12-09 Thread David Edelsohn
On Mon, Dec 8, 2014 at 9:18 AM, Segher Boessenkool wrote: > Now that everything is in place for letting GCC use the carry-using and > carry-producing machine insns as separate RTL insns, switch over all > remaining patterns that clobber CA without telling the compiler. This > are the multiple-pre

Re: [PATCH 08/10] rs6000: compare->two for rld*;rld*.

2014-12-09 Thread David Edelsohn
On Mon, Dec 8, 2014 at 9:18 AM, Segher Boessenkool wrote: > These now are the only remaining patterns that have type "compare". > And they shouldn't: "two" is a better type for them. > > > 2014-12-08 Segher Boessenkool > > gcc/ > * config/rs6000/rs6000.md (*anddi3_2rld_dot, *anddi3_rld_

Re: [PATCH 09/10] rs6000: Remove the (now unused) insn type "compare"

2014-12-09 Thread David Edelsohn
On Mon, Dec 8, 2014 at 9:18 AM, Segher Boessenkool wrote: > > 2014-12-08 Segher Boessenkool > > gcc/ > * config/rs6000/40x.md (ppc403-compare): Remove "compare". > config/rs6000/440.md (ppc440-compare): Remove "compare". > config/rs6000/476.md (ppc476-compare): Remove "c

Re: [PATCH 10/10] rs6000: Get rid of the weird decimal thing in add

2014-12-09 Thread David Edelsohn
On Mon, Dec 8, 2014 at 9:18 AM, Segher Boessenkool wrote: > Peter tells me it was an artifact of old versions of the DFP code. The > condition can never be false; delete it. > > > 2014-12-08 Segher Boessenkool > > gcc/ > * config/rs6000/rs6000.md (*add3): Remove condition. Okay. Than

Re: [PATCH] Fix PR 61225

2014-12-09 Thread Segher Boessenkool
On Tue, Dec 09, 2014 at 05:49:18PM +0800, Zhenqiang Chen wrote: > > Do you need to verify SETA and SETB satisfy single_set? Or has that > > already been done elsewhere? > > A is NEXT_INSN (insn) > B is prev_nonnote_nondebug_insn (insn), > > For I1 -> I2 -> B; I2 -> A; > LOG_LINK can make sure I1

Re: [PATCH] Fix PR 61225

2014-12-09 Thread Jeff Law
On 12/09/14 12:07, Segher Boessenkool wrote: On Tue, Dec 09, 2014 at 05:49:18PM +0800, Zhenqiang Chen wrote: Do you need to verify SETA and SETB satisfy single_set? Or has that already been done elsewhere? A is NEXT_INSN (insn) B is prev_nonnote_nondebug_insn (insn), For I1 -> I2 -> B; I2 ->

Re: Running cc1 etc under valgrind (was Re: [PATCH 13/21] PR jit/63854: Add support for running "make check-jit" under valgrind)

2014-12-09 Thread David Malcolm
On Wed, 2014-11-19 at 13:38 -0500, David Malcolm wrote: > On Wed, 2014-11-19 at 09:57 -0700, Jeff Law wrote: > > On 11/19/14 03:46, David Malcolm wrote: > > > This commit updates jit.exp so that if RUN_UNDER_VALGRIND is present > > > in the environment, all of the built client code using libgccjit.

[PATCH] Fix IRA register preferencing

2014-12-09 Thread Wilco Dijkstra
This fixes a bug in register preferencing. When live range splitting creates a new register from another, it copies most fields except for the register preferences. The preference GENERAL_REGS is used as reg_pref[i].prefclass is initialized with GENERAL_REGS in allocate_reg_info () and resize_re

Re: [PATCH] TYPE_OVERFLOW_* cleanup

2014-12-09 Thread Marc Glisse
On Tue, 9 Dec 2014, Marek Polacek wrote: The issue here is that TYPE_OVERFLOW_TRAPS, TYPE_OVERFLOW_UNDEFINED, and TYPE_OVERFLOW_WRAPS macros work on integral types only, yet we pass e.g. pointer_type/real_type to them. This patch adds proper checking for these macros and adds missing guards to

Re: locales fixes

2014-12-09 Thread Marc Glisse
On Tue, 9 Dec 2014, Jonathan Wakely wrote: On 08/12/14 23:53 +0100, François Dumont wrote: After having installed all necessary locales on my system I end up with 4 failures. Here is a patch to fix them all. Did you discover why only you are seeing failures? Not just him, anyone with a d

Re: [Patch] Improving jump-thread pass for PR 54742

2014-12-09 Thread Richard Biener
On December 9, 2014 7:39:48 PM CET, Jeff Law wrote: >On 12/09/14 10:38, Sebastian Pop wrote: >> Richard Biener wrote: >>> On Mon, Dec 8, 2014 at 10:49 PM, Steve Ellcey >wrote: expected? Should this test also check flag_thread_jumps? Or >should that be getting checked somewhere else? >

Re: [PATCH, MPX wrappers 1/3] Add MPX wrappers library

2014-12-09 Thread Jeff Law
On 12/09/14 01:27, Ilya Enkovich wrote: 2014-12-09 Ilya Enkovich * config/i386/linux-common.h (LIBMPX_WRAPPERSSPEC): New. (CHKP_SPEC): Add wrappers library. * c-family/c.opt (static-libmpxwrappers): New. libmpx/ 2014-12-09 Ilya Enkovich * Makefile.am (SU

Re: [Patch] Improving jump-thread pass for PR 54742

2014-12-09 Thread Jeff Law
On 12/09/14 12:43, Richard Biener wrote: This seems to be indicating that we have with no edge from the latch block to the header block. I'd like to know better how we got into that state. It Also returns null for loops with multiple latches. So the patch looks OK for me. Ah, OK. Jeff

Re: [PATCH] Set stores_off_frame_dead_at_return to false if sibling call

2014-12-09 Thread Jeff Law
On 12/08/14 14:50, John David Anglin wrote: On 12/8/2014 3:49 PM, Jeff Law wrote: I think the terminology and variable names certainly makes this tougher to follow than it should. I certainly agree. When I first looked at the code, I thought it was completely backwards. Me too. Thoughts on us

[PATCH, committed] Add jit-tempdir.{c|h}

2014-12-09 Thread David Malcolm
Move tempdir handling out from jit-playback.c into new jit-tempdir.{c|h} files. This simplifies jit-playback.c, and may help fix PR jit/64206. Committed to trunk as r218533. gcc/jit/ChangeLog: PR jit/64206 * Make-lang.in (jit_OBJS): Add jit/jit-tempdir.o. * jit-common.h (

Re: [PATCH][libstdc++][testsuite] Mark as UNSUPPORTED tests that don't fit into tiny memory model

2014-12-09 Thread Mike Stump
On Dec 9, 2014, at 3:17 AM, Kyrill Tkachov wrote: > In the gcc and g++ testsuite we already catch such cases and mark them as > UNSUPPORTED. In libstdc++.exp there is no such functionality. > I'm not very happy that it had to be copied, but I couldn't find a way to > include the gcc definition

Re: [Patch] Improving jump-thread pass for PR 54742

2014-12-09 Thread Mike Stump
On Dec 9, 2014, at 10:39 AM, Jeff Law wrote: > Also, a test for the GCC testsuite would be good. I have no idea what > license covers the LLVM testsuite. But given a good analysis of the problem > we may be able to write a suitable test independent of the LLVM test. So, the usual engineerings

Re: [PATCH, MPX runtime 1/2] Integrate MPX runtime library

2014-12-09 Thread Jeff Law
On 12/09/14 01:24, Ilya Enkovich wrote: On 24 Nov 17:02, Ilya Enkovich wrote: Right. This works for both top level and multilib checks because failing test is used and CC is usually not set when it's called by the top level configure. If we configure with CC=... then it may go wrong. I lef

[PATCH, commmited] PR jit/63854: Document how to run the jit testsuite under valgrind

2014-12-09 Thread David Malcolm
Committed to trunk as r218538. Index: gcc/jit/ChangeLog === --- gcc/jit/ChangeLog (revision 218537) +++ gcc/jit/ChangeLog (revision 218538) @@ -1,5 +1,12 @@ 2014-12-09 David Malcolm + PR jit/63854 + * docs/internals/index.rst (Ru

Re: [PATCH, MPX runtime 1/2] Integrate MPX runtime library

2014-12-09 Thread Ilya Enkovich
2014-12-09 22:57 GMT+03:00 Jeff Law : > On 12/09/14 01:24, Ilya Enkovich wrote: >> >> On 24 Nov 17:02, Ilya Enkovich wrote: >>> >>> >>> Right. This works for both top level and multilib checks because failing >>> test is used and CC is usually not set when it's called by the top level >>> configur

Re: [PATCH] Set stores_off_frame_dead_at_return to false if sibling call

2014-12-09 Thread John David Anglin
On 12/9/2014 3:00 PM, Jeff Law wrote: Thoughts on using both patches to ensure the we don't have extraneous entries in the GEN set and that we're adding more stuff to the KILL set for sibcalls? Maybe we should add all stores to the KILL set for a sibling call and not worry about whether they ar

[patch] gdb python pretty printer for DIEs

2014-12-09 Thread Aldy Hernandez
I am tired of dumping entire DIEs just to see what type they are. With this patch, we get: (gdb) print context_die $5 = DW_TAG_compile_unit>> I know it's past the end of stage1, but this debugging aid can help in fixing bugs in stage >= 3. I am committing this to the [debug-early] branch,

Re: [PATCH, x86] Fix pblendv expand.

2014-12-09 Thread Evgeny Stupachenko
I've added the reproducer to the patch. is it ok? ChangeLog: 2014-12-10 Evgeny Stupachenko gcc/testsuite * gcc.target/i386/blend.c: New. gcc/ * config/i386/i386.c (expand_vec_perm_pblendv): Gen new rtx for expand_vec_perm_1 target. diff --git a/gcc/config/i386/i386.

[PATCH, committed] jit: toyvm.c: use correct path in debuginfo

2014-12-09 Thread David Malcolm
I noticed while debugging another issue that at some point I'd broken the source locations that toyvm.c sets up into the .toy source files, by using the filename, rather than the filesystem path. Also fix a segfault due to fclose (NULL) when the .toy file is not found. Committed to trunk as r2185

Re: [PATCH 01/10] rs6000: Clobber XER[CA] in all user asm statements

2014-12-09 Thread Richard Henderson
On 12/08/2014 06:25 AM, David Edelsohn wrote: > Okay. I don't know of another option that preserves backward > compatibility. If RTH looks at this series of patches, he may have a > better suggestion. No, this looks like what I'd do. Indeed, I added this hook back when the i386 port gained dire

Re: [PATCH, x86] Fix pblendv expand.

2014-12-09 Thread Jakub Jelinek
On Wed, Dec 10, 2014 at 12:33:52AM +0300, Evgeny Stupachenko wrote: > --- /dev/null > +++ b/gcc/testsuite/gcc.target/i386/blend.c > @@ -0,0 +1,61 @@ > +/* Test correctness of size 3 store groups permutation. */ > +/* { dg-do run } */ > +/* { dg-options "-O3" } */ > + > +#define N 50 > + > +enum nu

Re: [PATCH, libcpp]: Check the result of vasprintf

2014-12-09 Thread Joseph Myers
On Tue, 9 Dec 2014, Uros Bizjak wrote: > Attached patch checks the return value and sets ptr to NULL in this case. > > 2014-12-09 Uros Bizjak > > * directives.c (cpp_define_formatted): Check return value of > vasprintf and in case of error set ptr to NULL. > > Bootstrapped on x86_64-

RE: [PATCH][MIPS] Fix P5600 memory cost

2014-12-09 Thread Matthew Fortune
Hi Prachi, I'm afraid you updated the wrong Changelog with this commit. GCC changes are recorded in gcc/ChangeLog. I'm not sure what the correct procedure is for fixing this. Jeff: Should a mistake like this be fixed by removing the entry from the top level and adding one at the appropriate loca

  1   2   >