Re: [i386] define __SIZEOF_FLOAT128__

2014-04-23 Thread Uros Bizjak
On Thu, Apr 24, 2014 at 7:35 AM, Marc Glisse wrote: >>> (Adding an i386 maintainer in Cc) >>> http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00620.html >>> >>> >>> On Sun, 13 Apr 2014, Marc Glisse wrote: >>> Hello, some people like having a macro to test if a type is available (

Re: [patch, libgfortran] Wrong result for UTF-8/UCS-4 list-directed and namelist read and nml write

2014-04-23 Thread Tobias Burnus
Jerry DeLisle wrote: The attached patch fixes namelist read/write and list directed read/write to support UTF-8. I have attached a preliminary test case to use to experiment with this. I will need to set it up for the testsuite still. Regression tested on x86-64-linux-gnu. OK for trunk or wait?

Re: [i386] define __SIZEOF_FLOAT128__

2014-04-23 Thread Marc Glisse
On Wed, 23 Apr 2014, H.J. Lu wrote: On Wed, Apr 23, 2014 at 11:48 AM, Marc Glisse wrote: (Adding an i386 maintainer in Cc) http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00620.html On Sun, 13 Apr 2014, Marc Glisse wrote: Hello, some people like having a macro to test if a type is available

Re: [Patch] Fix a bug of consecutive range quantifiers in regex

2014-04-23 Thread Tim Shen
On Wed, Apr 23, 2014 at 11:23 PM, Tim Shen wrote: > Booted and tested with -m32 and -m64. I should give an explanation: When traversing a graph in _M_clone(), it should stop at a node with id _M_end. However, if _M_end has other outgoing edge (_M_alt), the edge should be concerned too. So this p

Re: [patch, libgfortran] Wrong result for UTF-8/UCS-4 list-directed and namelist read and nml write

2014-04-23 Thread Jerry DeLisle
On 04/13/2014 10:48 AM, Jerry DeLisle wrote: > Ping! This is PR52539 > Without comment or objections, I will commit this patch this weekend to trunk. Regards, Jerry > On 03/29/2014 09:58 PM, Jerry DeLisle wrote: >> Hi all, >> >> The attached patch fixes namelist read/write and list directed rea

[Patch] Fix a bug of consecutive range quantifiers in regex

2014-04-23 Thread Tim Shen
Booted and tested with -m32 and -m64. Thanks! -- Regards, Tim Shen commit 96bcfcaf910630a1daa51332ab94c75843716f29 Author: tim Date: Wed Apr 23 00:56:21 2014 -0400 2014-04-24 Tim Shen * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do _M_alt before _

RE: [PATCH][3/3] Fix PR54733 Optimize endian independent load/store

2014-04-23 Thread Thomas Preud'homme
See updated part 3 of the patch in attachment. New ChangeLog are as follows *** gcc/ChangeLog *** 2014-04-23 Thomas Preud'homme PR tree-optimization/54733 * tree-ssa-math-opts.c (find_bswap_load): Renamed to ... (find_bswap_or_nop_load): This. (find_bswap_1): R

RE: [PATCH][2/3] Fix PR54733 Optimize endian independent load/store

2014-04-23 Thread Thomas Preud'homme
See updated part 2 of the patch in attachment. Part 1 is unchanged. New ChangeLog are as follows: *** gcc/ChangeLog *** 2014-04-23 Thomas Preud'homme PR tree-optimization/54733 * tree-ssa-math-opts.c (find_bswap_load): New. (find_bswap_1): Add support for memory sourc

Ping 2 - RE: [PATCH] (configure.ac) Add support for TI-RTOS

2014-04-23 Thread Kapania, Ashish
Pinging again. Requesting src/configure.ac owner to pick up my change. Thanks, Ashish -Original Message- From: Kapania, Ashish Sent: Friday, April 11, 2014 3:39 PM To: 'gcc-patches@gcc.gnu.org' Subject: Ping - RE: PATCH] (configure.ac) Add support for TI-RTOS Ping... -Original Mess

[PATCH] Fix PR60896

2014-04-23 Thread Cong Hou
See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60896 for bug report. The cause of PR60896 is that those statements in PATTERN_DEF_SEQ in pre-recognized widen-mult pattern are not forwarded to later recognized dot-product pattern. Another issue is that the def types of statements in PATTERN_DEF_S

Re: Optimize n?rotate(x,n):x

2014-04-23 Thread Jan Hubicka
> > Thank you for the comments. If I understand correctly: > > - it is always ok to look at edge->probability (no need to check that the > probabilities are available as Richard feared) Actually with -fno-guess-branch-probabilities (default only at -O0) the probability is not computed. You c

Re: Optimize n?rotate(x,n):x

