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

2014-04-23 Thread Florian Weimer
On 04/22/2014 10:17 PM, David Malcolm wrote: or indeed, something like: else if (gimple_switch switch_stmt = dyn_cast (stmt)) { to avoid an 83-character-wide line :) Hope that's the appropriate way to split such a line; I can never rem

Re: [RFC] Add aarch64 support for ada

2014-04-23 Thread Eric Botcazou
> diff --git a/gcc/ada/gcc-interface/Makefile.in > b/gcc/ada/gcc-interface/Makefile.in index dc5e912..302d9a3 100644 > --- a/gcc/ada/gcc-interface/Makefile.in > +++ b/gcc/ada/gcc-interface/Makefile.in > @@ -2123,6 +2123,44 @@ ifeq ($(strip $(filter-out alpha% linux%,$(arch) > $(osys))),) LIBRARY_VE

Re: [PATCH] Add support for -fno-sanitize-recover and -fsanitize-undefined-trap-on-error (PR sanitizer/60275)

2014-04-23 Thread Richard Biener
On Tue, 15 Apr 2014, Jakub Jelinek wrote: > Hi! > > This patch adds two new options (compatible with clang) which allow > users to choose the behavior of undefined behavior sanitization. > > By default as before, all undefined behaviors (except for > __builtin_unreachable and missing return in C

libsanitizer merge from upstream request

2014-04-23 Thread Christophe Lyon
Konstantin / Jakub, Could you update GCC's libsanitizer version? I'd like to have the AArch64 support, which was committed on my behalf in LLVM sources as svn rev 201303. You may prefer to merge with a more recent revision of course :-) Once AArch64 support is merged, I'll post the GCC part. Tha

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

2014-04-23 Thread Richard Biener
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 wrong place to

[PATCH] Fix PR60891

