[PATCH] Don't promote RHS of shift-expr if it's integer_type (PR tree-optimization/64183)

2014-12-05 Thread Marek Polacek
My recent change to shift operand promotion caused a regression in loop unrolling. Fixed as Richi suggested in the PR audit trail. Bootstrapped/regtested on ppc64-linux and x86_64-linux, ok for trunk? 2014-12-05 Marek Polacek PR tree-optimization/64183 * c-gimplify.c (c_gimpl

Re: [patch] Simplify non-inline function definitions for std::unordered_xxx containers

2014-12-05 Thread Jonathan Wakely
On 03/12/14 12:00 +, Jonathan Wakely wrote: While working on PR57272 for unordered containers I was getting a headache reading all the return types with nested-name-qualifiers split over three or four lines. More of the same. Tested powerpc64-linux, committed to trunk. commit f99108f25854

Re: asan: support for globals in kernel

2014-12-05 Thread Andrey Ryabinin
On 12/04/2014 10:10 PM, Dmitry Vyukov wrote: > On Wed, Dec 3, 2014 at 9:19 AM, Andrey Ryabinin > wrote: >> On 12/02/2014 08:56 PM, Dmitry Vyukov wrote: >>> Hi, >>> >>> The following patch adds support for instrumentation of globals for >>> Linux kernel (-fsanitize=kernel-address). Kernel only sup

Re: [PATCH] MIPS/GCC: Unconditional jump generation bug fix

2014-12-05 Thread Richard Sandiford
"Maciej W. Rozycki" writes: > 2014-11-17 Maciej W. Rozycki > > gcc/ > * gcc/config/mips/mips.md (*jump_absolute): Use a branch when in > range, a jump otherwise. > > Maciej > > gcc-mips-jump-branch.diff > Index: gcc-fsf-trunk-quilt/gcc/config/mips/mips.md > =

RE: [PATCH] MIPS/GCC: Unconditional jump generation bug fix

2014-12-05 Thread Matthew Fortune
Richard Sandiford writes: > "Maciej W. Rozycki" writes: > > 2014-11-17 Maciej W. Rozycki > > > > gcc/ > > * gcc/config/mips/mips.md (*jump_absolute): Use a branch when in > > range, a jump otherwise. > > > > Maciej > > > > gcc-mips-jump-branch.diff > > Index: gcc-fsf-trunk-quilt/

Re: [PATCH] Don't promote RHS of shift-expr if it's integer_type (PR tree-optimization/64183)

2014-12-05 Thread Jakub Jelinek
On Fri, Dec 05, 2014 at 11:27:50AM +0100, Marek Polacek wrote: > My recent change to shift operand promotion caused a regression in > loop unrolling. Fixed as Richi suggested in the PR audit trail. > > Bootstrapped/regtested on ppc64-linux and x86_64-linux, ok for trunk? > > 2014-12-05 Marek Po

Re: [PATCH] MIPS/GCC: Unconditional jump generation bug fix

2014-12-05 Thread Richard Sandiford
Matthew Fortune writes: > Richard Sandiford writes: >> "Maciej W. Rozycki" writes: >> > 2014-11-17 Maciej W. Rozycki >> > >> >gcc/ >> >* gcc/config/mips/mips.md (*jump_absolute): Use a branch when in >> >range, a jump otherwise. >> > >> > Maciej >> > >> > gcc-mips-jump-branch.di

[PATCH 0/4][AArch64] PR/63870 Improve handling of errors in SIMD intrinsics

2014-12-05 Thread Alan Lawrence
Following on from Charles Baylis' patch to improve the error message when expanding arguments with qualifier_lane_index, this applies similar treatment to __builtin_aarch64_im_lane_boundsi (using for e.g. vset_lane and vext), and the more general case of immediates which should be constant but a

[PATCH 1/4][AArch64]Fix ICE on non-constant indices to __builtin_aarch64_im_lane_boundsi

2014-12-05 Thread Alan Lawrence
When the lane index to e.g. vset_lane_xxx is a non-constant, at present we get an ICE: In file included from gcc/testsuite/gcc.target/aarch64/simd/vset_lane_s16_const_1.c:6:0: /work/alalaw01/oban/buildfsf-aarch64-none-elf/install/lib/gcc/aarch64-none-elf/5.0.0/include/arm_neon.h: In function '

[PATCH 2/4][AArch64]Improve error message for non-constant immediates

2014-12-05 Thread Alan Lawrence
The error message when passing a non-constant in place of an immediate to an arm_neon.h *intrinsic* (as programmers should, rather than the __builtin), is poor: In file included from gcc/testsuite/gcc.target/aarch64/arg-type-diagnostics-1.c:4:0: /work/alalaw01/oban/buildfsf-aarch64-none-elf/ins

[PATCH 3/4][AArch64]Remove be_checked_get_lane, check bounds with __builtin_aarch64_im_lane_boundsi.

2014-12-05 Thread Alan Lawrence
The current __builtin_aarch64_be-checked_get_lane, on which all arm_neon.h's vget_lane intrinsics rely, has two problems: (a) indices are only checked sporadically; (b) it acts as an opaque block to optimization until expansion - yet is really just a simple vec_select. Both these can be solved b

[PATCH 4/4][AArch64]Remove aarch64_get_lanedi, unused

2014-12-05 Thread Alan Lawrence
I tested this by poisoning the old pattern and running check-gcc on both aarch64-none-elf and aarch64_be-none-elf; there were no regressions even with the poisoned pattern. gcc/ChangeLog: * config/aarch64/aarch64-simd.md (aarch64_get_lanedi): Remove.diff --git a/gcc/config/aarch64/aarc

[PATCH PR62178]Improve candidate selecting in IVOPT, 2nd try.

2014-12-05 Thread Bin Cheng
Hi, Though PR62178 is hidden by recent cost change in aarch64 backend, the ivopt issue still exists. Current candidate selecting algorithm tends to select fewer candidates given below reasons: 1) to better handle loops with many induction uses but the best choice is one generic basic induction v