2014-04-23 Thread Marc Glisse
On Wed, 23 Apr 2014, Jan Hubicka wrote: + /* Now optimize (x != 0) ? x + y : y to just y. + The following condition is too restrictive, there can easily be another + stmt in middle_bb, for instance a CONVERT_EXPR for the second argument. */ + gimple assign = last_and_only_stmt (middle

Re: wide-int, gengtype

2014-04-23 Thread Richard Henderson
On 04/23/2014 01:45 PM, Mike Stump wrote: > * gengtype.c: Remove include of double-int.h. > (do_typedef): Use wide-int interfaces. > (open_base_files): Add wide-int.h. > (main): Add offset_int and widest_int typedefs. > * gengtype-lex.l: Handle "^". > (CXX_KEYWOR

Re: [PATCH 03/89] Introduce gimple_bind and use it for accessors.

2014-04-23 Thread Jeff Law
On 04/23/14 15:13, David Malcolm wrote: On Wed, 2014-04-23 at 15:04 -0600, Jeff Law wrote: On 04/21/14 10:56, David Malcolm wrote: This updates all of the gimple_bind_* accessors in gimple.h from taking a plain gimple to taking a gimple_bind (or const_gimple_bind), with the checking happening a

Re: Optimize n?rotate(x,n):x

2014-04-23 Thread Jan Hubicka
> Honza, any comment on Richard's question? > > On Tue, 15 Apr 2014, Richard Biener wrote: > > >On Mon, Apr 14, 2014 at 6:40 PM, Marc Glisse wrote: > >>On Mon, 14 Apr 2014, Richard Biener wrote: > >> > + /* If the special case has a high probability, keep it. */ > + if (EDGE_PRED (mid

Re: [PATCH 03/89] Introduce gimple_bind and use it for accessors.

2014-04-23 Thread David Malcolm
On Wed, 2014-04-23 at 15:04 -0600, Jeff Law wrote: > On 04/21/14 10:56, David Malcolm wrote: > > This updates all of the gimple_bind_* accessors in gimple.h from taking a > > plain gimple to taking a gimple_bind (or const_gimple_bind), with the > > checking happening at the point of cast. > > > > V

[AArch64] Broken builtin type mangling -- was [c++] typeinfo for target types

2014-04-23 Thread Richard Henderson
On 04/23/2014 12:43 PM, Marc Glisse wrote: > Would mangling the aarch64 builtins be a lot of work? Did other platforms > break > as well? Hmm. Apparently, aarch64 already *has* mangling support, but it's broken. The node is built with DFmode in aarch64_init_simd_builtins, but then (not) matched

Re: [PATCH 03/89] Introduce gimple_bind and use it for accessors.

2014-04-23 Thread Jeff Law
On 04/21/14 10:56, David Malcolm wrote: This updates all of the gimple_bind_* accessors in gimple.h from taking a plain gimple to taking a gimple_bind (or const_gimple_bind), with the checking happening at the point of cast. Various other types are strengthened from gimple to gimple_bind, and fr

Fix DEFHOOKPOD argument order in target-hooks-macros.h comment

2014-04-23 Thread Tom de Vries
Joern, target-hooks-macros.h shows an argument order of DOC, TYPE, NAME, INIT for DEFHOOKPOD in a comment: ... DEFHOOKPOD(DOC, TYPE, NAME, INIT): Define a piece-of-data 'hook'. ... But the first DEFHOOKPOD that I see in target.def: ... DEFHOOKPOD (atomic_test_and_set_trueval, "This value s

Re: wide-int, gengtype

2014-04-23 Thread Mike Stump
On Jan 30, 2014, at 2:56 PM, Mike Stump wrote: > On Jan 1, 2014, at 7:58 PM, Mike Stump wrote: >> On Nov 23, 2013, at 11:21 AM, Mike Stump wrote: >>> Richi has asked the we break the wide-int patch so that the individual port >>> and front end maintainers can review their parts without have to

Re: [RFC] Add aarch64 support for ada

2014-04-23 Thread Eric Botcazou
> But it breaks on IA-64 for the same reason as on Aarch64 so we'll need to > find something else. Tentative revised patch attached. Can you give it a try when you have some time? There is a rationale based on my understanding in types.h. TIA. -- Eric BotcazouIndex: comperr.adb =

Re: [PATCH 02/89] Introduce gimple_switch and use it in various places

2014-04-23 Thread Trevor Saunders
On Wed, Apr 23, 2014 at 01:32:24PM -0700, Richard Henderson wrote: > On 04/23/2014 12:56 PM, Jeff Law wrote: > > On 04/22/14 15:38, Richard Henderson wrote: > >> On 04/22/2014 10:13 AM, David Malcolm wrote: > >>> On Mon, 2014-04-21 at 18:45 -0400, Trevor Saunders wrote: > > --- a/gcc/tree-loop-

Re: [c++] typeinfo for target types

2014-04-23 Thread Richard Henderson
On 04/23/2014 12:43 PM, Marc Glisse wrote: >> Any c++ compilation aborts at > > That's surprising, the code I touched is only ever supposed to run while > compiling one file in libsupc++, if I understand correctly. Ah, well, perhaps it's one of the first built for stage1 libstdc++. I admit to not

Re: [PATCH 02/89] Introduce gimple_switch and use it in various places

2014-04-23 Thread Richard Henderson
On 04/23/2014 12:56 PM, Jeff Law wrote: > On 04/22/14 15:38, Richard Henderson wrote: >> On 04/22/2014 10:13 AM, David Malcolm wrote: >>> On Mon, 2014-04-21 at 18:45 -0400, Trevor Saunders wrote: > --- a/gcc/tree-loop-distribution.c > +++ b/gcc/tree-loop-distribution.c > @@ -687,8 +687,

[AArch64/ARM 3/3] Add execution tests of ARM EXT intrinsics

2014-04-23 Thread Alan Lawrence
Final patch in series, adds new tests of the ARM EXT Intrinsics, that also check the execution results, reusing the test bodies introduced into AArch64 in the first patch. (These tests subsume the autogenerated ones in testsuite/gcc.target/arm/neon/ that only check assembler output.) Tests use gc

[AArch64/ARM 2/3] Detect EXT patterns to vec_perm_const, use for EXT intrinsics

2014-04-23 Thread Alan Lawrence
This patch updates aarch64_expand_vec_perm_const to recognise patterns for the EXT instructions, and replaces the temporary inline assembler of the vext[q]_* intrinsics with calls to __builtin_shuffle that are now picked up by the former (providing a testcase). A complication is that when an o

Re: [PATCH 02/89] Introduce gimple_switch and use it in various places

2014-04-23 Thread Jeff Law
On 04/21/14 10:56, David Malcolm wrote: gcc/ * gimple.h (gimple_statement_switch): New subclass of gimple_statement_with_ops, adding the invariant that stmt->code == GIMPLE_SWITCH. (gimple_statement_base::as_a_gimple_switch): New. (gimple_statement_base::dy

Re: [PATCH 02/89] Introduce gimple_switch and use it in various places

2014-04-23 Thread Jeff Law
On 04/22/14 15:38, Richard Henderson wrote: On 04/22/2014 10:13 AM, David Malcolm wrote: On Mon, 2014-04-21 at 18:45 -0400, Trevor Saunders wrote: --- a/gcc/tree-loop-distribution.c +++ b/gcc/tree-loop-distribution.c @@ -687,8 +687,9 @@ generate_loops_for_partition (struct loop *loop, partitio

[AArch64/ARM 0/3] Patch series for EXT instructions

2014-04-23 Thread Alan Lawrence
The meat of this is in the second patch, which makes the AArch64 backend look for shuffle masks that can be turned into EXT instructions, and updates the vext[q]_* Neon Intrinsics to use __builtin_shuffle rather than the current inline assembler; this then produces the same instructions (unless

[AArch64/ARM 3/3] Add execution tests of ARM REV intrinsics

2014-04-23 Thread Alan Lawrence
Final patch in series, adds new tests of the REV Neon Intrinsics for ARM. These tests subsume the autogenerated tests in gcc/testsuite/gcc.target/arm/neon (that only check assembler output) by also checking the execution results, reusing the test bodies introduced into AArch64 in the first patch

Re: [i386] define __SIZEOF_FLOAT128__

2014-04-23 Thread H.J. Lu
On Wed, Apr 23, 2014 at 11:48 AM, Marc Glisse wrote: > (Adding an i386 maintainer in Cc) > http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00620.html > > > On Sun, 13 Apr 2014, Marc Glisse wrote: > >> Hello, >> >> some people like having a macro to test if a type is available >> (__SIZEOF_INT128__ fo

Re: [c++] typeinfo for target types

2014-04-23 Thread Marc Glisse
On Wed, 23 Apr 2014, Richard Henderson wrote: On 04/13/2014 01:41 AM, Marc Glisse wrote: Hello, this patch generates typeinfo for target types. On x86_64, it adds these 6 lines to nm -C libsupc++.a. A follow-up patch will be needed to export and version those in the shared library. +0

[AArch64/ARM 2/3] Recognize shuffle patterns for REV instructions on AARch64, rewrite intrinsics.

2014-04-23 Thread Alan Lawrence
This patch (borrowing heavily from the ARM backend) makes aarch64_expand_vec_perm_const output REV instructions when appropriate, and then implements the vrev_XXX intrinsics in terms of __builtin_shuffle (which now produces the same assembly instructions). No regressions (and tests in previous p

[AArch64/ARM 1/3] Add execution + assembler tests of AArch64 REV Neon Intrinsics

2014-04-23 Thread Alan Lawrence
This adds DejaGNU tests of the existing AArch64 vrev_* intrinsics, both checking the assembler output and the runtime results. Test bodies are in separate files ready to reuse for ARM in the third patch. All tests passing on aarch64-none-elf and aarch64_be-none-elf. gcc/testsuite/ChangeLog: 2

Re: [PATCH] Change is-a.h to support typedefs of pointers

2014-04-23 Thread David Malcolm
On Wed, 2014-04-23 at 18:32 +0200, Richard Biener wrote: > On April 23, 2014 5:31:42 PM CEST, David Malcolm wrote: [...snip...] > >The following patch changes the is-a.h API to remove the implicit > >injection of a pointer, so that one writes: > > > > Q* q = dyn_cast (p); > > > >rather than: >

[AArch64/ARM 0/3] Patch series for REV permute instructions

2014-04-23 Thread Alan Lawrence
The meat of this is in the second patch, which makes the AArch64 backend look for shuffle masks that can be turned into REV instructions, and updates the VREV Neon Intrinsics to use __builtin_shuffle rather than the current inline assembler; this then produces the same instructions (unless the m

Re: [i386] define __SIZEOF_FLOAT128__

2014-04-23 Thread Marc Glisse
(Adding an i386 maintainer in Cc) http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00620.html On Sun, 13 Apr 2014, Marc Glisse wrote: Hello, some people like having a macro to test if a type is available (__SIZEOF_INT128__ for instance). This adds macros for __float80 and __float128. The types s

Re: [c++] typeinfo for target types

2014-04-23 Thread Richard Henderson
On 04/13/2014 01:41 AM, Marc Glisse wrote: > Hello, > > this patch generates typeinfo for target types. On x86_64, it adds these 6 > lines to nm -C libsupc++.a. A follow-up patch will be needed to export and > version those in the shared library. > > + V typeinfo for __float128 >

Re: Optimize n?rotate(x,n):x

2014-04-23 Thread Marc Glisse
Honza, any comment on Richard's question? On Tue, 15 Apr 2014, Richard Biener wrote: On Mon, Apr 14, 2014 at 6:40 PM, Marc Glisse wrote: On Mon, 14 Apr 2014, Richard Biener wrote: + /* If the special case has a high probability, keep it. */ + if (EDGE_PRED (middle_bb, 0)->probability < P

Re: [Patch] Fix obsolete autoconf macros in configure.ac

2014-04-23 Thread Steve Ellcey
On Wed, 2014-04-23 at 18:40 +0200, Andreas Schwab wrote: > "Steve Ellcey " writes: > > > diff --git a/gcc/configure.ac b/gcc/configure.ac > > index d789557..98acb1b 100644 > > --- a/gcc/configure.ac > > +++ b/gcc/configure.ac > > @@ -1083,8 +1083,8 @@ int main() > >fi > > fi > > > > -AC_CH

Re: -Wvariadic-macros does not print warning

2014-04-23 Thread Prathamesh Kulkarni
I didn't attach the patch, I am extremely sorry for the noise. I am re-posting the mail. This is a follow up mail to http://gcc.gnu.org/ml/gcc-help/2014-04/msg00096.html I have attached patch that prints the warning when passed -Wvariadic-macros (I mostly followed it along lines of -Wlong-long). OK

[4.9.1 RFA] [tree-optimization/60902] Invalidate outputs of GIMPLE_ASMs when threading around loops

2014-04-23 Thread Jeff Law
The more aggressive threading across loop backedges requires invalidating equivalences that do not hold across all iterations of a loop. At first glance, invaliding at PHI nodes should be sufficient as any statement which potentially generated a new equivalence would be reprocessed as we com

Re: -Wvariadic-macros does not print warning

2014-04-23 Thread Prathamesh Kulkarni
forgot to add gcc-patches@gcc.gnu.org. Sorry for the double-post. On Wed, Apr 23, 2014 at 11:28 PM, Prathamesh Kulkarni wrote: > This is a follow up mail to > http://gcc.gnu.org/ml/gcc-help/2014-04/msg00096.html > I have attached patch that prints the warning when passed -Wvariadic-macros > (I m

Re: [AArch64/ARM 2/3] Rewrite AArch64 UZP Intrinsics using __builtin_shuffle

2014-04-23 Thread Marcus Shawcroft
On 27 March 2014 17:25, Alan Lawrence wrote: > This patch replaces the temporary inline assembler for vuzp_* in arm_neon.h > with equivalent calls to __builtin_shuffle. These are matched by > aarch64_expand_vec_perm_const{,_1} to output (generally) the same assembler > instructions. That is, exc

Re: [AArch64/ARM 1/3] Add execution + assembler tests of AArch64 UZP Intrinsics

2014-04-23 Thread Marcus Shawcroft
On 27 March 2014 17:17, Alan Lawrence wrote: > This adds DejaGNU tests of the existing AArch64 vuzp_* intrinsics, both > checking the assembler output and the runtime results. Test bodies are in > separate files ready to reuse for ARM in the third patch. > > Putting these in a new subdirectory wit

Re: [Patch] Fix obsolete autoconf macros in configure.ac

2014-04-23 Thread Rainer Orth
Steve Ellcey writes: > Actually, now that I look more at caddr_t, I see that we probably > shouldn't be using it at all. The only uses in the gcc subdirectory are > for calls to mmap and munmap (in gcc.c, gcc-common.c, and > config/host-solaris.c) and the latest definitions for mmap and munmap >

Re: [AArch64/ARM 2/3] Rewrite AArch64 ZIP Intrinsics using __builtin_shuffle

2014-04-23 Thread Marcus Shawcroft
On 27 March 2014 10:52, Alan Lawrence wrote: > This patch replaces the temporary inline assembler for vzip_* in arm_neon.h > with equivalent calls to __builtin_shuffle. These are matched by > aarch64_expand_vec_perm_const{,_1} to output the same assembler > instructions. > > Tests from first patch

Re: [AArch64/ARM 1/3] Add execution + assembler tests of the AArch64 ZIP Intrinsics.

2014-04-23 Thread Marcus Shawcroft
On 27 March 2014 10:52, Alan Lawrence wrote: > This adds DejaGNU tests of the existing AArch64 vzip_* intrinsics, both > checking the assembler output and the runtime results. Test bodies are in > separate files ready to reuse for ARM in the third patch. Putting these in a > new subdirectory ready

Re: [Patch] Fix obsolete autoconf macros in configure.ac

2014-04-23 Thread Steve Ellcey
On Wed, 2014-04-23 at 18:40 +0200, Andreas Schwab wrote: > "Steve Ellcey " writes: > > > diff --git a/gcc/configure.ac b/gcc/configure.ac > > index d789557..98acb1b 100644 > > --- a/gcc/configure.ac > > +++ b/gcc/configure.ac > > @@ -1083,8 +1083,8 @@ int main() > >fi > > fi > > > > -AC_CH

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-23 Thread Jeff Law
On 04/22/14 02:03, Richard Sandiford wrote: First of all, thanks a lot for doing this. Maybe one day we'll have the same in rtl :-) Funny you should mention that. I blocked off a hunk of time for David to investigate doing some work on that this year. Jeff

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-23 Thread Jeff Law
On 04/22/14 02:36, Richard Biener wrote: On Mon, Apr 21, 2014 at 6:56 PM, David Malcolm wrote: This is a greatly-expanded version of: http://gcc.gnu.org/ml/gcc-patches/2013-12/msg01262.html As of r205034 (de6bd75e3c9bc1efe8a6387d48eedaa4dafe622d) and r205428 (a90353203da18288cdac1b0b78fe7b2

Re: Inliner heuristics TLC 1/n - let small function inlinng to ignore cold portion of program

2014-04-23 Thread Xinliang David Li
On Tue, Apr 22, 2014 at 1:17 PM, Jan Hubicka wrote: >> This looks fine. LIPO has similar change too. Other directions worth >> looking into: >> >> 1) To model icache effect better, weighted callee size need to be >> used with profile. The weight for BB may look like: min(1, >> FREQ(BB)/FREQ(ENT

Re: [Patch] Fix obsolete autoconf macros in configure.ac

2014-04-23 Thread Andreas Schwab
"Steve Ellcey " writes: > diff --git a/gcc/configure.ac b/gcc/configure.ac > index d789557..98acb1b 100644 > --- a/gcc/configure.ac > +++ b/gcc/configure.ac > @@ -1083,8 +1083,8 @@ int main() >fi > fi > > -AC_CHECK_TYPE(ssize_t, int) > -AC_CHECK_TYPE(caddr_t, char *) > +AC_CHECK_TYPES([ssi

[ARM] Initialize new tune_params values

2014-04-23 Thread James Greenhalgh
Hi, Revision 209561 introduces two new paramteres for tune_params, but does not initialize them in the Cortex-A57 or Cortex-A12 tuning structures. This breaks bootstrap. Fixed by initializing them to sensible values. Checked to ensure the warnings are cleared, and bootstrap can continue. Raman

Re: [PATCH] Change is-a.h to support typedefs of pointers

2014-04-23 Thread Richard Biener
On April 23, 2014 5:31:42 PM CEST, David Malcolm wrote: >The is-a.h API currently implicitly injects a pointer into the type: > > template > inline T * > ^^^ Note how it returns a (T*) > as_a (U *p) > { >gcc_checking_assert (is_a (p)); > but uses th

Re: [PATCH][RFC] Remove RTL loop unswitching

2014-04-23 Thread Jan Hubicka
> On Sun, 20 Apr 2014, Jan Hubicka wrote: > > > > > > > This removes RTL loop unswitching (see last years discussion about > > > compile-time issues of that pass). RTL loop unswitching is > > > enabled together with GIMPLE loop unswitching at -O3 and by > > > -floop-unswitch. It's clearly the w

[Patch] Fix obsolete autoconf macros in configure.ac

2014-04-23 Thread Steve Ellcey
The gcc configure.ac script is using an obsolete form of the AC_CHECK_TYPE autoconf macro to check for caddr_t and ssize_t. http://www.gnu.org/software/autoconf/manual/autoconf-2.60/html_node/Obsolete-Macros.html#Obsolete-Macros This usage is causing a build failure for me when building a windo

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-23 Thread Andrew MacLeod
On 04/23/2014 10:19 AM, Richard Biener wrote: On Tue, Apr 22, 2014 at 9:42 PM, Richard Biener wrote: On April 22, 2014 8:56:56 PM CEST, Richard Sandiford wrote: David Malcolm writes: Alternatively we could change the is-a.h API to eliminate this discrepancy, and keep the typedefs; giving s

[PATCH AARCH64] fix and enable non-const shuffle for bigendian using TBL instruction

2014-04-23 Thread Alan Lawrence
At present vec_perm with non-const indices is not handled on bigendian, so gcc generates generic, slow, code. This patch fixes up TBL to reverse the indices within each input vector (following Richard Henderson's suggestion of using an XOR with (nelts - 1) rather than a complicated mask/add/subt

[Committed][ARM][AArch64] Patches previously ok'd for stage1

2014-04-23 Thread Kyrill Tkachov
Hi all, I've committed to trunk some of my arm and aarch64 patches that I had pending for stage1 (approval email in parentheses): http://gcc.gnu.org/ml/gcc-patches/2014-03/msg00933.html (http://gcc.gnu.org/ml/gcc-patches/2014-03/msg01609.html) http://gcc.gnu.org/ml/gcc-patches/2014-03/msg00

Re: [RFC][PATCH][MIPS] Patch to enable LRA for MIPS backend

2014-04-23 Thread Vladimir Makarov
On 2014-04-21, 8:23 AM, Richard Sandiford wrote: Robert Suchanek writes: Did you see the failures even after your mips_regno_mode_ok_for_base_p change? LRA should know how to reload a "W" address. Yes but I realize there is more. It fails because $sp is now included in BASE_REG_CLASS and "W"

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-23 Thread David Malcolm
On Wed, 2014-04-23 at 16:19 +0200, Richard Biener wrote: > On Tue, Apr 22, 2014 at 9:42 PM, Richard Biener > wrote: > > On April 22, 2014 8:56:56 PM CEST, Richard Sandiford > > wrote: > >>David Malcolm writes: > >>> Alternatively we could change the is-a.h API to eliminate this > >>> discrepanc

RE: [RFC][PATCH][MIPS] Patch to enable LRA for MIPS backend

2014-04-23 Thread Robert Suchanek
> Hmm, in that case maybe we should just leave it failing. The alternative > would be to skip the test altogther for MIPS, with a PR referencing it, > but that seems a bit over-the-top. I'd leave it as it is for now until the consensus regarding the 'X' constraint is reached. > Please use comme

[PATCH AARCH64] One-line tidy of bit-twiddle expression in aarch64.c

2014-04-23 Thread Alan Lawrence
This patch is a small tidy of a more-complicated expression that just flips a single bit and can thus be a simple XOR. No regressions on aarch64-none-elf or aarch64_be-none-elf. (I've verified code is indeed exercised by dg-torture.exp vshuf-v*.c). Also ok after applying TBL and testsuite pat

Re: -fuse-caller-save - Collect register usage information

2014-04-23 Thread Richard Sandiford
Tom de Vries writes: > +/* Collect hard register usage for the current function. */ > + > +static void > +collect_fn_hard_reg_usage (void) > +{ > + rtx insn; > + int i; > + struct cgraph_node *node; > + > + if (!flag_use_caller_save) > +return; > + > + node = cgraph_get_node (current_fun

Re: Add call_fusage_contains_non_callee_clobbers hook

2014-04-23 Thread Richard Sandiford
Tom de Vries writes: > On 22-04-14 17:05, Tom de Vries wrote: >> I've updated the fuse-caller-save patch series to model non-callee >> call clobbers >> in CALL_INSN_FUNCTION_USAGE. >> > > Vladimir, > > This patch adds a hook to indicate whether a target has added the non-callee > call clobbers to

Re: -fuse-caller-save - Collect register usage information

2014-04-23 Thread Vladimir Makarov
On 2014-04-23, 6:41 AM, Tom de Vries wrote: On 22-04-14 17:05, Tom de Vries wrote: I've updated the fuse-caller-save patch series to model non-callee call clobbers in CALL_INSN_FUNCTION_USAGE. Vladimir, This is the updated version of the previously approved patch http://gcc.gnu.org/ml/gcc-pat

Re: [PATCH][RFC][wide-int] Fix some build errors on arm in wide-int branch and report ICE

2014-04-23 Thread Kenneth Zadeck
On 04/23/2014 10:36 AM, Richard Biener wrote: On Wed, Apr 23, 2014 at 4:29 PM, Kenneth Zadeck wrote: On 04/23/2014 05:47 AM, Richard Biener wrote: On Tue, Apr 22, 2014 at 6:04 PM, Mike Stump wrote: On Apr 22, 2014, at 8:33 AM, Richard Sandiford wrote: Kyrill Tkachov writes: Ping. http://

Re: [PATCH][RFC][wide-int] Fix some build errors on arm in wide-int branch and report ICE

2014-04-23 Thread Jakub Jelinek
On Wed, Apr 23, 2014 at 04:36:23PM +0200, Richard Biener wrote: > > I should point out that there is a community that wants to go in the > > opposite direction here. They are the people with real 32 bit hosts who > > want to go back to a world where they are allowed to make hwi a 32 bit > > value

[PATCH] Avoid going to GENERIC for TER expansion

2014-04-23 Thread Richard Biener
$subject - we have the sepops interface for this. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2014-04-23 Richard Biener * expr.c (expand_expr_real_1): Avoid gimple_assign_rhs_to_tree during TER and instead use the sepops interface for expanding

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-23 Thread Michael Matz
Hi, On Mon, 21 Apr 2014, David Malcolm wrote: > This is a greatly-expanded version of: > http://gcc.gnu.org/ml/gcc-patches/2013-12/msg01262.html > > As of r205034 (de6bd75e3c9bc1efe8a6387d48eedaa4dafe622d) and > r205428 (a90353203da18288cdac1b0b78fe7b22c69fe63f) the various gimple > statements

[PATCH] Cleanup do_per_function, require less push/pop_cfun

2014-04-23 Thread Richard Biener
This avoids all the complex work on simple things like clear_last_verified. It also makes eventually inlining all calls (for example the one with the small IPA pass hack) less code-duplicating. I had to remove the asserts in favor of frees of DOM info in release_function_body as the old code re

Re: [PATCH][RFC][wide-int] Fix some build errors on arm in wide-int branch and report ICE

2014-04-23 Thread Richard Biener
On Wed, Apr 23, 2014 at 4:29 PM, Kenneth Zadeck wrote: > On 04/23/2014 05:47 AM, Richard Biener wrote: >> >> On Tue, Apr 22, 2014 at 6:04 PM, Mike Stump wrote: >>> >>> On Apr 22, 2014, at 8:33 AM, Richard Sandiford >>> wrote: Kyrill Tkachov writes: > > Ping. > http://gcc.g

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-23 Thread Richard Biener
On Wed, Apr 23, 2014 at 4:19 PM, Richard Biener wrote: > On Tue, Apr 22, 2014 at 9:42 PM, Richard Biener > wrote: >> On April 22, 2014 8:56:56 PM CEST, Richard Sandiford >> wrote: >>>David Malcolm writes: Alternatively we could change the is-a.h API to eliminate this discrepancy, and

Re: [PATCH][RFC][wide-int] Fix some build errors on arm in wide-int branch and report ICE

2014-04-23 Thread Kenneth Zadeck
On 04/23/2014 05:47 AM, Richard Biener wrote: On Tue, Apr 22, 2014 at 6:04 PM, Mike Stump wrote: On Apr 22, 2014, at 8:33 AM, Richard Sandiford wrote: Kyrill Tkachov writes: Ping. http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00769.html Any ideas? I recall chatter on IRC that we want to mer

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-23 Thread Richard Biener
On Tue, Apr 22, 2014 at 9:42 PM, Richard Biener wrote: > On April 22, 2014 8:56:56 PM CEST, Richard Sandiford > wrote: >>David Malcolm writes: >>> Alternatively we could change the is-a.h API to eliminate this >>> discrepancy, and keep the typedefs; giving something like the >>following: >>> >>

Re: Remove obsolete Solaris 9 support

2014-04-23 Thread Rainer Orth
Uros Bizjak writes: > It looks to me that one part was left in libgcc/config/i386/crtfastmath.c: > > #if !defined __x86_64__ && defined __sun__ && defined __svr4__ > #include > #include > ... > #endif Right, missed it because it carried no Solaris 9 comment. I'll remove it after a round of te

Re: [PATCH] Add MIPS -mxpa command line option.

2014-04-23 Thread Richard Sandiford
Andrew Bennett writes: > * doc/invoke.texi: Document -mxpa and -mno-xpa MIPS command line > options. > * config/mips/mips.opt (mxpa): New option. > * config/mips/mips.h (ASM_SPEC): Pass mxpa and mno-xpa to the > assembler. OK, thanks. If your account doesn

Re: [RFC][PATCH][MIPS] Patch to enable LRA for MIPS backend

2014-04-23 Thread Richard Sandiford
Robert Suchanek writes: > If we were going to XFAIL the test then it would apply specifically > for -mips16 -O1. In any other combination it appears to work. Would > that be a stopper? Hmm, in that case maybe we should just leave it failing. The alternative would be to skip the test altogther f

Re: calloc = malloc + memset

2014-04-23 Thread Richard Biener
On Fri, Apr 18, 2014 at 8:27 PM, Marc Glisse wrote: > Thanks for the comments! > > > On Fri, 18 Apr 2014, Jakub Jelinek wrote: > >> The passes.def change makes me a little bit nervous, but if it works, >> perhaps. > > > Would you prefer running the pass twice? I thought there would be less > resis

[PATCH] Add MIPS -mxpa command line option.

2014-04-23 Thread Andrew Bennett
Hi, This patch adds a GCC MIPS command line option (-mxpa) to enable/disable support for the eXtended Physical Address (XPA) instructions within the assembler. The ChangeLog and patch are shown below. Many thanks, Andrew * doc/invoke.texi: Document -mxpa and -mno-xpa MIPS command li

Re: [wide-int 2/8] Fix ubsan internal-fn.c handling

2014-04-23 Thread Richard Biener
On Wed, Apr 23, 2014 at 3:29 PM, Richard Sandiford wrote: > Richard Sandiford writes: >> This code was mixing hprec and hprec*2 wide_ints. The simplest fix >> seemed to be to introduce a function that gives the minimum precision >> necessary to represent a function, which also means that no temp

RE: [RFC][PATCH][MIPS] Patch to enable LRA for MIPS backend

2014-04-23 Thread Robert Suchanek
> Yeah, I think the lack of elimination is the problem. process_address > eliminates $frame temporarily before checking whether the address > is valid, but the places that check EXTRA_CONSTRAINT_STR pass the > original uneliminated address. So the legitimate_address_p hook sees > the $sp-based ad

Re: [Patch ARM] Allow any register for DImode values in Thumb2.

2014-04-23 Thread Ramana Radhakrishnan
On Wed, Apr 23, 2014 at 2:06 PM, Ramana Radhakrishnan wrote: > On Wed, Apr 23, 2014 at 1:53 PM, Christophe Lyon > wrote: >> On 27 February 2014 14:58, Ramana Radhakrishnan wrote: >>> Hi >>> >>> I noticed that for T32 we don't allow any old register for DImode values. >>> The restriction of an ev

Re: [wide-int 2/8] Fix ubsan internal-fn.c handling

2014-04-23 Thread Richard Sandiford
Richard Sandiford writes: > This code was mixing hprec and hprec*2 wide_ints. The simplest fix > seemed to be to introduce a function that gives the minimum precision > necessary to represent a function, which also means that no temporary > wide_ints are needed. > > Other places might be able to

Re: [AArch64/ARM 3/3] Add execution tests of ARM TRN Intrinsics

2014-04-23 Thread Ramana Radhakrishnan
On Fri, Mar 28, 2014 at 3:50 PM, Alan Lawrence wrote: > Final patch in series, adds new tests of the ARM TRN Intrinsics, that also > check > the execution results, reusing the test bodies introduced into AArch64 in > the > first patch. (These tests subsume the autogenerated ones in > testsuite/gcc

Re: [PATCH] Fix warning in libgfortran configure script

2014-04-23 Thread Marcus Shawcroft
On 23 April 2014 10:22, Richard Earnshaw wrote: >> libgfortran/ >> 2014-04-17 Kyrylo Tkachov >> >> * configure.ac: Quote usage of ac_cv_func_clock_gettime in if test. >> * configure: Regenerate. >> > > This looks fairly safe to me. My only question might be "why isn't the > variable

[Patch, Fortran, testsuite] Increase tolerance level for precision of bessel function.

2014-04-23 Thread Tejas Belagod
Hi, The attached patch adjusts a fortran test to decrease the precision of one of the points on the bessel curve. gfortran.dg/bessel_7.f90 fails for a value 3.0 because libm does not seem to be accurate enough compared to what the test expects. I did a like-for-like run on x86 vs aarch64. Th

Add post_expand_call_insn hook

2014-04-23 Thread Tom de Vries
On 22-04-14 17:05, Tom de Vries wrote: I've updated the fuse-caller-save patch series to model non-callee call clobbers in CALL_INSN_FUNCTION_USAGE. Eric, this patch adds a post_expand_call_insn hook. The hook is called right after expansion of calls, and allows a target to do additional pro

Re: [Patch ARM] Allow any register for DImode values in Thumb2.

2014-04-23 Thread Ramana Radhakrishnan
On Wed, Apr 23, 2014 at 1:53 PM, Christophe Lyon wrote: > On 27 February 2014 14:58, Ramana Radhakrishnan wrote: >> Hi >> >> I noticed that for T32 we don't allow any old register for DImode values. >> The restriction of an even register is true only for ARM state because the >> ISA doesn't allow

Re: [Patch ARM] Allow any register for DImode values in Thumb2.

2014-04-23 Thread Christophe Lyon
On 27 February 2014 14:58, Ramana Radhakrishnan wrote: > Hi > > I noticed that for T32 we don't allow any old register for DImode values. > The restriction of an even register is true only for ARM state because the > ISA doesn't allow any old register in this place. In a few large .i files > that

Re: Remove obsolete Solaris 9 support

2014-04-23 Thread Uros Bizjak
On Tue, Apr 22, 2014 at 2:35 PM, Rainer Orth wrote: > Uros Bizjak writes: > >> On Wed, Apr 16, 2014 at 1:16 PM, Rainer Orth >> wrote: >>> Now that 4.9 has branched, it's time to actually remove the obsolete >>> Solaris 9 configuration. Most of this is just legwork and falls under >>> my Solaris

Re: [PATCH, ARM] Suppress Redundant Flag Setting for Cortex-A15

2014-04-23 Thread Christophe Lyon
Hi, On 28 January 2014 13:10, Ramana Radhakrishnan wrote: > On Fri, Jan 24, 2014 at 5:16 PM, Ian Bolton wrote: >> Hi there! >> >> An existing optimisation for Thumb-2 converts t32 encodings to >> t16 encodings to reduce codesize, at the expense of causing >> redundant flag setting for ADD, AND,

Re: [PING] [PATCH] register CALL_INSN_FUNCTION_USAGE in find_all_hard_reg_sets

2014-04-23 Thread Tom de Vries
On 23-04-14 00:03, Eric Botcazou wrote: I don't understand why you say that. Because it cannot be applied on GCC mainline. Eric, Ah, I see. Indeed, the patch is dependent on approved patch 'Add implicit parameter to find_all_hard_reg_sets' ( http://gcc.gnu.org/ml/gcc-patches/2013-03/msg01

Add clobber_reg

2014-04-23 Thread Tom de Vries
On 22-04-14 17:05, Tom de Vries wrote: I've updated the fuse-caller-save patch series to model non-callee call clobbers in CALL_INSN_FUNCTION_USAGE. Eric, Richard Sandiford mentioned here ( http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00870.html ): ... Although we really should have a utilit

[PATCH] Fix PR60903

2014-04-23 Thread Richard Biener
LIM fails to properly mark new blocks/edges it creates as belonging to irreducible regions. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk and 4.9 branch. Richard. 2014-04-23 Richard Biener PR tree-optimization/60903 * tree-ssa-loop-im.c (analyze_memor

Re: [PATCH, ARM] Improve 64 bit division performance

2014-04-23 Thread Charles Baylis
Ping? Ramana mentioned at Linaro Connect that this should be tested on more platforms. I've now checked this on qemu with no regressions on trunk for: arm-unknown-linux-gnueabihf v7-A: ARM and Thumb-2 arm-unknown-linux-gnueabi v4t, v5t, v6: ARM OK for trunk? Archive link: http://gcc.gnu.org/ml/

Re: RFA: x86 backend: Add default-manifest to Cygwin/MinGW links

2014-04-23 Thread Corinna Vinschen
Hi Nick, On Apr 23 10:41, Nicholas Clifton wrote: > Hi Corinna, > > >However, we know that the act of merging will currently result in broken > >resources in the executable. Wouldn't it be better to apply the above > >patch only after the resource merge fix? > > No. Well not in my opinion. :-)

-fuse-caller-save - Collect register usage information

2014-04-23 Thread Tom de Vries
On 22-04-14 17:05, Tom de Vries wrote: I've updated the fuse-caller-save patch series to model non-callee call clobbers in CALL_INSN_FUNCTION_USAGE. Vladimir, This is the updated version of the previously approved patch http://gcc.gnu.org/ml/gcc-patches/2013-03/msg01320.html , updated for the

Re: [PATCH] Tweak an error msg a little

2014-04-23 Thread Richard Biener
On Wed, Apr 23, 2014 at 12:22 PM, Marek Polacek wrote: > I think it's better to be consistent and always quote the > "transaction_wrap" name, it even looks nicer. > > I ran tm.exp tests, ok for trunk? Ok. Thanks, Richard. > 2014-04-23 Marek Polacek > > * c-common.c (handle_tm_wrap_at

  1   2   >