2014-04-23 Thread Richard Biener
This fixes an oversight in loop_optimizer_init () loop-fixup code that fails to honor AVOID_CFG_MANIPULATIONS. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk and 4.9 branch. Richard. 2014-04-23 Richard Biener PR middle-end/60891 * loop-init.c (loop_opt

[PATCH] Fix PR60895

2014-04-23 Thread Richard Biener
This fixes PR60895 - copying TREE_ADDRESSABLE from a decl to a handled-component-ref doesn't work as the inliner tries to do. Use mark_addressable instead. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk and 4.9 branch. Richard. 2014-04-23 Richard Biener PR mid

Re: [PATCH 3/3] [LLVM] [sanitizer] add conditionals for libc

2014-04-23 Thread Bernhard Reutner-Fischer
On 17 April 2014 19:01, Konstantin Serebryany wrote: > On Thu, Apr 17, 2014 at 8:45 PM, Bernhard Reutner-Fischer > wrote: >> On 17 April 2014 16:51:23 Konstantin Serebryany >> wrote: >> >>> On Thu, Apr 17, 2014 at 6:27 PM, Bernhard Reutner-Fischer >>> wrote: >>> > On 17 April 2014 16:07, Konsta

Re: fuse-caller-save - hook format

2014-04-23 Thread Richard Earnshaw
On 22/04/14 18:13, Tom de Vries wrote: > On 22-04-14 18:18, Richard Sandiford wrote: >> Tom de Vries writes: >> >>> On 22-04-14 17:27, Richard Sandiford wrote: Tom de Vries writes: > 2. post_expand_call_insn. > A utility hook to facilitate adding the clobbers to > CALL_INSN_FUNC

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

2014-04-23 Thread Nick Clifton
Hi Guys, Please could I have permission to apply the patch below ? Ideally for both mainline and the 4.9 branch. The patch adds a file called "default-manifest.o" to the end of a final link command line for the Cygwin and MinGW targets. The file is only added if it can be found in the

Re: [PATCH 3/3] [LLVM] [sanitizer] add conditionals for libc

2014-04-23 Thread Konstantin Serebryany
Thanks. Let's move the discussion there. On Wed, Apr 23, 2014 at 12:46 PM, Bernhard Reutner-Fischer wrote: > On 17 April 2014 19:01, Konstantin Serebryany > wrote: >> On Thu, Apr 17, 2014 at 8:45 PM, Bernhard Reutner-Fischer >> wrote: >>> On 17 April 2014 16:51:23 Konstantin Serebryany >>> wro

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

2014-04-23 Thread Kai Tietz
Hello Nick, 2014-04-23 10:53 GMT+02:00 Nick Clifton : > Hi Guys, > > Please could I have permission to apply the patch below ? Ideally for > both mainline and the 4.9 branch. > > The patch adds a file called "default-manifest.o" to the end of a > final link command line for the Cygwin and

Re: Remove obsolete Solaris 9 support

2014-04-23 Thread Rainer Orth
Andrew Hughes writes: > - Original Message - >> On Sat, 2014-04-19 at 09:03 +0100, Andrew Haley wrote: >> > On 04/16/2014 12:16 PM, Rainer Orth wrote: >> > > * I'm removing the check from classpath. Again, I'm >> > > uncertain if this is desirable. In the past, classpath changes were

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

2014-04-23 Thread Nicholas Clifton
Hi Kai, The default manifest file contains a resource section (.rsrc) holding information necessary for the binary to be run under Windows 8. It is placed last on the linker command line so that a user provided manifest, if there is one, will take precedence over the default mani

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

2014-04-23 Thread Kai Tietz
2014-04-23 11:06 GMT+02:00 Nicholas Clifton : > Hi Kai, > > >>>The default manifest file contains a resource section (.rsrc) holding >>>information necessary for the binary to be run under Windows 8. It is >>>placed last on the linker command line so that a user provided >>>manifes

Re: [Patch, Fortran] PR60881 - fix ICE with allocatable scalar coarrays

2014-04-23 Thread Paul Richard Thomas
Dear Tobias, As you say, this of a rather obvious nature and is OK for trunk. Cheers Paul On 21 April 2014 22:52, Tobias Burnus wrote: > Dear all, > > for a change, a patch for the trunk and not for the fortran-caf branch. The > following is a rather obvious patch which fixes the ICE. > > Buil

Re: [PATCH] Fix warning in libgfortran configure script

2014-04-23 Thread Richard Earnshaw
On 17/04/14 17:49, Kyrill Tkachov wrote: > Hi all, > > While configuring libgfortran I'm getting this message: > "libgfortran/configure: line 25938: test: =: unary operator expected" > The script doesn't fail and continues afterwards, but I don't think it's > supposed to give that warning. > This

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

2014-04-23 Thread Corinna Vinschen
[This time to everyone, not only to Kai, sorry] Hi guys, On Apr 23 11:08, Kai Tietz wrote: > 2014-04-23 11:06 GMT+02:00 Nicholas Clifton : > > Hi Kai, > > > > > >>>The default manifest file contains a resource section (.rsrc) holding > >>>information necessary for the binary to be run und

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

2014-04-23 Thread Nicholas Clifton
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. :-) The reason is that this patch only makes a difference if the d

[PATCH][RFC] (Auto)-add TODO_verify_il