[PATCH] condition decision based on uninitialized memory

2014-12-05 Thread Martin Liška
Hello. I've just spent some time hunting memory leaks related to my isolated branch. Valgrind reports many following errors: ==13612== Conditional jump or move depends on uninitialised value(s) ==13612==at 0xAC72A4: sparseset_bit_p (sparseset.h:147) ==13612==by 0xAC72A4: sparseset_and_co

Re: [PATCH] AIX: Filename-based shared library versioning for libgcc_s

2014-12-05 Thread Michael Haubenwallner
On 11/25/2014 02:53 PM, David Edelsohn wrote: > > Now that things have calmed down with respect to breakage on AIX, the > patch for building libgcc_s is okay. FYI: libtool-2.4.4 does support "--with-aix-soname=aix|both|svr4" now too, http://thread.gmane.org/gmane.comp.gnu.libtool.patches/11789/

Re: [PATCH] condition decision based on uninitialized memory

2014-12-05 Thread Jakub Jelinek
On Fri, Dec 05, 2014 at 01:36:07PM +0100, Martin Liška wrote: > I've just spent some time hunting memory leaks related to my isolated branch. > Valgrind reports many following errors: > > ==13612== Conditional jump or move depends on uninitialised value(s) > ==13612==at 0xAC72A4: sparseset_bit

Re: [ARM,AArch64][testsuite] Fix vaddl and vaddw tests

2014-12-05 Thread Christophe Lyon
On 3 December 2014 at 17:12, Christophe Lyon wrote: > On 3 December 2014 at 15:22, Christophe Lyon > wrote: >> Hi, >> >> Here is a fix for typos in the AdvSimd intrinsic tests, where vaddl >> and vaddw didn't actually execute the tests. (The function was >> declared in main, instead of called).

Re: [PATCH/AARCH64] v2 Add aligning of functions/loops/jumps

2014-12-05 Thread James Greenhalgh
On Sun, Nov 23, 2014 at 12:09:16AM +, Andrew Pinski wrote: > Hi, > This is just a rebase of > https://gcc.gnu.org/ml/gcc-patches/2014-11/msg01615.html as requested > by https://gcc.gnu.org/ml/gcc-patches/2014-11/msg01736.html. Nothing > has changed in it. *ping* I'd like to see this patch r

Re: [PATCH] Make IPA-CP propagate alignment information of pointers

2014-12-05 Thread Jay Foad
On 3 December 2014 at 14:36, Martin Jambor wrote: > On Wed, Dec 03, 2014 at 10:53:54AM +, Jay Foad wrote: >> > Index: src/gcc/ipa-prop.h >> > === >> > --- src.orig/gcc/ipa-prop.h >> > +++ src/gcc/ipa-prop.h >> > @@ -144,6 +144,17

Re: [PATCH/AARCH64] make bswap vector consistent with scalar name

2014-12-05 Thread Marcus Shawcroft
On 24 November 2014 at 17:49, Andrew Pinski wrote: > I had some local patches in my tree which adds a bswap tree code. > This breaks the aarch64 back-end vectorizing of byteswaps as we use > the standard mechanism to see if a tree code vectorizes (optabs). > Since it make sense to have consistent

Re: [PATCH] AIX: Filename-based shared library versioning for libgcc_s

2014-12-05 Thread David Edelsohn
On Fri, Dec 5, 2014 at 7:56 AM, Michael Haubenwallner wrote: > > On 11/25/2014 02:53 PM, David Edelsohn wrote: >> >> Now that things have calmed down with respect to breakage on AIX, the >> patch for building libgcc_s is okay. > > FYI: > > libtool-2.4.4 does support "--with-aix-soname=aix|both|svr

Re: [PATCH, Fortran] PR fortran/60414 fix ICE was: PR 60414: Patch proposal

2014-12-05 Thread Dominique Dhumieres
> this patch is ready for commit now. Please apply. There have been no > objections > against doing dg-do compile only, since my last post in August. Since I am stubborn, I have made the test 'dg-do run' and committed the patch as revision r218422. Thanks for the patch, Dominique

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

