Re: [PATCH] Remove lto_global_var_decls, simplify necessary analysis for PR60060

2014-02-06 Thread Richard Biener
On Wed, 5 Feb 2014, Jan Hubicka wrote: Seems OK to me. I always had an impression that this machinery exists to make decls that are revmoed fro symbol table (optimized out) to land the debug info, but I think this is mostly broken by partitioning anyway, right? Do we stream

Re: [PATCH] Fix various issues in vect_analyze_data_refs (PR middle-end/59150)

2014-02-06 Thread Richard Biener
On Thu, 6 Feb 2014, Jakub Jelinek wrote: Hi! This patch fixes a double free on simd-lane access if get_vectype_for_scalar_type fails (the new dr is already in datarefs[i] and if we free_data_ref it, it will be free_data_ref'ed again at the end of the failed vectorization), fixes handling

Re: [ARM][PATCH] Vectorizer generates unaligned access when -mno-unaligned-access is enabled

2014-02-06 Thread Kugan
On 06/02/14 01:56, Ramana Radhakrishnan wrote: Ramana wrote: Attached patch fixes this. Is this OK for trunk? How has it been tested ? I was hoping Linaro people could run their magical cbuild on it... Ok if no regressions. Tested it on qemu for arm-none-linux-gnueabi and there is

[PATCH] Add a couple of dialect and warning options regarding Objective-C instance variable scope

2014-02-06 Thread Dimitris Papavasiliou
Hello, This is a patch regarding a couple of Objective-C related dialect options and warning switches. I have already submitted it a while ago but gave up after pinging a couple of times. I am now informed that should have kept pinging until I got someone's attention so I'm resending it.

Re: [PATCH] Fix ix86_function_regparm with optimize attribute (PR target/60062, take 2)

2014-02-06 Thread Richard Biener
On Wed, 5 Feb 2014, Jakub Jelinek wrote: On Wed, Feb 05, 2014 at 02:20:05PM +0100, Richard Biener wrote: Using !!optimize to determine if we should switch local ABI to regparm convention isn't compatible with optimize attribute, as !!optimize is whether the current function is being

Re: wide-int, build system

2014-02-06 Thread Mike Stump
On Jan 9, 2014, at 7:16 AM, Richard Biener richard.guent...@gmail.com wrote: On Sat, Nov 23, 2013 at 8:20 PM, Mike Stump mikest...@comcast.net 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 go

Re: [PATCH] Fix up __builtin_setjmp_receiver handling (PR c++/60082)

2014-02-06 Thread Richard Biener
On Thu, 6 Feb 2014, Jakub Jelinek wrote: On Thu, Feb 06, 2014 at 10:13:25AM +0100, Richard Biener wrote: trunk? Alternatively we could special case BUILT_IN_SETJMP_RECEIVER instead in call_can_make_abnormal_goto, there is probably no need to have AB edge out of

Re: [PATCH][PING^3][AArch64] Specify CRC and Crypto support for Cortex-A53, A57

2014-02-06 Thread Kyrill Tkachov
On 29/01/14 17:42, Kyrill Tkachov wrote: On 23/01/14 08:58, Kyrill Tkachov wrote: On 16/01/14 18:10, Kyrill Tkachov wrote: Hi all, The Cortex-A53 and Cortex-A57 cores support the CRC32 and Crypto extensions to the ARMv8-A architecture. This patch adds that information to their definitions in

Re: [PATCH] Fix ix86_function_regparm with optimize attribute (PR target/60062, take 3)

2014-02-06 Thread Richard Biener
On Thu, 6 Feb 2014, Jakub Jelinek wrote: On Wed, Feb 05, 2014 at 08:42:27PM +0100, Jakub Jelinek wrote: So, where do we want to do that instead? E.g. should it be e.g. in tree_versionable_function_p directly and let the inliner (if it doesn't do already) also treat optimize(0) functions

Re: [PATCH] Fix up __builtin_setjmp_receiver handling (PR c++/60082)

2014-02-06 Thread Jakub Jelinek
On Thu, Feb 06, 2014 at 10:33:54AM +0100, Richard Biener wrote: Not even in call_can_make_abnormal_goto? I mean, as we split __builtin_setjmp into __builtin_setjmp{_setup,_receiver} and the former has abnormal edge out of it, there is no need to have another abnormal edge out of the

Re: [PATCH] Fix two missed Makefile.in dependencies

2014-02-06 Thread Richard Biener
On Thu, Feb 6, 2014 at 8:12 AM, Jakub Jelinek ja...@redhat.com wrote: Hi! I have noticed that with the .deps introduction for gcc/ we've lost these two dependencies, which autodependency creation isn't aware of, as the Makefile runs cat on those files and passes the content through -D

Re: [ARM][PATCH] Vectorizer generates unaligned access when -mno-unaligned-access is enabled

2014-02-06 Thread Yury Gribov
Kugan wrote: Ok if no regressions. Tested it on qemu for arm-none-linux-gnueabi and there is no new regressions. I am sorry I didn’t mention it when I posted the patch. Commited in r207533. Thanks! -Y

[Ada] Exception during finalization of controlled object

2014-02-06 Thread Arnaud Charlet
This patch corrects the finalization machinery to properly handle a controlled object that is initialized by an aggregate and acts as a transient. The object is now considered fully initialized after the last component assignment takes place. This avoids the finalization of uninitialized data that

Re: [PATCH][AArch64] Specify CRC and Crypto support for Cortex-A53, A57

2014-02-06 Thread Marcus Shawcroft
On 16 January 2014 18:10, Kyrill Tkachov kyrylo.tkac...@arm.com wrote: Hi all, The Cortex-A53 and Cortex-A57 cores support the CRC32 and Crypto extensions to the ARMv8-A architecture. This patch adds that information to their definitions in aarch64-cores.def. Both cortex-a53 and cortex-a57

[Ada] Crash on processing external property

2014-02-06 Thread Arnaud Charlet
This patch modifies the mechanism that detects an enabled property to handle the case where the property appears with an expression. -- Source -- -- serial_port.ads pragma SPARK_Mode; package Serial_Port with Abstract_State = (Input_Port with External =

Re: var-tracking and s390's LM(G)

2014-02-06 Thread Richard Sandiford
Richard Henderson r...@redhat.com writes: On 02/05/2014 02:30 PM, Ulrich Weigand wrote: Jakub Jelinek wrote: On Wed, Feb 05, 2014 at 10:26:16PM +0100, Ulrich Weigand wrote: Actually, now I think the problem originally described there is still valid: on s390 the CFA is *not* equal to the value

[Ada] Predicates on partial views

2014-02-06 Thread Arnaud Charlet
This patch fixes some errors in the handling of dynamic predicates applied to private types. Compiling and executing the following: gnatmake -q -gnata main main must yield: Endevour Ariane5 Failure to launch --- with gnat.io; with ada.assertions; procedure Main is package

[Ada] Exception during finalization of controlled object

2014-02-06 Thread Arnaud Charlet
This patch corrects the transient object machinery to detect subprogram calls in constructs that have been heavily expanded. -- Source -- -- types.ads with Ada.Finalization; use Ada.Finalization; package Types is Bomb : exception; Not_Zero : exception;

[Ada] Forbid the use of aspect/pragma SPARK_Mode in generics

2014-02-06 Thread Arnaud Charlet
The following patch modifies the analysis of generic packages and subprograms to flag aspect/pragma SPARK_Mode as illegal. -- Source -- -- in_function.ads pragma SPARK_Mode (On); generic Val : Integer; function In_Function return Integer with SPARK_Mode; --

[Ada] Composite postconditions

2014-02-06 Thread Arnaud Charlet
This patch fixes the order in which the conjuncts in complex postconditions are tested. Such postconditions are expanded into individual tests, chained to internal lists when aspects are processed, and combined with other tests when building the contract checking procedure for a given subprogram.

Re: [PATCH] Fix up __builtin_setjmp_receiver handling (PR c++/60082)

2014-02-06 Thread Richard Biener
On Thu, 6 Feb 2014, Jakub Jelinek wrote: On Thu, Feb 06, 2014 at 10:33:54AM +0100, Richard Biener wrote: Not even in call_can_make_abnormal_goto? I mean, as we split __builtin_setjmp into __builtin_setjmp{_setup,_receiver} and the former has abnormal edge out of it, there is no need to

[Ada] Dependence clause with multiple parenthesis produces misleading errors

2014-02-06 Thread Arnaud Charlet
This patch modifies the analysis of aspect/pragma [Refined_]Depends to catch clauses that contain multiple parenthesis as this is not allowed by the syntax of the aspect/pragma. -- Source -- -- multi_parents.ads pragma SPARK_Mode; package Multi_Parents with

[Ada] Order of evaluation between precondition and 'Old

2014-02-06 Thread Arnaud Charlet
This patch modifies the expansion of attribute 'Old to insert the generated temporary that captures the value of the prefix before routine _Postconditions. As a result, the precondition of a subprogram will be evaluated first, before any postcondition-related code is executed. --

Re: [build, libgcc] Ensure libgcc_s unwinder is always used on 64-bit Solaris 10+/x86 (PR target/59788)

2014-02-06 Thread Rainer Orth
Joseph S. Myers jos...@codesourcery.com writes: On Tue, 4 Feb 2014, Rainer Orth wrote: The patch to libgo/ltmain.sh is now committed to mainline. I've now committed the rest, thanks. Btw., what's the procedure for syncing the toplevel ltmain.sh these days? AFAIK there's both the old

Re: [PATCH] Fix up __builtin_setjmp_receiver handling (PR c++/60082)

2014-02-06 Thread Jakub Jelinek
On Thu, Feb 06, 2014 at 11:00:14AM +0100, Richard Biener wrote: Then __builtin_setjmp_setup is? No, it never returns twice through the fallthru edge. It only returns second time through the abnormal edge virtually to the ABNORMAL_DISPATCHER and from that through another abnormal edge to

[Ada] Adjust documentation of Pragma Optimize_Alignment

2014-02-06 Thread Arnaud Charlet
This adjusts the documentation of Pragma Optimize_Alignment by mentioning that the pragma also has an effect on individual objects in addition to types. Tested on x86_64-pc-linux-gnu, committed on trunk 2014-02-06 Eric Botcazou ebotca...@adacore.com * gnat_rm.texi (Pragma

Re: [PATCH] Fix ix86_function_regparm with optimize attribute (PR target/60062, take 3)

2014-02-06 Thread Uros Bizjak
On Thu, Feb 6, 2014 at 10:45 AM, Richard Biener rguent...@suse.de wrote: On Thu, 6 Feb 2014, Jakub Jelinek wrote: On Wed, Feb 05, 2014 at 08:42:27PM +0100, Jakub Jelinek wrote: So, where do we want to do that instead? E.g. should it be e.g. in tree_versionable_function_p directly and let

[Ada] Configuration options lost after processing of separate unit

2014-02-06 Thread Arnaud Charlet
this patch updates the analysis of package body stubs and subprogram body stubs to maintain the configuration options of the enclosing context in a stack-like fasion. This ensures that options pertaining to the proper body do not govern the options of the enclosing context. -- Source

[Patch, Fortran] PR 58470: [4.9 Regression] [OOP] ICE on invalid with FINAL procedure and type extension

2014-02-06 Thread Janus Weil
Hi all, attached is a small patch which fixes an ICE-on-invalid regression with finalization. In the PR, Dominique objected to the patch, but I think it's the correct thing to do after all. The line that I'm removing was added in a patch authored by Tobias and myself. I suspect it was added to

Re: [C++ Patch/RFC] PR 60047

2014-02-06 Thread Paolo Carlini
Hi, On 02/05/2014 10:28 PM, Jason Merrill wrote: On 02/05/2014 11:19 AM, Paolo Carlini wrote: if (vec_safe_is_empty (vbases)) /* No virtual bases to worry about. */; else if (!assign_p) { if (constexpr_p) *constexpr_p = false; *constexpr_p should be false for a

Patch ping

2014-02-06 Thread Jakub Jelinek
Hi! I'd like to ping a few outstanding patches: - PR59575 P1 ARM dwarf2cfi ICEs fix http://gcc.gnu.org/ml/gcc-patches/2014-01/msg01997.html - PR59992 P1 var-tracking improvement http://gcc.gnu.org/ml/gcc-patches/2014-01/msg01962.html - PR60030 P1 ubsan expansion fix

[C PATCH] Use warning_at (PR c/60087)

2014-02-06 Thread Marek Polacek
An obvious one, use location if available. Can this be considered as a docfix though, thus ok for trunk? (Not a regression.) Regtested/bootstrapped on x86_64-linux. 2014-02-06 Marek Polacek pola...@redhat.com PR c/60087 c-family/ * c-common.c (warn_for_sign_compare): Call

Re: Is testing libgomp outside of the build tree supported?

2014-02-06 Thread Diego Novillo
On Wed, Feb 5, 2014 at 5:10 PM, Matthias Klose d...@ubuntu.com wrote: could somebody please shed some light on how this is done? It's nice that everybody has this kind of testing, but the only bit in the gcc sources itself seems to be a bit bit-rot and incomplete (contrib/test_installed).

[PATCH] PR60092, basic support for posix_malloc

2014-02-06 Thread Richard Biener
This adds posix_malloc as builtin and support for it in the alias machinery. Bootstrapped and tested on x86_64-unknown-linux-gnu, ok for trunk? Thanks, Richard. 2014-02-06 Richard Biener rguent...@suse.de PR middle-end/60092 * builtin-types.def (BT_FN_INT_PTRPTR_SIZE_SIZE):

[PATCH] PR60092, add C11 aligned_alloc handling

2014-02-06 Thread Richard Biener
This adds a builtin for C11 aligned_alloc and support for it in the alias and alignment tracking machinery. Bootstrap and regtest in progress on x86_64-unknown-linux-gnu. Ok for trunk? Thanks, Richard. 2014-02-06 Richard Biener rguent...@suse.de PR middle-end/60092 *

Re: [C PATCH] Use warning_at (PR c/60087)

2014-02-06 Thread Richard Biener
On Thu, Feb 6, 2014 at 1:24 PM, Marek Polacek pola...@redhat.com wrote: An obvious one, use location if available. Can this be considered as a docfix though, thus ok for trunk? (Not a regression.) Regtested/bootstrapped on x86_64-linux. Ok. Thanks, Richard. 2014-02-06 Marek Polacek

Re: var-tracking and s390's LM(G)

2014-02-06 Thread Richard Henderson
On 02/06/2014 01:55 AM, Richard Sandiford wrote: OK, I agree that's not 4.9 material. What about the other change of replacing: REF_CFA_DEF_CFA (plus (stack_pointer_rtx) (const_int 160/96)) with: REF_CFA_ADJUST_CFA (set (stack_pointer_rtx) (plus

Re: [PATCH] PR60092, basic support for posix_malloc

2014-02-06 Thread Jakub Jelinek
On Thu, Feb 06, 2014 at 02:21:01PM +0100, Richard Biener wrote: + /* We marking allocated storage local, we deal with it becoming + global by escaping and setting of vars_contains_escaped_heap. */ Did you mean By marking ..., or something else? + extern int posix_memalign(void

Re: [PATCH] PR60092, basic support for posix_malloc

2014-02-06 Thread Andreas Schwab
Richard Biener rguent...@suse.de writes: + case BUILT_IN_POSIX_MEMALIGN: + { + tree ptrptr = gimple_call_arg (t, 0); + get_constraint_for (ptrptr, lhsc); + do_deref (lhsc); + varinfo_t vi = make_heapvar (HEAP); + /* We marking allocated storage

Re: [PATCH] PR60092, basic support for posix_malloc

2014-02-06 Thread Richard Biener
On Thu, 6 Feb 2014, Jakub Jelinek wrote: On Thu, Feb 06, 2014 at 02:21:01PM +0100, Richard Biener wrote: + /* We marking allocated storage local, we deal with it becoming +global by escaping and setting of vars_contains_escaped_heap. */ Did you mean By marking ..., or

[PATCH] PR60092 - lower posix_memalign to make align-info accessible

2014-02-06 Thread Richard Biener
This re-writes posix_memalign calls to posix_memalign (ptr, align, size); tem = *ptr; tem = __builtin_assume_aligned (align); *ptr = tem; during CF lowering (yeah, ok ...) to make alignment info accessible to SSA based analysis. I have to adjust the added alias-31.c

Re: [PATCH] PR60092 - lower posix_memalign to make align-info accessible

2014-02-06 Thread Richard Biener
On Thu, 6 Feb 2014, Richard Biener wrote: This re-writes posix_memalign calls to posix_memalign (ptr, align, size); tem = *ptr; tem = __builtin_assume_aligned (align); *ptr = tem; during CF lowering (yeah, ok ...) to make alignment info accessible to SSA based

Re: var-tracking and s390's LM(G)

2014-02-06 Thread Richard Sandiford
Richard Henderson r...@redhat.com writes: On 02/06/2014 01:55 AM, Richard Sandiford wrote: OK, I agree that's not 4.9 material. What about the other change of replacing: REF_CFA_DEF_CFA (plus (stack_pointer_rtx) (const_int 160/96)) with: REF_CFA_ADJUST_CFA (set

Re: [PATCH] Small var-tracking improvement (PR debug/59992)

2014-02-06 Thread Richard Henderson
2014-01-30 Jakub Jelinek ja...@redhat.com PR debug/59992 * var-tracking.c (adjust_mems): Before adding a SET to amd-side_effects, adjust it's SET_SRC using simplify_replace_fn_rtx. * gcc.dg/pr59992.c: New test. Ok. r~

Re: [PATCH] Fix ubsan expansion of multiplication (PR rtl-optimization/60030)

2014-02-06 Thread Richard Henderson
On 02/04/2014 04:40 AM, Jakub Jelinek wrote: - tem = expand_shift (LSHIFT_EXPR, mode, lopart, hprec, NULL_RTX, 1); + tem = gen_rtx_SUBREG (mode, lopart, 0); + tem = expand_shift (LSHIFT_EXPR, mode, tem, hprec, NULL_RTX, 1); I would be happier with gen_lowpart rather than the

Re: [PATCH] Fix ARM dwarf2cfi ICE and unwind info issues (PR target/59575)

2014-02-06 Thread Richard Henderson
On 01/30/2014 12:38 PM, Jakub Jelinek wrote: 2014-01-30 Jakub Jelinek ja...@redhat.com PR target/59575 * config/arm/arm.c (emit_multi_reg_push): Add dwarf_regs_mask argument, don't record in REG_FRAME_RELATED_EXPR registers not set in that bitmask.

Re: var-tracking and s390's LM(G)

2014-02-06 Thread Richard Henderson
On 02/06/2014 06:48 AM, Richard Sandiford wrote: Richard Henderson r...@redhat.com writes: On 02/06/2014 01:55 AM, Richard Sandiford wrote: OK, I agree that's not 4.9 material. What about the other change of replacing: REF_CFA_DEF_CFA (plus (stack_pointer_rtx) (const_int 160/96)) with:

Re: [PATCH] Fix ARM dwarf2cfi ICE and unwind info issues (PR target/59575)

2014-02-06 Thread Ramana Radhakrishnan
On Thu, Jan 30, 2014 at 8:38 PM, Jakub Jelinek ja...@redhat.com wrote: Hi! For -Os, apparently ARM backend sometimes decides to push (up to 8?) dummy registers to stack in addition to the registers that actually need to be saved, in order to avoid extra instruction to adjust stack pointer.

Re: RFA: MN10300: Include saved registers in stack usage

2014-02-06 Thread nick clifton
Hi Jeff, According to our coding conventions, the ability to build with something other than gcc is still desirable. You could argue that you're unlikely to be bootstrapping on a mn103 with something other than GCC and if you're building a cross, you could start by first building gcc native.

Re: [C,C++] integer constants in attribute arguments

2014-02-06 Thread Marc Glisse
On Wed, 5 Feb 2014, Andreas Schwab wrote: Marc Glisse marc.gli...@inria.fr writes: On Wed, 5 Feb 2014, Andreas Schwab wrote: Wrt. the function decl it should probably just be changed to a variable decl. Alignments on function decls are kind of exotic. Good idea. How about this patch

[PATCH] Add alloc_align and assume_aligned attributes (PR middle-end/60092)

2014-02-06 Thread Jakub Jelinek
Hi! As discussed on IRC, this patch introduces two new attributes, so that the C library (and other headers) have a way to a) tell the compiler something about functions like aligned_alloc or memalign b) tell the compiler the alignment of pointers returned say by malloc Ok for trunk if

Re: [PATCH] Fix ARM dwarf2cfi ICE and unwind info issues (PR target/59575)

2014-02-06 Thread nick clifton
Hi Jakub, 2014-01-30 Jakub Jelinek ja...@redhat.com PR target/59575 * config/arm/arm.c (emit_multi_reg_push): Add dwarf_regs_mask argument, don't record in REG_FRAME_RELATED_EXPR registers not set in that bitmask. (arm_expand_prologue): Adjust all

Re: [PATCH] Add alloc_align and assume_aligned attributes (PR middle-end/60092)

2014-02-06 Thread Marc Glisse
On Thu, 6 Feb 2014, Jakub Jelinek wrote: +/* Handle a alloc_align attribute; arguments as in + struct attribute_spec.handler. */ + +static tree +handle_alloc_align_attribute (tree *node, tree ARG_UNUSED (name), tree args, + int, bool *no_add_attrs) +{ + unsigned

Re: [PATCH] Fix ubsan expansion of multiplication (PR rtl-optimization/60030)

2014-02-06 Thread Jakub Jelinek
On Thu, Feb 06, 2014 at 06:53:55AM -0800, Richard Henderson wrote: On 02/04/2014 04:40 AM, Jakub Jelinek wrote: - tem = expand_shift (LSHIFT_EXPR, mode, lopart, hprec, NULL_RTX, 1); + tem = gen_rtx_SUBREG (mode, lopart, 0); + tem = expand_shift (LSHIFT_EXPR, mode, tem, hprec,

Re: [PATCH] S/390: Throw FE_INVALID exception in the fp2int libgcc routines

2014-02-06 Thread Andreas Krebbel
Here is a new version of the patch not limited to NaNs and Infs anymore. Bootstrapped and regtested on s390 with various options. -Andreas- 2014-02-06 Andreas Krebbel andreas.kreb...@de.ibm.com * config/s390/32/_fixdfdi.c: Throw invalid exception if number cannot be

Re: [PATCH] Fix ubsan expansion of multiplication (PR rtl-optimization/60030)

2014-02-06 Thread Richard Henderson
On 02/06/2014 08:02 AM, Jakub Jelinek wrote: On Thu, Feb 06, 2014 at 06:53:55AM -0800, Richard Henderson wrote: On 02/04/2014 04:40 AM, Jakub Jelinek wrote: - tem = expand_shift (LSHIFT_EXPR, mode, lopart, hprec, NULL_RTX, 1); + tem = gen_rtx_SUBREG (mode, lopart, 0); + tem =

Re: [PATCH] Fix ubsan expansion of multiplication (PR rtl-optimization/60030)

2014-02-06 Thread Jakub Jelinek
On Thu, Feb 06, 2014 at 08:23:00AM -0800, Richard Henderson wrote: On 02/06/2014 08:02 AM, Jakub Jelinek wrote: On Thu, Feb 06, 2014 at 06:53:55AM -0800, Richard Henderson wrote: On 02/04/2014 04:40 AM, Jakub Jelinek wrote: - tem = expand_shift (LSHIFT_EXPR, mode, lopart, hprec, NULL_RTX,

Re: [PATCH] Fix ubsan expansion of multiplication (PR rtl-optimization/60030)

2014-02-06 Thread Richard Henderson
On 02/06/2014 08:25 AM, Jakub Jelinek wrote: On Thu, Feb 06, 2014 at 08:23:00AM -0800, Richard Henderson wrote: On 02/06/2014 08:02 AM, Jakub Jelinek wrote: On Thu, Feb 06, 2014 at 06:53:55AM -0800, Richard Henderson wrote: On 02/04/2014 04:40 AM, Jakub Jelinek wrote: - tem = expand_shift

Re: [PATCH][ARM] Add Cortex-A57 rtx costs table

2014-02-06 Thread Ramana Radhakrishnan
On Thu, Jan 30, 2014 at 1:45 PM, Kyrill Tkachov kyrylo.tkac...@arm.com wrote: Hi all, This patch adds the rtx costs table for Cortex-A57 and sets its issue rate properly in the arm backend. Tested on arm-none-eabi on a model. Ok for trunk? In my view this is OK - this is just a tuning

Re: [PATCH] Fix ubsan expansion of multiplication (PR rtl-optimization/60030)

2014-02-06 Thread Jakub Jelinek
On Thu, Feb 06, 2014 at 08:27:09AM -0800, Richard Henderson wrote: All I know is that the generated code with the ZERO_EXTEND has been larger than with the paradoxical subreg. But if you prefer, I can surely emit a ZERO_EXTEND and open a PR for GCC 5.0 that we should investigate why we

Re: [PATCH][ARM] Add Cortex-A57 rtx costs table

2014-02-06 Thread Jakub Jelinek
On Thu, Feb 06, 2014 at 04:37:38PM +, Ramana Radhakrishnan wrote: On Thu, Jan 30, 2014 at 1:45 PM, Kyrill Tkachov kyrylo.tkac...@arm.com wrote: Hi all, This patch adds the rtx costs table for Cortex-A57 and sets its issue rate properly in the arm backend. Tested on arm-none-eabi

Make gimple_get_virt_method_for_vtable O(1) and not allocating garbage

2014-02-06 Thread Jan Hubicka
Hi, I did some memory measurements for Firefox. We seems in shape in exception of linemaps that takes about 20% of memory and I also noticed that we produce a lot of garbage by copy_tree_r. Analyzing the reasons for copy_tree_r I found two about equally important. The first one is that

Re: [ARM][PATCH] Vectorizer generates unaligned access when -mno-unaligned-access is enabled

2014-02-06 Thread Christophe Lyon
On 6 February 2014 10:49, Yury Gribov y.gri...@samsung.com wrote: Kugan wrote: Ok if no regressions. Tested it on qemu for arm-none-linux-gnueabi and there is no new regressions. I am sorry I didn't mention it when I posted the patch. Commited in r207533. Thanks! Hi, As can be seen here:

Avoid unnnecesary copying of ipa-prop's expressions

2014-02-06 Thread Jan Hubicka
Hi, at WPA we currently read trees accessed by jump functions and then copy them to remove location that is already known to be UNKNOWN and then keep copying them for every inline clone introduced (and there are many for firefox) This patch makes us to copy only when expression really has an

[C++ patch] for C++/52369

2014-02-06 Thread Fabien Chêne
Hi, This bug seems already fixed on mainline. I have added two testcases, but as the C++11 one is not obvious to me, I guess this path does not qualify as obvious. Incidentally, while writing the C++11 testcase, I realized that the diagnostic was not emitted at the proper location and fixed it.

Free constructor elts in LTO merging

2014-02-06 Thread Jan Hubicka
Hi, according to memory stats this is relatively common reason for garbage left after tree merging. Bootstrapped/regtested x86_64-linux, OK? Honza * lto/lto.c (unify_scc): Free also CONSTRUCTOR_ELTS. Index: lto/lto.c ===

Re: Disable accumulate-outgoing-args for Generic and Buldozers

2014-02-06 Thread Jan Hubicka
Hi, this is improved patch I am testing. The basic idea is to remove push expanders for cases where we do not have push instruction anyway. emit_move_insns then resorts to unconditonally call move expander with push operand. I expended ix86_expand_vector_move to handle it gracefully and

Fix issues with -enable-gather-detailed-mem-stats

2014-02-06 Thread Jan Hubicka
Hi, seems no one cared about memory use for a while, since stats code got bit rotten. Bootstrapped/regtested x86_64-linux, will commit it shortly. Honza * ggc.h (ggc_internal_cleared_alloc): New macro. * var.h (vec_safe_copy): Handle memory stats. * omp-low.c

Re: Disable accumulate-outgoing-args for Generic and Buldozers

2014-02-06 Thread Jakub Jelinek
On Thu, Feb 06, 2014 at 06:06:41PM +0100, Jan Hubicka wrote: Hi, this is improved patch I am testing. The basic idea is to remove push expanders for cases where we do not have push instruction anyway. emit_move_insns then resorts to unconditonally call move expander with push operand.

Re: Disable accumulate-outgoing-args for Generic and Buldozers

2014-02-06 Thread Jan Hubicka
On Thu, Feb 06, 2014 at 06:06:41PM +0100, Jan Hubicka wrote: Hi, this is improved patch I am testing. The basic idea is to remove push expanders for cases where we do not have push instruction anyway. emit_move_insns then resorts to unconditonally call move expander with push

Re: [PATCH] S/390: Throw FE_INVALID exception in the fp2int libgcc routines

2014-02-06 Thread Joseph S. Myers
I have no further comments on the patch. -- Joseph S. Myers jos...@codesourcery.com

Re: Allow passing arrays in registers on AArch64

2014-02-06 Thread Ramana Radhakrishnan
On Tue, Feb 4, 2014 at 2:12 AM, Michael Hudson-Doyle michael.hud...@linaro.org wrote: Ping? I'm attaching a marginally cleaner version of the test. I've had a look at integrating this into aapcs64.exp but got defeated in the end. If go-torture-execute took a list of sources as

Re: wide-int, lto

2014-02-06 Thread Mike Stump
On Nov 25, 2013, at 3:09 AM, Richard Biener richard.guent...@gmail.com wrote: please add streamer_read/write_wi () helpers to data-streamer* replicating the above loop N times is too ugly. Agreed. Below is the patch to collapse the code. Thanks. diff --git a/gcc/lto-streamer-in.c

Re: [C++ patch] for C++/52369

2014-02-06 Thread Jason Merrill
OK. Jason

[RFA] [middle-end/54041] Convert modes as needed from expand_expr

2014-02-06 Thread Jeff Law
expand_expr has, for as long as I can remember, had the ability to ignore the desired mode provided by its callers and instead returning something in a completely different mode. It's always been the caller's responsibility to deal with that. For the testcase in 54041, we call expand_expr

Re: [MIPS] Use soft-fp for libgcc floating-point routines

2014-02-06 Thread Richard Sandiford
Joseph S. Myers jos...@codesourcery.com writes: On Tue, 4 Feb 2014, Richard Sandiford wrote: So here I just provide simple C functions for each operation that has hard-float support. We can then restrict the softfp stuff to functions that really do need softfp support, meaning that

[PATCH] Fix typo and miswordings in three error messages

2014-02-06 Thread Benno Schulenberg
Updating a bit the Dutch translations of GCC's messages, I noticed the following mistakes in three msgids: only displayed one == displayed only once none class-method == non-class method incorect == incorrect Below patch fixes those. I'm not entirely sure about the second fix, but

Re: [Patch, Fortran] PR 58470: [4.9 Regression] [OOP] ICE on invalid with FINAL procedure and type extension

2014-02-06 Thread Mikael Morin
Le 06/02/2014 11:43, Janus Weil a écrit : Hi all, attached is a small patch which fixes an ICE-on-invalid regression with finalization. In the PR, Dominique objected to the patch, but I think it's the correct thing to do after all. The line that I'm removing was added in a patch authored by

[jit] Add some methods to the C++ wrapper API.

2014-02-06 Thread David Malcolm
Committed to branch dmalcolm/jit: gcc/jit/ * libgccjit++.h: Include ostream rather than iostream, since the former gets us std::ostream, and the latter may introduce startup-time overhead for constructing std::cout et al. (gccjit::context::new_child_context): New.

[PATCH] Fix PR55289, a typoed word in an error message

2014-02-06 Thread Benno Schulenberg
Below patch fixes another miswording in an error message, reported by Roland Stigge. Please apply. 2014-02-06 Benno Schulenberg bensb...@justemail.net PR translation/52289 * fortran/resolve.c (resolve_ordinary_assign): Fix typoed word in an error message. Index:

[PATCH] Fix PR52289, a typoed word in an error message

2014-02-06 Thread Benno Schulenberg
[Oops, had a wrong bug number in the subject line.] Below patch fixes another miswording in an error message, reported by Roland Stigge. Please apply. 2014-02-06 Benno Schulenberg bensb...@justemail.net PR translation/52289 * fortran/resolve.c (resolve_ordinary_assign): Fix typoed

[PATCH] Fix PR49008, a typoed statement

2014-02-06 Thread Benno Schulenberg
Below patch fixes a small copy-paste mistake, reported by Hui Wu. (Whether the fix is correct, I'm not fully sure, but the code as it is looks nonsensical.) 2014-02-06 Benno Schulenberg bensb...@justemail.net PR target/49008 * genautomata.c (add_presence_absence): Fix

minor help message fix

2014-02-06 Thread Xinliang David Li
Hi the following patch removes the 'state' print for -ftree-tree-vectorize option which does not make sense anymore. Ok for trunk? thanks, David Index: ChangeLog === --- ChangeLog (revision 207581) +++ ChangeLog (working copy)

[PATCH] Fix up __builtin_setjmp_receiver handling (PR c++/60082, take 2)

2014-02-06 Thread Jakub Jelinek
On Thu, Feb 06, 2014 at 11:00:14AM +0100, Richard Biener wrote: Ah, so __builtin_setjmp_receiver is like setjmp in this regard and setjmp is LEAF (it's a stmt that doesn't direct control-flow anywhere else). So __builtin_setjmp_receiver should be LEAF as well (and so should

Re: [MIPS] Use soft-fp for libgcc floating-point routines

2014-02-06 Thread Ian Lance Taylor
Richard Sandiford rdsandif...@googlemail.com writes: libgcc/ * configure.ac (libgcc_cv_mips_hard_float): New. * configure: Regenerate. * config.host (mips*-*-*): Use t-hardfp-sfdf rather than t-softfp-sfdf for hard-float targets. * config/mips/t-mips

[PATCH] New optimize(0) versioning fix (PR target/60026, take 2)

2014-02-06 Thread Jakub Jelinek
On Thu, Feb 06, 2014 at 10:45:23AM +0100, Richard Biener wrote: On Thu, 6 Feb 2014, Jakub Jelinek wrote: On Wed, Feb 05, 2014 at 08:42:27PM +0100, Jakub Jelinek wrote: So, where do we want to do that instead? E.g. should it be e.g. in tree_versionable_function_p directly and let the

Re: [google gcc-4_8][patch] Thunk section names

2014-02-06 Thread Sriraman Tallam
Patch attached. On Thu, Feb 6, 2014 at 2:18 PM, Sriraman Tallam tmsri...@google.com wrote: I sent the following patch for review for trunk commit here. Details here: http://gcc.gnu.org/ml/gcc-patches/2014-02/msg00328.html This is important for function layout for the following reason.

[google gcc-4_8][patch] Thunk section names

2014-02-06 Thread Sriraman Tallam
I sent the following patch for review for trunk commit here. Details here: http://gcc.gnu.org/ml/gcc-patches/2014-02/msg00328.html This is important for function layout for the following reason. Without this patch, the thunk's section name is the same as the original function's section name for

[PATCH] fix for PR 59691

2014-02-06 Thread Iyer, Balaji V
Hello Everyone, Attached, please find a patch that will fix the issue in PR 59691. The main issue was that the Cilk library (libcilkrts) was not checking if the target has SSE support before emitting SSE instruction. This patch should fix that. Here is the ChangeLog entries:

Re: [Patch, Fortran] PR 58470: [4.9 Regression] [OOP] ICE on invalid with FINAL procedure and type extension

2014-02-06 Thread Janus Weil
Hi Mikael, thanks for your comments ... attached is a small patch which fixes an ICE-on-invalid regression with finalization. In the PR, Dominique objected to the patch, but I think it's the correct thing to do after all. The line that I'm removing was added in a patch authored by Tobias and

Re: Allow passing arrays in registers on AArch64

2014-02-06 Thread Michael Hudson-Doyle
Ramana Radhakrishnan ramana@googlemail.com writes: On Tue, Feb 4, 2014 at 2:12 AM, Michael Hudson-Doyle michael.hud...@linaro.org wrote: Ping? I'm attaching a marginally cleaner version of the test. I've had a look at integrating this into aapcs64.exp but got defeated in the end. If

Re: [PATCH] New optimize(0) versioning fix (PR target/60026, take 2)

2014-02-06 Thread Jan Hubicka
On Thu, Feb 06, 2014 at 10:45:23AM +0100, Richard Biener wrote: On Thu, 6 Feb 2014, Jakub Jelinek wrote: On Wed, Feb 05, 2014 at 08:42:27PM +0100, Jakub Jelinek wrote: So, where do we want to do that instead? E.g. should it be e.g. in tree_versionable_function_p directly and let

[RFA][rtl-optimization/52714] Do not allow combine to create invalid RTL

2014-02-06 Thread Jeff Law
As mentioned in the PR, we call try_combine with: i1 = (insn 14 13 16 2 (set (reg/v/f:SI 34 [ stack ]) (reg/f:SI 15 %sp)) pr52714.c:9 38 {*movsi_m68k2} (nil)) i2 = (insn 16 14 17 2 (set (cc0) (compare (reg/v/f:SI 34 [ stack ]) (const_int 0 [0]))) pr52714.c:10 4

Re: [ARM][PATCH] Vectorizer generates unaligned access when -mno-unaligned-access is enabled

2014-02-06 Thread Kugan
On 07/02/14 03:54, Christophe Lyon wrote: On 6 February 2014 10:49, Yury Gribov y.gri...@samsung.com wrote: Kugan wrote: Ok if no regressions. Tested it on qemu for arm-none-linux-gnueabi and there is no new regressions. I am sorry I didn't mention it when I posted the patch. Commited in

PR 59469

2014-02-06 Thread Jan Hubicka
Hi, this patch fixes undefined symbol seen while compiling LLVM with LTO. The bug here is that lto-cgraph and lto-partition both contain knowledge about what symbols gets partitioned and what gets duplicated to each partition that uses them. This has got out of sync causing lto-cgraph to not set

Re: [PATCH] Fix PR 58960

2014-02-06 Thread Andrey Belevantsev
On 30.01.2014 9:42, Andrey Belevantsev wrote: Hello, Ping. As detailed in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58960#c6, we fail to use the DF liveness info in the register pressure sensitive scheduling for the new blocks as we do not properly compute it in this case. The patch

PR 59918 (overacitve ipa-devirt sanity check)

2014-02-06 Thread Jan Hubicka
Hi, this testcase triggers overactive check in record_target_from_binfo. It is confused by fact that we may have hard time not only looking for a vtable of virtual base but also of base of this virtual base that no longer has virtual flag on it. Regtsted ad comitted as obvious. Honza Index:

Re: [ARM][PATCH] Vectorizer generates unaligned access when -mno-unaligned-access is enabled

2014-02-06 Thread Yury Gribov
As can be seen here: http://cbuild.validation.linaro.org/build/cross-validation/gcc/207533/report-build-info.html this has caused some regressions on armv5t targets. IMHO this is expected: with this patch we prohibited unaligned loads on all platforms with -mno-unaligned-access. Perhaps we

Re: [ARM][PATCH] Vectorizer generates unaligned access when -mno-unaligned-access is enabled

2014-02-06 Thread Yury Gribov
we prohibited unaligned loads Sorry, meant to say vectorization of unaligned loads. -Y