Re: [PATCH 4/4] Wire X-Gene 1 up in the ARM (32bit) backend as a AArch32-capable core.

2015-01-13 Thread Ramana Radhakrishnan
On 12/01/15 20:15, Philipp Tomsich wrote: --- gcc/ChangeLog-2014| 10 ++ gcc/config/arm/arm-cores.def | 1 + gcc/config/arm/arm-tables.opt | 3 +++ gcc/config/arm/arm-tune.md| 3 ++- gcc/config/arm/arm.c | 22 ++ gcc/config/arm/arm

Re: [PATCH 3/4] Change the type of the prefetch-instructions to 'prefetch'.

2015-01-13 Thread Ramana Radhakrishnan
On 12/01/15 20:15, Philipp Tomsich wrote: --- gcc/config/aarch64/aarch64.md | 2 +- gcc/config/arm/types.md | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index 1f6b1b6..98f4f30 100644 --- a/gcc/confi

Re: [patch 1/2][ARM]: New CPU support for Marvell Whitney

2015-01-13 Thread Xingxing Pan
On 09/01/2015 19:22, Kyrill Tkachov wrote: Hi Xingxing, On 19/12/14 11:01, Xingxing Pan wrote: +/* Return true if vector element size is byte. */ Minor nit: two spaces after full stop and before */ Same in other places in the patch. +bool +marvell_whitney_vector_element_size_is_byte (rtx ins

Re: [RFC PATCH Fortran] make enum_9/10.f90 testcases work under FreeBSD ARM

2015-01-13 Thread Ramana Radhakrishnan
On Sun, Jan 11, 2015 at 9:55 PM, Andreas Tobler wrote: > Hi, > > I have here a possible way to make the enum_9.f90 and the enum_10.f90 work > under arm*-*-freebsd*. The solution for enum_9.f90 is straight forward. But > the one for enum_10.f90 requires a reordering of the dg-additional-sources > l

Re: [patch, arm] Minor optimization on thumb2 tail call

2015-01-13 Thread Ramana Radhakrishnan
On 19/11/14 02:43, Joey Ye wrote: Current thumb2 -Os generates suboptimal code for following tail call case: int f4(int b, int a, int c, int d); int g(int a, int b, int c, int d) { return f4(b, a, c, d); } arm-none-eabi-gcc -Os -mthumb -mcpu=cortex-m3 test.c push {r4, lr} mov r4, r1 mov r1,

Re: shift/extract SHIFT_COUNT_TRUNCATED combine bug

2015-01-13 Thread Richard Biener
On Mon, Jan 12, 2015 at 11:12 PM, Jeff Law wrote: > On 04/08/14 14:07, Mike Stump wrote: >> >> Something broke in the compiler to cause combine to incorrectly optimize: >> >> (insn 12 11 13 3 (set (reg:SI 604 [ D.6102 ]) >> (lshiftrt:SI (subreg/s/u:SI (reg/v:DI 601 [ x ]) 0) >>

Re: [PATCH] Fix PR64436: broken logic to process bitwise ORs in bswap pass

2015-01-13 Thread Richard Biener
On Mon, 12 Jan 2015, Thomas Preud'homme wrote: > Hi all, > > To identify if a set of loads, shift, cast, mask (bitwise and) and bitwise OR > is equivalent to a load or byteswap, the bswap pass assign a number to each > byte loaded according to its significance (1 for lsb, 2 for next least > si

Re: flatten expr.h (version 2)

2015-01-13 Thread Richard Biener
On Sun, 11 Jan 2015, Prathamesh Kulkarni wrote: > Hi, > This is a revamped expr.h flattening flattening patch rebased on > tree.h and tree-core.h flattening patch (r219402). > It depends upon the following patch to get committed. > https://gcc.gnu.org/ml/gcc-patches/2015-01/msg00565.html > > Chan

Re: [PATCH][ARM] FreeBSD ARM support, EABI, v3

2015-01-13 Thread Ramana Radhakrishnan
On Thu, Jan 8, 2015 at 8:51 PM, Andreas Tobler wrote: > On 08.01.15 17:27, Richard Earnshaw wrote: >> >> On 29/12/14 18:44, Andreas Tobler wrote: >>> >>> All, >>> >>> here is the third attempt to support ARM with FreeBSD. >>> >>> In the meantime we found another issue in the unwinder where I had t

Re: flatten expr.h (version 2)

2015-01-13 Thread Prathamesh Kulkarni
On 13 January 2015 at 15:34, Richard Biener wrote: > On Sun, 11 Jan 2015, Prathamesh Kulkarni wrote: > >> Hi, >> This is a revamped expr.h flattening flattening patch rebased on >> tree.h and tree-core.h flattening patch (r219402). >> It depends upon the following patch to get committed. >> https:

Re: [Patch, AArch64, Testsuite] Check for expected MOVI vectorization.

2015-01-13 Thread Marcus Shawcroft
On 9 January 2015 at 16:31, Tejas Belagod wrote: > gcc/testsuite: > > * gcc.target/aarch64/vect-movi.c: Check for vectorization for > 64-bit and 128-bit. OK /Marcus

[AArch64] Allow stack pointer as first input to a subtraction

2015-01-13 Thread Richard Sandiford
Several sub-based patterns allowed the stack pointer to be the destination but not the first source. This looked like an oversight; in all the patterns changed here (but not for example in *sub_mul_imm_), the instruction allows the stack pointer to appear in both positions. Tested on aarch64-linu

Re: [gomp4] Replace enum omp_clause_map_kind with enum gomp_map_kind (was: Including a file from include/ in gcc/*.h)

2015-01-13 Thread Thomas Schwinge
Hi! On Mon, 12 Jan 2015 17:39:16 +0100, Jakub Jelinek wrote: > On Mon, Jan 12, 2015 at 05:32:14PM +0100, Thomas Schwinge wrote: > > I have now committed the patch to gomp-4_0-branch in the following form. > > The issues raised above remain to be resolved. (I'll try to address those later on.)

Re: [AARCH64][PR63424][4.9]Backport "Fix PR63424 by adding v2di3 pattern"

2015-01-13 Thread Marcus Shawcroft
On 7 January 2015 at 14:01, Renlin Li wrote: > Is it Okay for branch 4.9? > > gcc/ChangeLog: > > 2014-11-19 Renlin Li > PR target/63424 > * config/aarch64/aarch64-simd.md (v2di3): New. > > gcc/testsuite/ChangeLog: > > 2014-11-19 Renlin Li > PR target/63424 > * gcc.target/aarch64

Re: [PATCH] Fix PR64461, Incorrect code on coldfire targets

2015-01-13 Thread Andreas Schwab
Jeff Law writes: > For "fun" I've got an m68k bootstrap of the trunk running. I don't expect > it to finish for at least a week or so, assuming it runs to completion. The last time I did that it took about 10 days (with all languages enabled, running in Aranym on a moderately fast host). Andre

Re: [Fortran, Patch] PR60334 - Segmentation fault on character pointer assignments

2015-01-13 Thread Andre Vehreschild
Hi Paul, thanks for the reviewed and the valued comments. Just for completeness I have attached the patch with the changes requested. Bootstraps and regtests ok on x86_64-linux-gnu. Regards, Andre On Mon, 12 Jan 2015 22:07:29 +0100 Paul Richard Thomas wrote: > Hi Andre, > > +

Re: [PATCH] Fix up computed goto on POINTERS_EXTEND_UNSIGNED targets (PR middle-end/63974)

2015-01-13 Thread H.J. Lu
On Mon, Jan 12, 2015 at 12:19 PM, Jakub Jelinek wrote: > Hi! > > The 991213-3.c testcase ICEs on aarch64-linux with -mabi=ilp32 > since wide-int merge. The problem is that > x = convert_memory_address (Pmode, x) > is used twice on a VOIDmode CONST_INT, which is wrong. > For non-VOIDmode rtl the s

Re: [PATCH/AARCH64] Disable load/store pair peephole for volatile mem

2015-01-13 Thread Marcus Shawcroft
On 10 December 2014 at 02:18, Andrew Pinski wrote: > Hi, > As mentioned in > https://gcc.gnu.org/ml/gcc-patches/2014-12/msg00609.html, the > load/store pair peepholes currently accept volatile mem which can > cause wrong code as the architecture does not define which part of the > pair happens f

Re: [AArch64] Allow stack pointer as first input to a subtraction

2015-01-13 Thread Marcus Shawcroft
On 13 January 2015 at 10:47, Richard Sandiford wrote: > Several sub-based patterns allowed the stack pointer to be the destination > but not the first source. This looked like an oversight; in all the patterns > changed here (but not for example in *sub_mul_imm_), the instruction > allows the sta

Re: [PATCH/AARCH64] Correctly handle stores of zero in fusion_load_store

2015-01-13 Thread Marcus Shawcroft
On 13 January 2015 at 04:48, Andrew Pinski wrote: > ChangeLog: > * config/aarch64/aarch64.c (fusion_load_store): Check dest mode > instead of src mode. > > > * gcc.target/aarch64/store-pair-1.c: New testcase. OK, thanks /Marcus

Re: [PATCH] Fix PR64404

2015-01-13 Thread Richard Biener
On Mon, 12 Jan 2015, Richard Biener wrote: > > I am testing the following patch to fix a latent bug in the vectorizer > dealing with redundant DRs. > > Bootstrap and regtest pending on x86_64-unknown-linux-gnu. Which shows the patch is bogus. Instead we are not prepared to handle this situatio

Re: [testsuite] PATCH: Add check_effective_target_pie

2015-01-13 Thread H.J. Lu
On Mon, Jan 12, 2015 at 03:04:20PM -0700, Jeff Law wrote: > On 01/12/15 14:51, Magnus Granberg wrote: > >måndag 12 januari 2015 12.11.17 skrev H.J. Lu: > >>On Mon, Jan 12, 2015 at 12:03 PM, Jeff Law wrote: > >>>On 01/12/15 12:59, H.J. Lu wrote: > I don't know if -pg will work PIE on any targe

[testsuite] PATCH: Check if -pg available

2015-01-13 Thread H.J. Lu
On Mon, Jan 12, 2015 at 03:04:20PM -0700, Jeff Law wrote: > On 01/12/15 14:51, Magnus Granberg wrote: > >måndag 12 januari 2015 12.11.17 skrev H.J. Lu: > >>On Mon, Jan 12, 2015 at 12:03 PM, Jeff Law wrote: > >>>On 01/12/15 12:59, H.J. Lu wrote: > I don't know if -pg will work PIE on any targe

Re: [PATCH]: New configure options that make the compiler use -fPIE and -pie as default option

2015-01-13 Thread H.J. Lu
On Mon, Jan 12, 2015 at 11:50:41PM +, Joseph Myers wrote: > On Mon, 12 Jan 2015, H.J. Lu wrote: > > > +if test x$enable_default_pie = xyes; then > > + AC_MSG_CHECKING(if $target supports default PIE) > > + enable_default_pie=no > > + case $target in > > +i?86*-*-linux* | x86_64*-*-linux

Re: [Fortran, Patch] Cosmetics

2015-01-13 Thread Andre Vehreschild
Hi, is this patch commited now? I don't have the rights to do so myself. - Andre On Sun, 28 Dec 2014 17:17:50 +0100 FX wrote: > > > 2014-12-28 Andre Vehreschild > > > >* trans-decl.c (gfc_finish_var_decl): Fixed displaced comment. > >* trans-stmt.c (gfc_trans_allocate): Fixed inde

Re: [testsuite] PATCH: Check if -pg available

2015-01-13 Thread H.J. Lu
On Tue, Jan 13, 2015 at 04:54:32AM -0800, H.J. Lu wrote: > On Mon, Jan 12, 2015 at 03:04:20PM -0700, Jeff Law wrote: > > On 01/12/15 14:51, Magnus Granberg wrote: > > >måndag 12 januari 2015 12.11.17 skrev H.J. Lu: > > >>On Mon, Jan 12, 2015 at 12:03 PM, Jeff Law wrote: > > >>>On 01/12/15 12:59,

[PATCH] Fix PR64415

2015-01-13 Thread Richard Biener
The following removes -fvar-tracking-assignments from being eligible to the optimization attribute/pragma which fixes LTO operation for mixed inputs (LTO just drops debug stmts if the flag is false). In theory we could also fix inlining to do that when inlining debug stmts into a non-VTA function

[PATCH] Fix PR64373

2015-01-13 Thread Richard Biener
The following patch guards LTO against PARM_DECLs without DECL_CONTEXT. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2015-02-13 Richard Biener PR lto/64373 * lto-streamer-out.c (tree_is_indexable): Guard for NULL DECL_CONTEXT. * gc

[PATCH] Fix PR64406

2015-01-13 Thread Richard Biener
When a optimization pass in the loop pipeline moves stmts between loops or removes loops we have to reset the SCEV cache to not have stale CHREC_LOOPs. This patch does it for loop distribution for which I have a testcase. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard.

Re: [PATCH] Fix PR64415

2015-01-13 Thread Jakub Jelinek
On Tue, Jan 13, 2015 at 02:04:26PM +0100, Richard Biener wrote: > The following removes -fvar-tracking-assignments from being eligible > to the optimization attribute/pragma which fixes LTO operation for > mixed inputs (LTO just drops debug stmts if the flag is false). > > In theory we could also

[PATCH] Fix PRs 64493 and 64495

2015-01-13 Thread Richard Biener
The following fixes a bug in outer loop reduction vectorization which happens to use a bogus vectorized stmt for the inner loop exit PHI. Bootstrap and regtest in progress on x86_64-unknown-linux-gnu. Richard. 2015-01-13 Richard Biener PR tree-optimization/64493 PR tree-opti

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

2015-01-13 Thread Marcus Shawcroft
On 12 January 2015 at 20:15, 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 > + * conf

[PATCH][ARM] PR 64149: Remove -mlra/-mno-lra option for ARM.

2015-01-13 Thread Matthew Wahab
Hello, The LRA register alloator is enabled by default for the ARM backend and -mno-lra should no longer be used. This patch removes the -mlra/-mno-lra option from the ARM backend. arm-none-linux-gnueabihf passes gcc-check with no new failures. Matthew 2015-01-13 Matthew Wahab P

Re: [PATCH] Fix PR64415

2015-01-13 Thread Richard Biener
On Tue, 13 Jan 2015, Jakub Jelinek wrote: > On Tue, Jan 13, 2015 at 02:04:26PM +0100, Richard Biener wrote: > > The following removes -fvar-tracking-assignments from being eligible > > to the optimization attribute/pragma which fixes LTO operation for > > mixed inputs (LTO just drops debug stmts i

Re: [PATCH] Fix PR64415

2015-01-13 Thread Jakub Jelinek
On Tue, Jan 13, 2015 at 02:26:39PM +0100, Richard Biener wrote: > The following seems to work (for the testcase). Testing coverage > of this mode will of course be bad. LGTM. > 2015-01-13 Richard Biener > > PR lto/64415 > * tree-inline.c (insert_debug_decl_map): Check destination

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

2015-01-13 Thread Marcus Shawcroft
On 12 January 2015 at 20:15, Philipp Tomsich wrote: > --- > gcc/config/aarch64/aarch64.md | 1 + > gcc/config/arm/xgene1.md | 531 > ++ > 2 files changed, 532 insertions(+) > create mode 100644 gcc/config/arm/xgene1.md > > diff --git a/gcc/config/a

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

2015-01-13 Thread Richard Earnshaw
On 13/01/15 13:46, Marcus Shawcroft wrote: > On 12 January 2015 at 20:15, Philipp Tomsich > wrote: >> --- >> gcc/config/aarch64/aarch64.md | 1 + >> gcc/config/arm/xgene1.md | 531 >> ++ >> 2 files changed, 532 insertions(+) >> create mode 100644 g

Re: [PATCH, aarch64] Add prefetch support

2015-01-13 Thread Marcus Shawcroft
On 11 January 2015 at 02:37, Andrew Pinski wrote: > On Tue, Nov 11, 2014 at 6:47 AM, Marcus Shawcroft > wrote: >> On 30 October 2014 08:54, Gopalasubramanian, Ganesh >> wrote: >> >>> 2014-10-30 Ganesh Gopalasubramanian >> >> Check the whitespace in your ChangeLog line. >> >>> * config/

Re: [PATCH, aarch64] Add prefetch support

2015-01-13 Thread Andrew Pinski
On Tue, Jan 13, 2015 at 6:13 AM, Marcus Shawcroft wrote: > On 11 January 2015 at 02:37, Andrew Pinski wrote: >> On Tue, Nov 11, 2014 at 6:47 AM, Marcus Shawcroft >> wrote: >>> On 30 October 2014 08:54, Gopalasubramanian, Ganesh >>> wrote: >>> 2014-10-30 Ganesh Gopalasubramanian >>> >>> C

Re: [testsuite] PATCH: Add check_effective_target_pie

2015-01-13 Thread H.J. Lu
On Mon, Jan 12, 2015 at 03:04:20PM -0700, Jeff Law wrote: > On 01/12/15 14:51, Magnus Granberg wrote: > >måndag 12 januari 2015 12.11.17 skrev H.J. Lu: > >>On Mon, Jan 12, 2015 at 12:03 PM, Jeff Law wrote: > >>>On 01/12/15 12:59, H.J. Lu wrote: > I don't know if -pg will work PIE on any targe

Re: [PATCH, aarch64] Add prefetch support

2015-01-13 Thread Dr. Philipp Tomsich
Great. I should have an update patch-set ready & tested later tonight. Best, Phil. > On 13 Jan 2015, at 15:18, Andrew Pinski wrote: > > On Tue, Jan 13, 2015 at 6:13 AM, Marcus Shawcroft > wrote: >> On 11 January 2015 at 02:37, Andrew Pinski wrote: >>> On Tue, Nov 11, 2014 at 6:47 AM, Marcus S

[PATCH] PR59448 - Promote consume to acquire

2015-01-13 Thread Andrew MacLeod
Lengthy discussion : https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59448 Basically we can generate incorrect code for an atomic consume operation in some circumstances. The general feeling seems to be that we should simply promote all consume operations to an acquire operation until there is a

[patch] libstdc++/64571 export fstream functions using new std::string

2015-01-13 Thread Jonathan Wakely
The existing tests for these functions are compile-only so didn't catch that I forgot to export these new symbols. I'll add a better test next week. Tested x86_64-linux, committed to trunk. commit d428e75af04d995451a917ef7c9caed6b8cee737 Author: Jonathan Wakely Date: Tue Jan 13 14:27:34 2015 +

Re: [PATCH] PR59448 - Promote consume to acquire

2015-01-13 Thread Richard Biener
On Tue, Jan 13, 2015 at 3:56 PM, Andrew MacLeod wrote: > Lengthy discussion : https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59448 > > Basically we can generate incorrect code for an atomic consume operation in > some circumstances. The general feeling seems to be that we should simply > promote al

Re: [PATCH] rs6000: Make rs6000_split_logical handle inverted 2nd operand (PR64358)

2015-01-13 Thread David Edelsohn
On Mon, Jan 12, 2015 at 6:52 PM, Pat Haugen wrote: > Following backport tested on 4.8/4.9 with no new regressions. Ok to commit > to those branches? > > -Pat > > > 2015-01-12 Pat Haugen > > Backport from mainline > 2014-12-20 Segher Boessenkool > > > PR target/64358 >

Re: [PATCH] PR59448 - Promote consume to acquire

2015-01-13 Thread Andrew MacLeod
On 01/13/2015 09:59 AM, Richard Biener wrote: On Tue, Jan 13, 2015 at 3:56 PM, Andrew MacLeod wrote: Lengthy discussion : https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59448 Basically we can generate incorrect code for an atomic consume operation in some circumstances. The general feeling seem

[[ARM/AArch64][testsuite] 01/36] Add explicit dependency on Neon Cumulative Saturation flag (QC).

2015-01-13 Thread Christophe Lyon
__set_neon_cumulative_sat() modifies the contents on the QC flag, and some intrinsics do so too: this patch adds the explicit dependency on the asm statement, to avoid code reordering or removal. When writing QC, the asm statement now has a fake input dependency, which is the output of the intrins

[[ARM/AArch64][testsuite] 03/36] Add vmax, vmin, vhadd, vhsub and vrhadd tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/binary_op_no64.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vhadd.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vhsub.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vmax.c: New file. * gcc.target/

[[ARM/AArch64][testsuite] 04/36] Add vld1_lane tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vld1_lane.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1_lane.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1_lane.c new file mode 100644 index 000..168cf5e --- /dev/null +++ b/gcc/testsuite/gcc.t

[[ARM/AArch64][testsuite] 00/36] More Neon intrinsics tests.

2015-01-13 Thread Christophe Lyon
This patch series is a follow-up of the conversion of my existing testsuite into DejaGnu. It does not yet cover all the tests I wrote, but I chose to post this set to have a chance to have it accepted before stage 4. I will have 35 more files to convert after this set. Most of the patches only add

[[ARM/AArch64][testsuite] 05/36] Add vldX_dup test.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c new file mode 100644 index 000..53cd8f3 --- /dev/null +++ b/gcc/testsuite/gcc.tar

[[ARM/AArch64][testsuite] 11/36] Add vmlal_lane and vmlsl_lane tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmlXl_lane.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vmlal_lane.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vmlsl_lane.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmlXl_lane.inc

[[ARM/AArch64][testsuite] 10/36] Add vmlal and vmlsl tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmlXl.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vmlal.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vmlsl.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmlXl.inc b/gcc/testsuite/gcc

[[ARM/AArch64][testsuite] 09/36] Add vsubhn, vraddhn and vrsubhn tests. Split vaddhn.c into vXXXhn.inc and vaddhn.c to share code with other new tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vXXXhn.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vraddhn.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vrsubhn.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vsubhn.c: New file. * gcc.target/a

[[ARM/AArch64][testsuite] 12/36] Add vmlal_n and vmlsl_n tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmlXl_n.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vmlal_n.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vmlsl_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmlXl_n.inc b/gcc/tests

[[ARM/AArch64][testsuite] 07/36] Add vmla_lane and vmls_lane tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmlX_lane.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vmla_lane.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vmls_lane.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmlX_lane.inc b/

[[ARM/AArch64][testsuite] 13/36] Add vmla_n and vmls_n tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmlX_n.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vmla_n.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vmls_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmlX_n.inc b/gcc/testsuite

[[ARM/AArch64][testsuite] 14/36] Add vqdmlal and vqdmlsl tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vqdmlXl.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vqdmlal.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vqdmlsl.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmlXl.inc b/gcc/tests

[[ARM/AArch64][testsuite] 15/36] Add vqdmlal_lane and vqdmlsl_lane tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vqdmlXl_lane.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vqdmlal_lane.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vqdmlsl_lane.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmlXl_

[[ARM/AArch64][testsuite] 16/36] Add vqdmlal_n and vqdmlsl_n tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vqdmlXl_n.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vqdmlal_n.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vqdmlsl_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmlXl_n.inc b/g

[[ARM/AArch64][testsuite] 19/36] Add vsubl tests, put most of the code in common with vaddl in vXXXl.inc.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vXXXl.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vsubl.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vaddl.c: Use code from vXXXl.inc. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vXXXl.i

[[ARM/AArch64][testsuite] 18/36] Add vsli_n and vsri_n tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vsXi_n.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vsli_n.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vsri_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vsXi_n.inc b/gcc/testsuite

[[ARM/AArch64][testsuite] 17/36] Add vpadd, vpmax and vpmin tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vpXXX.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vpadd.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vpmax.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vpmin.c: New file. diff --git a/gcc/testsuite/g

[[ARM/AArch64][testsuite] 20/36] Add vsubw tests, putting most of the code in common with vaddw through vXXWw.inc

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vXXXw.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vsubw.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vaddw.c: Use code from vXXXw.inc. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vXXXw.i

[[ARM/AArch64][testsuite] 21/36] Add vmovl tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmovl.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmovl.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmovl.c new file mode 100644 index 000..427c9ba --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch6

[[ARM/AArch64][testsuite] 22/36] Add vmovn tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmovn.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmovn.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmovn.c new file mode 100644 index 000..bc2c2ca --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch6

[[ARM/AArch64][testsuite] 23/36] Add vmul_lane tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmul_lane.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmul_lane.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmul_lane.c new file mode 100644 index 000..978cd9b --- /dev/null +++ b/gcc/testsuite/gcc.t

[[ARM/AArch64][testsuite] 24/36] Add vmul_n tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmul_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmul_n.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmul_n.c new file mode 100644 index 000..be0ee65 --- /dev/null +++ b/gcc/testsuite/gcc.target/aar

[[ARM/AArch64][testsuite] 25/36] Add vmull tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmull.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull.c new file mode 100644 index 000..3fdd51e --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch6

[[ARM/AArch64][testsuite] 02/36] Be more verbose, and actually confirm that a test was checked.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h (CHECK): Add trace. (CHECK_FP): Likewise. (CHECK_CUMULATIVE_SAT): Likewise. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/

[[ARM/AArch64][testsuite] 26/36] Add vmull_lane tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmull_lane.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull_lane.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull_lane.c new file mode 100644 index 000..d3aa879 --- /dev/null +++ b/gcc/testsuite/gc

[[ARM/AArch64][testsuite] 30/36] Add vpaddl tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vpaddl.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vpaddl.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vpaddl.c new file mode 100644 index 000..779cc77 --- /dev/null +++ b/gcc/testsuite/gcc.target/aar

[[ARM/AArch64][testsuite] 28/36] Add vmnv tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmvn.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmvn.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmvn.c new file mode 100644 index 000..04bb5f1 --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch64/a

[[ARM/AArch64][testsuite] 32/36] Add vqdmulh_lane tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vqdmulh_lane.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmulh_lane.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmulh_lane.c new file mode 100644 index 000..5260676 --- /dev/null +++ b/gcc/testsu

[[ARM/AArch64][testsuite] 33/36] Add vqdmulh_n tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vqdmulh_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmulh_n.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmulh_n.c new file mode 100644 index 000..ab66e2d --- /dev/null +++ b/gcc/testsuite/gcc.t

[[ARM/AArch64][testsuite] 29/36] Add vpadal tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vpadal.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vpadal.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vpadal.c new file mode 100644 index 000..dcedb45 --- /dev/null +++ b/gcc/testsuite/gcc.target/aar

[[ARM/AArch64][testsuite] 31/36] Add vqdmulh tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vqdmulh.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmulh.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmulh.c new file mode 100644 index 000..8d2a365 --- /dev/null +++ b/gcc/testsuite/gcc.target/

[[ARM/AArch64][testsuite] 36/36] Add vqdmull_n tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vqdmull_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmull_n.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmull_n.c new file mode 100644 index 000..9e73009 --- /dev/null +++ b/gcc/testsuite/gcc.t

[[ARM/AArch64][testsuite] 34/36] Add vqdmull tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vqdmull.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmull.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmull.c new file mode 100644 index 000..e71a624 --- /dev/null +++ b/gcc/testsuite/gcc.target/

[[ARM/AArch64][testsuite] 35/36] Add vqdmull_lane tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vqdmull_lane.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmull_lane.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmull_lane.c new file mode 100644 index 000..12f2a6b --- /dev/null +++ b/gcc/testsu

Re: [PATCH] PR59448 - Promote consume to acquire

2015-01-13 Thread Torvald Riegel
On Tue, 2015-01-13 at 09:56 -0500, Andrew MacLeod wrote: > The problem with the patch in the PR is the memory model is immediately > promoted from consume to acquire. This happens *before* any of the > memmodel checks are made. If a consume is illegally specified (such as > in a compare_exch

[[ARM/AArch64][testsuite] 08/36] Add vtrn tests. Refactor vzup and vzip tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vshuffle.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vtrn.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vuzp.c: Use code from vshuffle.inc. * gcc.target/aarch64/advsimd-intrinsics/vzip.c: Use code fro

[[ARM/AArch64][testsuite] 06/36] Add vmla and vmls tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmlX.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vmla.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vmls.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmlX.inc b/gcc/testsuite/gcc.ta

Re: [patch RFA libffi SH] Fix configure error for sh4-unknown-linux-gnu

2015-01-13 Thread Richard Henderson
On 01/12/2015 09:38 PM, Kaz Kojima wrote: > 2015-01-13 Kaz Kojima > > * configure.host: Remove extra brackets for sh. Ok, thanks. r~

Re: [PATCH] PR59448 - Promote consume to acquire

2015-01-13 Thread Andrew MacLeod
On 01/13/2015 10:20 AM, Torvald Riegel wrote: On Tue, 2015-01-13 at 09:56 -0500, Andrew MacLeod wrote: The problem with the patch in the PR is the memory model is immediately promoted from consume to acquire. This happens *before* any of the memmodel checks are made. If a consume is illegall

Re: libffi is broken for x32

2015-01-13 Thread H.J. Lu
On Mon, Jan 12, 2015 at 5:13 PM, Richard Henderson wrote: > On 01/12/2015 04:57 PM, H.J. Lu wrote: >> The problem is my x86_64-*-linux-gnux32 patch >> >> https://gcc.gnu.org/ml/gcc-patches/2012-08/msg01083.html >> >> was never accepted upstream. Can I apply it to config.guess >> in GCC? > > Ah.

[[ARM/AArch64][testsuite] 27/36] Add vmull_n tests.

2015-01-13 Thread Christophe Lyon
* gcc.target/aarch64/advsimd-intrinsics/vmull_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull_n.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull_n.c new file mode 100644 index 000..df28a94 --- /dev/null +++ b/gcc/testsuite/gcc.target/

Re: libffi is broken for x32

2015-01-13 Thread Richard Henderson
On 01/13/2015 07:35 AM, H.J. Lu wrote: > Can I apply it to GCC trunk? Please. r~

PATCH][ARM][4.8]Backport "Fix definition of __ARM_SIZEOF_WCHAR_T"

2015-01-13 Thread Renlin Li
Hi all, This is a backport patch for https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=213864 arm-none-eabi regression test has been done, no new issues. Okay for branch 4.8? gcc/ChangeLog Fix PR target/61413 Backport from mainline. 2014-08-12 Ramana Radhakrishnan PR target/61413

Re: PATCH][ARM][4.8]Backport "Fix definition of __ARM_SIZEOF_WCHAR_T"

2015-01-13 Thread Richard Earnshaw
On 13/01/15 15:53, Renlin Li wrote: > Hi all, > > This is a backport patch for > https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=213864 > > arm-none-eabi regression test has been done, no new issues. > Okay for branch 4.8? > > gcc/ChangeLog > Fix PR target/61413 > Backport from mainline.

[ARM]Make CLZ_DEFINED_VALUE_AT_ZERO and CTZ_DEFINED_VALUE_AT_ZERO return 2.

2015-01-13 Thread Renlin Li
Hi all, This patch update CLZ_DEFINED_VALUE_AT_ZERO and CTZ_DEFINED_VALUE_AT_ZERO to make them return 2 in arm back-end. Here are the explanations from GCC documentation: CLZ_DEFINED_VALUE_AT_ZERO (mode, value) CTZ_DEFINED_VALUE_AT_ZERO (mode, value) A C expression that indicates whether the

Re: [ARM]Make CLZ_DEFINED_VALUE_AT_ZERO and CTZ_DEFINED_VALUE_AT_ZERO return 2.

2015-01-13 Thread Richard Earnshaw
On 13/01/15 15:58, Renlin Li wrote: > Hi all, > > This patch update CLZ_DEFINED_VALUE_AT_ZERO and > CTZ_DEFINED_VALUE_AT_ZERO to make them return 2 in > arm back-end. > > Here are the explanations from GCC documentation: > > CLZ_DEFINED_VALUE_AT_ZERO (mode, value) > CTZ_DEFINED_VALUE_AT_ZERO (m

[PATCH] Fix REE for vector modes (PR rtl-optimization/64286, take 2)

2015-01-13 Thread Jakub Jelinek
On Mon, Jan 12, 2015 at 02:29:53PM -0700, Jeff Law wrote: > On 01/12/15 12:59, Jakub Jelinek wrote: > >Hi! > > > >As mentioned in the PR, giving up for all vector mode extensions > >is unnecessary, but unlike scalar integer extensions, where the low part > >of the extended value is the original val

[PATCH] Reenable CSE of non-volatile inline asm (PR rtl-optimization/63637)

2015-01-13 Thread Jakub Jelinek
Hi! My PR60663 fix unfortunately stopped CSE of all inline-asms, even when they e.g. only have the clobbers added by default. This patch attempts to restore the old behavior, with the exceptions: 1) as always, asm volatile is not CSEd 2) inline-asm with multiple outputs are not CSEd 3) on request

Re: Open Issues in the TSAN Runtime

2015-01-13 Thread Jakub Jelinek
On Mon, Jan 12, 2015 at 09:55:15PM +0100, Jakub Jelinek wrote: > > specific changes from there. > > Yes, I'll try to cherry-pick those tomorrow. > > > I am especially interested in fixing these two issues, but there may be > > other important improvements too: > > > > > > https://gcc.gnu.org/b

Re: [PATCH] IPA ICF: add comparison for target and optimization nodes

2015-01-13 Thread Jan Hubicka
> Hello. > > Following patch adds support for target and optimization nodes comparison, > which is > based on Honza's newly added infrastructure. > > Apart from that, there's a small hunk that corrects formatting and removes > unnecessary > call to a comparison function. > > Hope it can be app

[PATCH] Don't set TREE_READONLY on dummy args with VALUE attr (PR fortran/64528)

2015-01-13 Thread Jakub Jelinek
Hi! With VALUE attr, the PARM_DECLs hold the values and thus are (usually) not read-only, therefore telling the middle-end they are read-only leads to invalid IL. Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2015-01-13 Jakub Jelinek PR fortran/64

[PATCH] Fix ICE with -fgnu-tm and pragma ivdep (PR middle-end/64391)

2015-01-13 Thread Marek Polacek
We ICE on this testcase, because the usage of #pragma GCC ivdep pulls in the ANNOTATE internal functions which don't have underlying fndecls, hence we segv on a NULL_TREE. This patch makes get_attrs_for be prepared for such a scenario. The callers of get_attrs_for already check for NULL_TREE. I

Re: [PATCH] Don't set TREE_READONLY on dummy args with VALUE attr (PR fortran/64528)

2015-01-13 Thread Tobias Burnus
Jakub Jelinek wrote: > With VALUE attr, the PARM_DECLs hold the values and thus are (usually) not > read-only, therefore telling the middle-end they are read-only leads to > invalid IL. > > Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for > trunk? OK. Thanks for the pat

Re: flatten expr.h (version 2)

2015-01-13 Thread Prathamesh Kulkarni
On 13 January 2015 at 16:06, Prathamesh Kulkarni wrote: > On 13 January 2015 at 15:34, Richard Biener wrote: >> On Sun, 11 Jan 2015, Prathamesh Kulkarni wrote: >> >>> Hi, >>> This is a revamped expr.h flattening flattening patch rebased on >>> tree.h and tree-core.h flattening patch (r219402). >>

  1   2   >