2014-12-05 Thread Kyrill Tkachov
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 repeatedly resolved (https://gcc.gnu.org/ml/gcc-patches/2014-11/ms

[PATCH, i386] Fix PR64003

2014-12-05 Thread Ilya Enkovich
Hi, This patch fixes PR target/64003 by avoiding functions calls during computations of "length" attribute for short jump instructions. It is achieved by having separate templates for prefixed and not prefixed instructions. Please see discussion in bugzilla for reasoning. Bootstrapped and te

[PATCH, committed] AIX lcomm alignment

2014-12-05 Thread David Edelsohn
AIX 6.1 and above provides a section alignment argument for the local comment pseudo-op (.lcomm) which GCC uses to implement ASM_OUTPUT_ALIGNED_LOCAL from emit_local(). In the AIX implementation, the first alignment for a particular CSECT name wins -- the CSECT alignment is not the maximum alignme

Re: [PATCH] condition decision based on uninitialized memory

2014-12-05 Thread Martin Liška
On 12/05/2014 02:00 PM, Jakub Jelinek wrote: On Fri, Dec 05, 2014 at 01:36:07PM +0100, Martin Liška wrote: I've just spent some time hunting memory leaks related to my isolated branch. Valgrind reports many following errors: ==13612== Conditional jump or move depends on uninitialised value(s) =

Re:[PATCH, i386] Fix PR64003

2014-12-05 Thread Uros Bizjak
Hello! > This patch fixes PR target/64003 by avoiding functions calls during > computations of "length" > attribute for short jump instructions. It is achieved by having separate > templates for prefixed and > not prefixed instructions. Please see discussion in bugzilla for reasoning. > > Boot

[PATCH, PR 64192] Add forgotten conversion from bits to bytes

2014-12-05 Thread Martin Jambor
Hi, at some point I lost an important division of bit offset by BITS_PER_UNIT in my alignment IPA-CP propagation patch. That lead to a few failures on i686 reported as PR 64192. This patch adds it together with a slight improvement of the guarding check which I suppose will never trigger but it d

[patch, testsuite, committed] don't use "dg-do run" in vect tests, again

2014-12-05 Thread Sandra Loosemore
This patch is a follow-up to this one https://gcc.gnu.org/ml/gcc-patches/2014-09/msg02337.html which I checked in a couple months ago to fix execution failures from trying to run ARM NEON code on a target that didn't support those instructions. I noticed that since then, some new gcc.dg/vect

Re: [PATCH x86] Enable v64qi permutations.

2014-12-05 Thread Ilya Tocar
On 04 Dec 15:16, Uros Bizjak wrote: > On Thu, Dec 4, 2014 at 2:53 PM, Ilya Tocar wrote: > > >> >>> >> Can you add a few testcases? > >> >>> > > >> >>> > Isn't it already covered by gcc.dg/torture/vshuf* ? > >> >>> > > >> >>> > >> >>> I didn't see them fail on my machines today. > >> >> > >> >> Th

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

2014-12-05 Thread Jakub Jelinek
On Mon, Nov 24, 2014 at 01:06:45AM +0100, FX wrote: > tl;dr: One question to build maintainers, and one patch submitted to toplevel > configure.ac > > --- > > I’m looked into the issue some more, and am comparing two builds of trunk > (exact same source), one configured with system

Re: [PATCH][AArch64] Use std::swap instead of manually swapping

2014-12-05 Thread Kyrill Tkachov
Ping. https://gcc.gnu.org/ml/gcc-patches/2014-11/msg01426.html Thanks, Kyrill On 27/11/14 15:37, Kyrill Tkachov wrote: Ping. Thanks, Kyrill On 13/11/14 09:42, Kyrill Tkachov wrote: Hi all, Following the trend in i386 and alpha, this patch uses std::swap to perform swapping of values in the

Re: [PATCH] Add force option to find_best_rename_reg in regrename pass

2014-12-05 Thread Eric Botcazou
> 2014-11-26 Thomas Preud'homme thomas.preudho...@arm.com\ > > * regrename.c (find_best_rename_reg): Rename to ... > (find_rename_reg): This. Also add a parameter to skip tick check. > * regrename.h: Likewise. > * config/c6x/c6x.c (try_rename_operands): Adapt to above renaming. OK for mai

Re: [PATCH 0/4][AArch64] PR/63870 Improve handling of errors in SIMD intrinsics

2014-12-05 Thread Charles Baylis
On 5 December 2014 at 11:45, Alan Lawrence wrote: > Following on from Charles Baylis' patch to improve the error message when > expanding arguments with qualifier_lane_index, this applies similar > treatment to __builtin_aarch64_im_lane_boundsi (using for e.g. vset_lane and > vext), and the more g

Re: [ping] account for register spans in expand_builtin_init_dwarf_reg_sizes

2014-12-05 Thread Olivier Hainque
On Dec 4, 2014, at 23:14 , Jason Merrill wrote: > On 11/24/2014 03:08 AM, Olivier Hainque wrote: >> + if (init_state->processed_regno[regno]) >> +return; > > I would expect this to go in the loop in expand_builtin_init_dwarf_reg_sizes, > before we look up a span for the regno. Sure. >

Re: [PATCH AARCH64]load store pair optimization using sched_fusion pass.

2014-12-05 Thread Marcus Shawcroft
On 18 November 2014 at 08:34, Bin Cheng wrote: > 2014-11-18 Bin Cheng > > * config/aarch64/aarch64.md (load_pair): Split to > load_pairsi, load_pairdi, load_pairsf and load_pairdf. > (load_pairsi, load_pairdi, load_pairsf, load_pairdf): Split > from load_pair.

Re: [PING][PATCH] [AARCH64, NEON] Improve vcls(q?) vcnt(q?) and vld1(q?)_dup intrinsics

2014-12-05 Thread Marcus Shawcroft
On 19 November 2014 at 06:14, Yangfei (Felix) wrote: > Index: gcc/ChangeLog > === > --- gcc/ChangeLog (revision 217717) > +++ gcc/ChangeLog (working copy) > @@ -1,3 +1,14 @@ > +2014-11-13 Felix Yang > + Shany

Re: Compare-elim pass (was: Re: [PATCH] Fix PR 61225)

2014-12-05 Thread Eric Botcazou
> --quote-- > If we want to use this pass for x86, then for 4.8 we should also fix the > discrepancy between the compare-elim canonical > > [(operate) >(set-cc)] > > and the combine canonical > > [(set-cc) >(operate)] > > (Because of the simplicity of the substitution in compare-eli

Re: [PATCH 0/4][AArch64] PR/63870 Improve handling of errors in SIMD intrinsics

2014-12-05 Thread Alan Lawrence
Ok, thanks Charles - sorry for/if duplication of effort, that just spun out of trying to get rid of the calls to aarch64_simd_lane_bounds, as per https://gcc.gnu.org/ml/gcc-patches/2014-11/msg02510.html . Again as per that message I'm leaving aarch64_ld{2,3,4}_lane to you ;). Also there is the

Re: [PATCH 2/2] Pipeline model for APM XGene-1.

2014-12-05 Thread Marcus Shawcroft
On 21 November 2014 at 18:44, Philipp Tomsich wrote: > +;; Machine description for AppliedMicro xgene1 core. > +;; Copyright (C) 2012-2014 Free Software Foundation, Inc. > +;; Contributed by Theobroma Systems Design und Consulting GmbH. > +;;See http://www.theobroma-systems.com fo

Re: [PATCH][AARCH64]Clarify the usage of SCHED in AARCH64_CORE macro

2014-12-05 Thread Marcus Shawcroft
On 3 December 2014 at 15:30, Renlin Li wrote: > 2014-12-03 Renlin Li > > * config/aarch64/aarch64-opts.h (AARCH64_CORE): Rename IDENT to SCHED. > * config/aarch64/aarch64.h (AARCH64_CORE): Likewise. > * config/aarch64/aarch64.c (AARCH64_CORE): Rename X to IDENT, IDENT to > SCHED.

Re: [PATCH 1/2] Core definition for APM XGene-1 and associated cost-table.

2014-12-05 Thread Marcus Shawcroft
On 21 November 2014 at 18:44, Philipp Tomsich wrote: > +2014-11-19 Philipp Tomsich > + > + * config/aarch64/aarch64-cores.def (xgene1): Update/add the > + xgene1 (APM XGene-1) core definition. > + * gcc/config/aarch64/aarch64.c: Add cost tables for APM XGene-1 > + * con

Re: [PATCH 2/2] Pipeline model for APM XGene-1.

2014-12-05 Thread Dr. Philipp Tomsich
Should I revise, or do will you just drop tje line when applying when applying this? Thanks, Phil. > On 05 Dec 2014, at 18:23, Marcus Shawcroft wrote: > > On 21 November 2014 at 18:44, Philipp Tomsich > wrote: > >> +;; Machine description for AppliedMicro xgene1 core. >> +;; Copyright (C) 20

Re: [PATCH, PR 64192] Add forgotten conversion from bits to bytes

2014-12-05 Thread H.J. Lu
On Fri, Dec 5, 2014 at 8:13 AM, Martin Jambor wrote: > Hi, > > at some point I lost an important division of bit offset by > BITS_PER_UNIT in my alignment IPA-CP propagation patch. That lead to a > few failures on i686 reported as PR 64192. > > This patch adds it together with a slight improvement

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

2014-12-05 Thread Tejas Belagod
On 28/11/14 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. OK for the trunk? In

Re: [PATCH][AArch64]Fix ICE at -O0 on vld1_lane intrinsics

2014-12-05 Thread Marcus Shawcroft
On 25 November 2014 at 14:03, Alan Lawrence wrote: > gcc/ChangeLog: > > * config/aarch64/arm_neon.h (__AARCH64_NUM_LANES, __aarch64_lane > *2): > New. > (aarch64_vset_lane_any): Redefine using previous, same for BE + LE. > (vset_lane_f32, vset_lane_f64, vset_lane_p

Re: [PATCH 1/4][AArch64]Fix ICE on non-constant indices to __builtin_aarch64_im_lane_boundsi

2014-12-05 Thread Marcus Shawcroft
On 5 December 2014 at 11:54, Alan Lawrence wrote: > gcc/ChangeLog: > > * config/aarch64/aarch64-builtins.c > (aarch64_types_binopv_qualifiers, > TYPES_BINOPV): Delete. > (enum aarch64_builtins): Add AARCH64_BUILTIN_SIMD_LANE_CHECK and > AARCH64_SIMD_PATTERN_START.

Re: [PATCH 2/4][AArch64]Improve error message for non-constant immediates

2014-12-05 Thread Marcus Shawcroft
On 5 December 2014 at 11:55, Alan Lawrence wrote: > gcc/ChangeLog: > > * gcc/config/aarch64-builtins.c (aarch64_simd_expand_args): Update > error > message for SIMD_ARG_CONSTANT. > > gcc/testsuite/ChangeLog: > > * gcc.target/aarch64/arg-type-diagnostics-1.c: Call intrinsic

Re: [PATCH 3/4][AArch64]Remove be_checked_get_lane, check bounds with __builtin_aarch64_im_lane_boundsi.

2014-12-05 Thread Marcus Shawcroft
On 5 December 2014 at 11:56, Alan Lawrence wrote: > gcc/ChangeLog: > > * config/aarch64/aarch64-simd-builtins.def (be_checked_get_lane): > Delete. > * config/aarch64/aarch64-simd.md > (aarch64_be_checked_get_lane): > Delete. > * config/aarch64/arm_neon.h (a

Re: [PATCH 4/4][AArch64]Remove aarch64_get_lanedi, unused

2014-12-05 Thread Marcus Shawcroft
On 5 December 2014 at 11:56, Alan Lawrence wrote: > I tested this by poisoning the old pattern and running check-gcc on both > aarch64-none-elf and aarch64_be-none-elf; there were no regressions even > with the poisoned pattern. > > gcc/ChangeLog: > > * config/aarch64/aarch64-simd.md (aarc

Re: [PATCH][AArch64][test] Disable vector cost model on vect_ctz_1.c test

2014-12-05 Thread Marcus Shawcroft
On 4 December 2014 at 09:42, Kyrill Tkachov wrote: > 2014-12-04 Kyrylo Tkachov kyrylo.tkac...@arm.com\ > > * gcc.target/aarch64/vect_ctz_1.c: Add -fno-vect-cost-model to > dg-options. OK /Marcus

Re: [ARM,AArch64][testsuite] Fix vaddl and vaddw tests

2014-12-05 Thread Marcus Shawcroft
On 5 December 2014 at 13:14, Christophe Lyon wrote: >>> 2014-12-03 Christophe Lyon >>> >>> testsuite/ >>> * gcc.target/aarch64/advsimd-intrinsics/vaddl.c: Actually execute >>> the test. Fix expected output. >>> * gcc.target/aarch64/advsimd-intrinsics/vaddw.c: Likewise. OK /Mar

RE: [PATCH] Add force option to find_best_rename_reg in regrename pass

2014-12-05 Thread Thomas Preud'homme
> From: Eric Botcazou [mailto:ebotca...@adacore.com] > Sent: Friday, December 05, 2014 4:40 PM > > OK for mainline, but investigate whether you can better format the > config/c6x/c6x.c line, for example: > > + best_reg > + = find_rename_reg (this_head, super_class, &unavailable, old_reg, > true

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

2014-12-05 Thread Tejas Belagod
+__extension__ static __inline float32x2_t __attribute__ +((__always_inline__)) +vfms_f32 (float32x2_t __a, float32x2_t __b, float32x2_t __c) { + return __builtin_aarch64_fmav2sf (-__b, __c, __a); } + +__extension__ static __inline float32x4_t __attribute__ +((__always_inline__)) +vfmsq_f32 (f

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

2014-12-05 Thread Marcus Shawcroft
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. > OK

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

2014-12-05 Thread Marcus Shawcroft
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) { >>> + return __builtin_aarch64_fmav2sf (-__b, __c, __a); } >>> + >>> +__extension__ s

Re: [PATCH] Don't promote RHS of shift-expr if it's integer_type (PR tree-optimization/64183)

2014-12-05 Thread Marek Polacek
On Fri, Dec 05, 2014 at 12:08:02PM +0100, Jakub Jelinek wrote: > On Fri, Dec 05, 2014 at 11:27:50AM +0100, Marek Polacek wrote: > > My recent change to shift operand promotion caused a regression in > > loop unrolling. Fixed as Richi suggested in the PR audit trail. > > > > Bootstrapped/regtested

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

2014-12-05 Thread Dominique Dhumieres
> ... > Can you please test it on Darwin (or whatever other target has similar > issues with bootstrapping libcc1)? > > 2014-12-05 Jakub Jelinek > ... The patch does not work for x86_64-apple-darwin14.0.0. However the following patch does: --- ../_clean/Makefile.in 2014-11-26 23:09:14.0

Re: [PATCH] allow passing argument to the JIT linker

2014-12-05 Thread David Malcolm
On Fri, 2014-12-05 at 01:27 -0500, Ulrich Drepper wrote: > If you generate code with the JIT which references outside symbols there > is currently no way to have a self-contained DSO created. The command > line to invoke the linker is fixed. What's the use-case here? Sorry if I'm not getting at

Re: [PATCH 2/2] Pipeline model for APM XGene-1.

2014-12-05 Thread Mike Stump
On Dec 5, 2014, at 9:25 AM, Dr. Philipp Tomsich wrote: > Should I revise, or do will you just drop tje line when applying when > applying this? We like for the gcc-patches archive to have what exactly went in. It would be best to re-post the patch with the line gone.

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

2014-12-05 Thread Jeff Law
On 12/04/14 02:14, Sebastian Pop wrote: Sebastian Pop wrote: a fail I have not seen in the past: FAIL: gcc.c-torture/compile/pr27571.c -Os (internal compiler error) I am still investigating why this fails: as far as I can see for now this is because in copying the FSM path we create an inte

Re: [PATCH] allow passing argument to the JIT linker

2014-12-05 Thread Ulrich Drepper
On Fri, Dec 5, 2014 at 2:24 PM, David Malcolm wrote: > What's the use-case here? Sorry if I'm not getting at what this is for. The use case is that a program wants to use library functions, something common, not everything is self-contained and linked in automatically (like libc). Currently you

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

2014-12-05 Thread Jeff Law
On 12/04/14 07:29, Sebastian Pop wrote: Sebastian Pop wrote: Jeff Law wrote: I'm a bit worried about compile-time impacts of the all the recursion I will also restrict the recursion to the loop in which we look for the FSM thread. The attached patch includes this change. It passed bootstra

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

2014-12-05 Thread Jakub Jelinek
On Fri, Dec 05, 2014 at 08:11:53PM +0100, Dominique Dhumieres wrote: > > ... > > Can you please test it on Darwin (or whatever other target has similar > > issues with bootstrapping libcc1)? > > > > 2014-12-05 Jakub Jelinek > > ... > > The patch does not work for x86_64-apple-darwin14.0.0. Howe

Re: [PATCH 3/6] combine: handle I2 a parallel of two SETs

2014-12-05 Thread Andreas Schwab
Segher Boessenkool writes: > gcc/ > * combine.c (is_parallel_of_n_reg_sets): New function. > (can_split_parallel_of_n_reg_sets): New function. > (try_combine): If I2 is a PARALLEL of two SETs, split it into > two insns if possible. This breaks bootstrap on m68k. ../../gc

Re: [PATCH, i386] Fix PR64003

2014-12-05 Thread Jeff Law
On 12/05/14 07:57, Ilya Enkovich wrote: Hi, This patch fixes PR target/64003 by avoiding functions calls during computations of "length" attribute for short jump instructions. It is achieved by having separate templates for prefixed and not prefixed instructions. Please see discussion in bu

[PATCH] __has_{,cpp_}attribute fixes (PR preprocessor/63831)

2014-12-05 Thread Jakub Jelinek
Hi! This patch rewrites __has_attribute support, so that: 1) it is normal built-in macro, so it can be expanded even outside of #if (apparently clang supports that) 2) it is expanded properly even during preprocessing 3) there is no __has_attribute__ middle-end secondary macro, when it is a

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

2014-12-05 Thread Jeff Law
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 Remove the workaround from jit.exp that used -fgnu89-inline in favor of a fixincludes to dejagnu.h that applies

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

2014-12-05 Thread Jeff Law
On 12/04/14 15:19, David Malcolm wrote: assumed -fgnu89-inline until a recent upstream fix; see http://lists.gnu.org/archive/html/dejagnu/2014-10/msg00011.html Remove the workaround from jit.exp that used -fgnu89-inline in favor of a fixincludes to dejagnu.h that applies the upstream fix to a l

Re: Compare-elim pass (was: Re: [PATCH] Fix PR 61225)

2014-12-05 Thread Jeff Law
On 12/04/14 00:41, Uros Bizjak wrote: Hello! I also wonder if compare-elim ought to be helping here. Isn't that the point here, to eliminate the comparison and instead get it for free as part of the arithmetic? If so, is it the fact that we have memory references that prevents compare-elim fr

Re: [PATCH] Don't promote RHS of shift-expr if it's integer_type (PR tree-optimization/64183)

2014-12-05 Thread Jeff Law
On 12/05/14 12:00, Marek Polacek wrote: On Fri, Dec 05, 2014 at 12:08:02PM +0100, Jakub Jelinek wrote: On Fri, Dec 05, 2014 at 11:27:50AM +0100, Marek Polacek wrote: My recent change to shift operand promotion caused a regression in loop unrolling. Fixed as Richi suggested in the PR audit trai

Re: [PATCH, PR 64192] Add forgotten conversion from bits to bytes

2014-12-05 Thread Jeff Law
On 12/05/14 09:13, Martin Jambor wrote: Hi, at some point I lost an important division of bit offset by BITS_PER_UNIT in my alignment IPA-CP propagation patch. That lead to a few failures on i686 reported as PR 64192. This patch adds it together with a slight improvement of the guarding check w

PATCH: PR target/64200: CE: in decide_alg, at config/i386/i386.c:24510 with -mmemcpy-strategy=libcall:-1:align -minline-stringops-dynamically fails with -mcmodel=large -fpic

2014-12-05 Thread H.J. Lu
GCC manual says: '-minline-stringops-dynamically' For string operations of unknown size, use run-time checks with inline code for small blocks and a library call for large blocks. we get Breakpoint 5, decide_alg (count=0, expected_size=-1, min_size=0, max_size=2147483647, memset=f

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

2014-12-05 Thread Bruce Korb
>> This is the first time I've touched the "fixincludes" directory; >> is this the correct way to make a change here? Well, I'd like to see it -- especially since it's your first. Please send to this gmail account or wait until I get my GNU email this weekend. Thanks! >> Successfully bootstrapped

Re: [PATCH, PR 64192] Add forgotten conversion from bits to bytes

2014-12-05 Thread H.J. Lu
On Fri, Dec 5, 2014 at 12:46 PM, Jeff Law wrote: > On 12/05/14 09:13, Martin Jambor wrote: >> >> Hi, >> >> at some point I lost an important division of bit offset by >> BITS_PER_UNIT in my alignment IPA-CP propagation patch. That lead to a >> few failures on i686 reported as PR 64192. >> >> This

Re: [PATCH][ARM] FreeBSD arm support, EABI, v2

2014-12-05 Thread Andreas Tobler
Ping?! Thanks, Andreas On 27.11.14 21:56, Andreas Tobler wrote: Hi all, this is the second attempt. I reworked the issues Richard mentioned in the previous review. I also found one issue which will break build/bootstrap if I pass --enable-gnu-indirect-function, also fixed. One thing which ca

[PATCH] Note issues using function calls in length computations

2014-12-05 Thread Jeff Law
David Malcolm's valgrind testing uncovered a problem where the x86 port was using a function call to compute the length of a variable length insn. This causes a certain amount of heartburn for genattrtab's attempts to compute worst case estimates of instruction lengths with the resulting val

Re: [PATCH, i386] Fix PR64003

2014-12-05 Thread Jeff Law
On 12/05/14 08:42, Uros Bizjak wrote: Hello! This patch fixes PR target/64003 by avoiding functions calls during computations of "length" attribute for short jump instructions. It is achieved by having separate templates for prefixed and not prefixed instructions. Please see discussion in b

Re: [PATCH] Fix PR 61225

2014-12-05 Thread Jeff Law
On 12/04/14 13:49, Segher Boessenkool wrote: On Thu, Dec 04, 2014 at 04:43:34PM +0800, Zhenqiang Chen wrote: C code: if (!--*p) rtl code: 6: r91:SI=[r90:SI] 7: {r88:SI=r91:SI-0x1;clobber flags:CC;} 8: [r90:SI]=r88:SI 9: flags:CCZ=cmp(r88:SI,0) expected output:

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

2014-12-05 Thread Dominique Dhumieres
> As I've tried to explain, that is IMHO wrong though. > If what you are after is the -B stuff too, then perhaps: > ... Sorry but it does not work: true DO=all multi-do # make make[4]: Leaving directory '/opt/gcc/build_w/libbacktrace' make[3]: Leaving directory '/opt/gcc/build_w/libbacktrace' ma

Re: [PATCH] Fix PR 61225

2014-12-05 Thread Jeff Law
On 12/04/14 13:57, Segher Boessenkool wrote: So combine tries to combine 6+7+8; the RTL it comes up with is a parallel of the memory decrement (without cc clobber, but that is fine), and setting r88 to the mem minus one. There is no such pattern in the target, and combine cannot break the paral

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

2014-12-05 Thread Jeff Law
On 12/05/14 15:34, Dominique Dhumieres wrote: As I've tried to explain, that is IMHO wrong though. If what you are after is the -B stuff too, then perhaps: ... Sorry but it does not work: BTW, thanks for working with Jakub on this. We're going to be getting a Darwin box for Jakub and other fo

[PATCH] Fix size & type for cold partition names (hot-cold function partitioning)

2014-12-05 Thread Caroline Tice
When hot/cold function splitting occurs, a symbol is generated for the cold partition, and gets output in the assembly & debug info, but the symbol currently gets a size of 0 and a type of NOTYPE, as in this example (on x86_64-linux) from the cold_partition_label test in the testsuite: $ readelf -

Re: [PATCH] Fix the rest of PR target/64056

2014-12-05 Thread Jeff Law
On 12/04/14 08:22, Ilya Enkovich wrote: On 04 Dec 15:58, Rainer Orth wrote: Hi Ilya, This patch adds a check for stpcpy function into gcc.target/i386/chkp-strlen-2.c test. make check RUNTESTFLAGS="i386.exp=chkp-strlen-2.c" is OK. OK for trunk? Thanks, Ilya -- 2014-12-04 Ilya Enkovich

RFA: patch to fix PR64157

2014-12-05 Thread Vladimir Makarov
The following patch fixes https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64157 After calling target_reinit from save_target_globals for switchable targets (as ppc), a lot of ira data (register sets, classes etc) become undefined. After that ira-costs.c crashes when the undefined data are u

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

2014-12-05 Thread Phil Muldoon
On 05/12/14 22:40, Jeff Law wrote: > On 12/05/14 15:34, Dominique Dhumieres wrote: >>> As I've tried to explain, that is IMHO wrong though. >>> If what you are after is the -B stuff too, then perhaps: >>> ... >> >> Sorry but it does not work: > BTW, thanks for working with Jakub on this. We're goi

[PATCH], PR 64204, Fix long double constants on powerpc little endian

2014-12-05 Thread Michael Meissner
After my upper regs patches went in, I noticed that the gcc.dg/c11-atomic-2.c test would fail on a power8 host that was running in little endian mode. This particular test only fails if you are compiling this code with no optimization, and power8 selected as the cpu. Ultimately, it fails in reloa

Re: [PATCH 01/02] PR jit/64166: Add methods to gcc::dump_manager needed by JIT testing

2014-12-05 Thread Jeff Law
On 12/04/14 15:03, David Malcolm wrote: This is the non-JIT part of the patch for PR jit/64166. Provide a way for the JIT to lookup a dump_file_info * by switch name, and to get from there to the filename. OK for trunk? gcc/ChangeLog: PR jit/64166 * dumpfile.c (gcc::dump_manage

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

2014-12-05 Thread Jakub Jelinek
On Fri, Dec 05, 2014 at 11:34:28PM +0100, Dominique Dhumieres wrote: > > As I've tried to explain, that is IMHO wrong though. > > If what you are after is the -B stuff too, then perhaps: > > ... > > Sorry but it does not work: Sorry, make that (just removed 4x ' in each file): 2014-12-05 Jakub

Re: [PATCH] Fix asan sanopt optimization (PR sanitizer/64170)

2014-12-05 Thread Jeff Law
On 12/03/14 15:07, Jakub Jelinek wrote: Hi! The following testcase ICEs, because base_checks vector contains stale statements, and can_remove_asan_check relies on them not to be there anymore (assumes that all statements in the vector dominate the current statement, if that is not true, the loop

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

2014-12-05 Thread Jeff Law
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 missed that MPX_SPEC was in gcc.c along with the uses of LIBMPX_SPEC

Re: [Patch]: Check __gthread_setspecific return

2014-12-05 Thread Jeff Law
On 12/02/14 10:53, Ryan Mansfield wrote: Hi, Underlying pthread_setspecific can return non-zero with ENOMEM or EINVAL. 2014-12-02 Ryan Mansfield * emutls.c (__emutls_get_address): Check __gthread_setspecific returns. OK? OK. Sorry for the delay, Jeff

Re: [PATCH, CHKP] Don't try to optimize bounds returned by strchr

2014-12-05 Thread Jeff Law
On 12/02/14 06:40, Ilya Enkovich wrote: Hi, For strchr calls bounds of the first argument are considered as returned which is wrong because NULL may be returned. This patch fixes that. Bootstrapped and tested on x86_64-unknown-linux-gnu. OK for trunk? Thanks, Ilya -- 2014-12-02 Ilya Enkov

Re: [PATCH, CHKP] Don't generate bndret for not instrumented calls

2014-12-05 Thread Jeff Law
On 12/02/14 06:33, Ilya Enkovich wrote: Hi, Currently bndret is generated each time we need to get bounds for returned pointer. It causes bndret generated for not instrumented calls incuding builtin function calls. Troubles appear when such builtin call is optimized out - bndret needs to be

Re: [patch] small fixes for post-reload compare elimination pass

2014-12-05 Thread Jeff Law
On 11/28/14 02:31, Eric Botcazou wrote: Hi, this patch fixes a few glitches in the post-reload compare elimination pass, most notably the slightly disturbing opening comment: This pass assumes: [...] (1) All comparison patterns are represented as [(set (reg:CC) (compare:CC (r

Re: [debug-early] emit locals early patchset

2014-12-05 Thread Aldy Hernandez
On 10/28/14 10:28, Jason Merrill wrote: My apologies for the long delay. I was on PTO. > On 10/27/2014 08:00 PM, Aldy Hernandez wrote: 2. Changes to gen_variable_die() to handle multiple passes (early/late dwarf generation). A lot of this is complicated by the fact that old_die's are cached a

Re: ptx debugging patch

2014-12-05 Thread Jeff Law
On 11/14/14 11:17, Bernd Schmidt wrote: The situation with debugging on ptx is a little strange - it allows .file and .loc directives for line numbers, and it provides a way to define dwarf2 debug sections - but as far as I can tell, there's no way of putting useful or accurate information into t

Re: [PATCH] Fix PR 61225

2014-12-05 Thread Segher Boessenkool
On Fri, Dec 05, 2014 at 03:36:01PM -0700, Jeff Law wrote: > >So combine tries to combine 6+7+8; the RTL it comes up with is a parallel > >of the memory decrement (without cc clobber, but that is fine), and setting > >r88 to the mem minus one. There is no such pattern in the target, and > >combine

Re: [PATCH] Fix PR 61225

2014-12-05 Thread Segher Boessenkool
On Fri, Dec 05, 2014 at 03:31:54PM -0700, Jeff Law wrote: > >Combine does not consider combining 9 into 7 because there is no LOG_LINK > >between them (the link for r88 is between 8 and 7 already). > OK, yea, that's a long standing design decision. We don't feed a single > def into multiple use s

Re: [PATCH] Fix PR 61225

2014-12-05 Thread Segher Boessenkool
On Thu, Dec 04, 2014 at 02:57:56PM -0600, Segher Boessenkool wrote: > Adding a bridge pattern in the target would work; or you can enhance combine > so it can break up this parallel correctly. I also investigated that second option. The enhancement transforms the combine result M = XXX :: T =

  1   2   >