2014-04-23 Thread Richard Biener
This goes forward with an old idea of doing IL verification after each pass. This is a baby-step towards it by adding TODO_verify_il, auto-added by the pass manager at the todo-after position. It moves loop-closed SSA verification (which was done whenever loops were in loop-closed SSA form - bef

Re: [RFC] Add aarch64 support for ada

2014-04-23 Thread Eric Botcazou
> OK, I have installed a variant of the patch (it should not change anything). But it breaks on IA-64 for the same reason as on Aarch64 so we'll need to find something else. -- Eric Botcazou

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 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 merge wide-int into trunk >>> soon.

Re: [wide-int 1/8] Fix some off-by-one errors and bounds tests

2014-04-23 Thread Richard Biener
On Tue, Apr 22, 2014 at 9:45 PM, Richard Sandiford wrote: > This is the first of 8 patches from reading through the diff with mainline. > Some places had an off-by-one error on an index and some used "<= 0" > instead of ">= 0". > > I think we should use MAX_BITSIZE_MODE_ANY_MODE rather than > MAX_

Re: [wide-int 4/8] Tweak uses of new API

2014-04-23 Thread Richard Biener
On Tue, Apr 22, 2014 at 9:55 PM, Richard Sandiford wrote: > This is an assorted bunch of API tweaks: > > - use neg_p instead of lts_p (..., 0) > - use STATIC_ASSERT for things that are known at compile time > - avoid unnecessary wide(st)_int temporaries and arithmetic > - remove an unnecessary tem

Re: [wide-int 3/8] Add and use udiv_ceil

2014-04-23 Thread Richard Biener
On Tue, Apr 22, 2014 at 9:51 PM, Richard Sandiford wrote: > Just a minor tweak to avoid several calculations when one would do. > Since we have a function for rounded-up division, we might as well > use it instead of the (X + Y - 1) / Y idiom. > > Tested on x86_64-linux-gnu. OK to install? Ok.

Re: [wide-int 6/8] Avoid redundant extensions

2014-04-23 Thread Richard Biener
On Tue, Apr 22, 2014 at 10:04 PM, Richard Sandiford wrote: > register_edge_assert_for_2 operates on wide_ints of precision nprec > so a lot of the extensions are redundant. > > Tested on x86_64-linux-gnu. OK to install? Ok. Thanks, Richard. > Thanks, > Richard > > > Index: gcc/tree-vrp.c > ===

Re: [wide-int 7/8] Undo some changes from trunk

2014-04-23 Thread Richard Biener
On Tue, Apr 22, 2014 at 10:12 PM, Richard Sandiford wrote: > This patch undoes a few assorted differences from trunk. > > For fold-const.c the old code was: > > /* If INNER is a right shift of a constant and it plus BITNUM does > not overflow, adjust BITNUM and INNER. */ > if

Re: [C PATCH] Make attributes accept enum values (PR c/50459)

2014-04-23 Thread Marek Polacek
On Sat, Apr 19, 2014 at 09:56:02AM -0400, Jason Merrill wrote: > On 04/17/2014 12:00 PM, Marek Polacek wrote: > > == CPP_CLOSE_PAREN))) > > { > > tree arg1 = c_parser_peek_token (parser)->value; > >+ if (!attr_takes_id_p) > >+{ > >+

Re: [wide-int 8/8] Formatting and typo fixes

2014-04-23 Thread Richard Biener
On Tue, Apr 22, 2014 at 10:14 PM, Richard Sandiford wrote: > Almost obvious, but just in case... > > The first mem_loc_descriptor hunk just reflows the text so that the > line breaks are less awkward. > > Tested on x86_64-linux-gnu. OK to install? Ok. Thanks, Richard. > Thanks, > Richard > > >

[PATCH] Update libstdc++ baseline symbols for m68k

2014-04-23 Thread Andreas Schwab
Committed. Andreas. * config/abi/post/m68k-linux-gnu/baseline_symbols.txt (CXXABI_1.3.9): New version. diff --git a/libstdc++-v3/config/abi/post/m68k-linux-gnu/baseline_symbols.txt b/libstdc++-v3/config/abi/post/m68k-linux-gnu/baseline_symbols.txt index ce247a9..bd2e67f 100644 -

[PATCH] Tweak an error msg a little

2014-04-23 Thread Marek Polacek
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? 2014-04-23 Marek Polacek * c-common.c (handle_tm_wrap_attribute): Tweak error message. diff --git gcc/c-family/c-common.c gcc/c-family/c-common.c

Commit: MSP430: Enhance -mhwmult option

2014-04-23 Thread Nick Clifton
Hi Guys, I am applying the attached patch to enhance the -mhwmult command line option of the MSP430 backend. The option can now be used to specify the type of hardware multiplier supported to be enabled as well as just enabling or disabling the support. The default behaviour is now to

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

-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: 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. :-)

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/

[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

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

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

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: 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] 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: [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

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

[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

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

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: [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: [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: [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: [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

[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: 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

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: [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: 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 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: [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 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 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

[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 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] 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][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

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: -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: 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 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

[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: [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

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 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"

[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

[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

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] 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][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

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

[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] 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

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 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: [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] 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: [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: [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: [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 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: [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: -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

[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
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

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: 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: [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: [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

[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: [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 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

[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

  1   2   >