Re: [PATCH 2/3] Move MEM_REF expansion to a new function

2012-03-12 Thread Martin Jambor
Hi, On Mon, Mar 12, 2012 at 04:26:21PM +0100, Michael Matz wrote: > Hi, > > On Mon, 12 Mar 2012, Martin Jambor wrote: > > > when we expand a misaligned MEM_REF on the LHS, we must not call the > > code in expand_expr_real_1 if the subsequent patch is applied, because >

Re: [PATCH 3/3] Misaligned MEM_REF reads

2012-03-14 Thread Martin Jambor
Hi, On Mon, Mar 12, 2012 at 03:09:04PM +0100, Martin Jambor wrote: > Hi, > > this patch is very similar to the one I posted before > (http://gcc.gnu.org/ml/gcc-patches/2012-02/msg01377.html) except that > it is now adjusted to sit on top of the new one before this and does >

Re: [PATCH] Proper use of decl_function_context in dwar2out.c

2012-03-16 Thread Martin Jambor
Hi, On Mon, Mar 12, 2012 at 11:51:05AM +0100, Richard Guenther wrote: > On Thu, Mar 8, 2012 at 12:18 PM, Jakub Jelinek wrote: > > On Thu, Mar 08, 2012 at 12:06:46PM +0100, Martin Jambor wrote: > >>        /* For local statics lookup proper context die.  */ > >> -

Re: [PATCH] Proper use of decl_function_context in dwar2out.c

2012-03-16 Thread Martin Jambor
Hi, On Fri, Mar 16, 2012 at 05:14:38PM +0100, Martin Jambor wrote: > On Mon, Mar 12, 2012 at 11:51:05AM +0100, Richard Guenther wrote: > > On Thu, Mar 8, 2012 at 12:18 PM, Jakub Jelinek wrote: > > > On Thu, Mar 08, 2012 at 12:06:46PM +0100, Martin Jambor wrote: > > >&g

[PATCH] Replace a SRA FIXME with an assert

2012-03-20 Thread Martin Jambor
size inconsistencies in assignments but we are not planning to do anything with them in foreseeable future (and perhaps add a note to the bug). So, which should it be? Thanks, Martin 2011-01-06 Martin Jambor * tree-sra.c (build_accesses_from_assign): Make size equality test

Re: [PATCH] Replace a SRA FIXME with an assert

2012-03-20 Thread Martin Jambor
Hi, On Tue, Mar 20, 2012 at 04:08:31PM +0100, Richard Guenther wrote: > On Tue, 20 Mar 2012, Martin Jambor wrote: > > > Hi, > > > > this patch which removes one of only two FIXMEs in tree-sra.c has been > > sitting in my patch queue for over a year. Ye

Re: [RFC PATCH 0/3] Fixing expansion of misaligned MEM_REFs on strict-alignment targets

2012-03-21 Thread Martin Jambor
Hi, On Tue, Mar 20, 2012 at 08:16:04PM +0100, Georg-Johann Lay wrote: > Martin Jambor wrote: > > Hi, > > > > this is another iteration of my attempts to fix expansion of > > misaligned memory accesses on strict-alignment platforms (which was > > suggested by R

Re: [PATCH] Replace a SRA FIXME with an assert

2012-03-23 Thread Martin Jambor
On Wed, Mar 21, 2012 at 08:46:49AM +0100, Richard Guenther wrote: > On Tue, 20 Mar 2012, Martin Jambor wrote: > > > Hi, > > > > On Tue, Mar 20, 2012 at 04:08:31PM +0100, Richard Guenther wrote: > > > On Tue, 20 Mar 2012, Martin Jambor wrote: > > > >

[PATCH] Remove strict-alignment checks in SRA

2012-03-23 Thread Martin Jambor
-linux, x86_64-linux and i686-linux. OK for trunk? Thanks, Martin 2012-03-20 Martin Jambor PR tree-optimization/50052 * tree-sra.c (tree_non_aligned_mem_p): Removed. (tree_non_aligned_mem_for_access_p): Likewise. (build_accesses_from_assign): Removed strict

[PATCH, PR 52693] Do not construct memory accesses to unscalarizable regions

2012-03-27 Thread Martin Jambor
the process of testing equivalents for the 4.5 and 4.6 branches (the diff contexts differ slightly). OK for everywhere if all tests pass? Thanks, Martin 2012-03-24 Martin Jambor PR middle-end/52693 * tree-sra.c (sra_modify_assign): Do not call load_assign_lhs_subre

[PATCH] Remove bogus assert from CCP's insert_clobbers_for_var

2012-03-28 Thread Martin Jambor
these), I thought it best to just remove the assert by the following simple patch, bootstrapped and tested on x86_64-linux. OK for trunk? Thanks, Martin 2012-03-28 Martin Jambor * tree-ssa-ccp.c (insert_clobbers_for_var): Do not assert that there is a builtin_stack_save

[PATCH] Dissociate store_expr's temp from exp so that it is not marked as addressable

2012-03-29 Thread Martin Jambor
x and helped my patch which uncovered this issue to reach stage 3 of bootstrap. What do you think, is it OK for trunk? Thanks, Martin 2012-03-30 Martin Jambor * expr.c (non_mem_decl_p): New function with half of previous functionality of... (mem_ref_refers_to_non_

Re: [PATCH] Dissociate store_expr's temp from exp so that it is not marked as addressable

2012-03-31 Thread Martin Jambor
Hi, On Fri, Mar 30, 2012 at 10:03:59AM +0200, Richard Guenther wrote: > On Fri, 30 Mar 2012, Martin Jambor wrote: > > > Hi, > > > > when testing a patch of mine on sparc64-linux, I came across an Ada > > bootstrap failure due to a structure DECL which was ma

Re: [PATCH] Remove bogus assert from CCP's insert_clobbers_for_var

2012-03-31 Thread Martin Jambor
Hi, On Fri, Mar 30, 2012 at 01:23:00PM +0200, Eric Botcazou wrote: > > On IRC I've been told that is OK and the that CCP cannot make such > > assumtions. Since it is only a missed-optimization if the call to the > > builtin is not found and processed (basically PR 51491 again but only > > in case

Re: [PATCH] Dissociate store_expr's temp from exp so that it is not marked as addressable

2012-04-04 Thread Martin Jambor
ia64-linux, I'm currently having problems bootsrapping sparc64 which is what I need this mainly for but those are unelated and this should help. Thanks, Martin 2012-04-03 Martin Jambor * expr.c (expand_expr_real_1): Pass type, not the expression, to set_mem_attributes for

[RFC] Should SRA stop producing COMPONENT_REF for non-bit-fields (again)?

2012-04-04 Thread Martin Jambor
pler, is it not? The patch fulfills the criteria to be committed and I can do it soon. OTOH, keeping it so on a number of platforms takes quite a lot of time (and has uncovered some non-related bugs) so I'd like to know whether it's worth it. Thanks, Martin 2012-03-20 Martin Jamb

Re: [PATCH] Dissociate store_expr's temp from exp so that it is not marked as addressable

2012-04-12 Thread Martin Jambor
Hi, On Fri, Apr 06, 2012 at 06:13:20PM +0200, Eric Botcazou wrote: > > 2012-04-03 Martin Jambor > > > > * expr.c (expand_expr_real_1): Pass type, not the expression, to > > set_mem_attributes for a memory temporary. Do not call the > > function fo

Re: [RFC] Should SRA stop producing COMPONENT_REF for non-bit-fields (again)?

2012-04-12 Thread Martin Jambor
Hi, On Wed, Apr 04, 2012 at 04:42:05PM +0200, Richard Guenther wrote: > On Wed, 4 Apr 2012, Martin Jambor wrote: > > > Hi everyone, especially Richi and Eric, > > > > I'd like to know what is your attitude to changing SRA's > > build_ref_for_model

[PATCH, PR 52939] Gracefully deal with fold_ctor_reference returning NULL during devirtualization

2012-04-13 Thread Martin Jambor
which is something gimple_get_virt_method_for_binfo cannot cope with. The patch below avoids it by simply testing for that value and bailing out. Bootstrapped and tested on x86_64-linux, OK for trunk? Thanks, Martin 2012-04-12 Martin Jambor PR middle-end/52939 * gimple

Re: [RFC] Should SRA stop producing COMPONENT_REF for non-bit-fields (again)?

2012-04-13 Thread Martin Jambor
On Fri, Apr 13, 2012 at 01:57:33PM +0200, Rainer Orth wrote: > Richard Guenther writes: > > >> Anyway, the patch I posted previously would risk re-introducing PR > >> 50386 and PR 50326, even though they are very unlikely with just > >> bit-fields. So my current working version is the following,

Re: [PATCH, PR 52939] Gracefully deal with fold_ctor_reference returning NULL during devirtualization

2012-04-13 Thread Martin Jambor
Hi, On Fri, Apr 13, 2012 at 04:13:13PM +0200, Richard Guenther wrote: > On Fri, 13 Apr 2012, Martin Jambor wrote: > > > Hi, > > > > currently we ICE when attempting to devirtualize a call to a virtual > > method introduced in a descendant but with a base which is

Re: [PATCH] Dissociate store_expr's temp from exp so that it is not marked as addressable

2012-04-17 Thread Martin Jambor
dependency may be missed. > > If we don't put the alias set of the reference on one of the MEM, then I > don't > think that we need to put it on the other MEM. That's what's done for the > first, non-bitfield temporary now. > > > 2012-04-10 Martin Jambor

[PATCH] Support for known unknown alignment

2012-04-20 Thread Martin Jambor
g. I suppose there will be comments, but eventually I'd like to ask for permission to commit the patch to trunk. Thanks, Martin 2012-04-20 Martin Jambor * builtins.c (get_object_alignment_1): Return whether we can determine the alignment or conservatively assume byte

Re: [PATCH] Support for known unknown alignment

2012-04-23 Thread Martin Jambor
Hi, On Mon, Apr 23, 2012 at 12:50:51PM +0200, Richard Guenther wrote: > On Fri, 20 Apr 2012, Martin Jambor wrote: > > > Hi, > > > > two days ago I talked to Richi on IRC about the functions to determine > > the expected alignment of objects and pointers we

Re: [PATCH] Support for known unknown alignment

2012-04-24 Thread Martin Jambor
Hi, On Mon, Apr 23, 2012 at 03:30:19PM +0200, Richard Guenther wrote: > On Mon, 23 Apr 2012, Martin Jambor wrote: > > > Hi, > > > > On Mon, Apr 23, 2012 at 12:50:51PM +0200, Richard Guenther wrote: > > > On Fri, 20 Apr 2012, Martin Jambor wrote: > > >

[PATCH, PR 50744] Prevent overflows in IPA-CP

2011-11-18 Thread Martin Jambor
1000 and therefore capping the size and cost estimate as well as the frequency sums so that their multiplication would not overflow an int seems too constraining on 32bit hosts. Bootstrapped and tested on x86_64-linux without any problems, OK for trunk? Thanks, Martin 2011-11-15 Martin

Re: [PR 47382] We cannot simply fold OBJ_TYPE_REF at all in 4.6

2011-11-22 Thread Martin Jambor
Hi, On Tue, Nov 22, 2011 at 07:45:39PM +1300, Maxim Kuvyrkov wrote: > On 30/09/2011, at 6:56 PM, Maxim Kuvyrkov wrote: > > > On 30/09/2011, at 4:02 PM, Maxim Kuvyrkov wrote: > > > >> On 24/09/2011, at 2:19 AM, Martin Jambor wrote: > >> > >>> Ho

[PATCH, PR 50622] Force a gimple operand in load_assign_lhs_subreplacements when necessary

2011-12-01 Thread Martin Jambor
-fields). Fixed with the patch below. It passes bootstrap and testsuite on x86_64-linux, I am about to do the same on the 4.6 branch because I'd like to commit it there as well. OK for trunk and the 4.6 branch? Thanks, Martin 2011-12-01 Martin Jambor PR tree-optimization/

Re: [PATCH, PR 50744] Prevent overflows in IPA-CP

2011-12-06 Thread Martin Jambor
Hi, On Sun, Dec 04, 2011 at 05:00:41PM +0100, Jan Hubicka wrote: > > > No to what? To the fact that HOST_WIDEST_INT is host-dependent > > > and thus should not be used to drive code generation? Or no to the > > > fact that we can (and do) use int64_t as host integer type? > > > > No to the fact

Re: [patch] Fix PR tree-optimization/50569

2011-12-12 Thread Martin Jambor
Hi, On Sat, Dec 10, 2011 at 10:31:23PM +0100, Eric Botcazou wrote: > Hi, > > this is a regression present on mainline and 4.6 branch at -O for the SPARC. > The compiler again generates an unaligned access for the memcpy calls in: > > struct event { > struct { > unsigned int sec; >

[PATCH, PR 51362] Make IPA-CP not ICE if estimate_ipcp_clone_size_and_time returns zero size

2011-12-13 Thread Martin Jambor
bumping the sizes to 1 in those cases. Bootstrapped and tested on x86_64-linux. OK for trunk? Thanks, Martin 2011-12-12 Martin Jambor PR tree-optimization/51362 * ipa-cp.c (estimate_local_effects): When estimated size of a specialized clone is zero, bump it to one

[COMMITTED, PR 50628] More careful SRA sub-access propagation accross assignments

2011-12-13 Thread Martin Jambor
Hi, Richi approved the following patch to fix 50628 on IRC. Details about the problem and this particular patch are also in bugzilla. Of course, I bootstrapped and tested the patch today on x86_64-linux. Thanks, Martin 2011-12-13 Martin Jambor PR middle-end/50628 * tree

[PATCH, PR 51583] One more missing force_gimple_operand in SRA

2011-12-16 Thread Martin Jambor
of trunk without any problems, a bootstrap and testsuite run on top of the 4.6 branch is currently running. OK for both if it passes? Thanks, Martin 2011-12-16 Martin Jambor PR tree-optimization/51583 * tree-sra.c (load_assign_lhs_subreplacements): Call

[PATCH, PR 51600] IPA-CP workaround for negative size cloning estimates

2011-12-21 Thread Martin Jambor
proceed with their testing. Bootstrapped and tested on x86-64-linux with no regressions. OK for trunk? Thanks, Martin 2011-12-20 Martin Jambor PR tree-optimization/51600 * ipa-cp.c (estimate_local_effects): Turn also negative size estimates to plus one. * gcc

[PATCH] Remove some newlines from tree-into-ssa.c dumps

2011-12-21 Thread Martin Jambor
luous "\n" stuff. I actually included this in a bootstrap and testsuite run, unsurprisingly it caused no issues. OK for trunk now? Thanks, Martin 2011-12-20 Martin Jambor * tree-into-ssa.c (rewrite_update_stmt): Do not dump extra newlines. (rewrite_update_enter_b

Re: [PATCH, PR 51600] IPA-CP workaround for negative size cloning estimates

2011-12-22 Thread Martin Jambor
Hi, On Wed, Dec 21, 2011 at 05:29:51PM +0100, Jan Hubicka wrote: > > Hi, > > > > given that we already have a workaround for zero size increase > > estimates from estimate_ipcp_clone_size_and_time, I see little reason > > not to extend it to negative values too, 0 is really just as bad as -2 > >

[PR 51759, 4.5] Backport the fix for PR 45644 to the 4.5 branch

2012-01-06 Thread Martin Jambor
4.5 times. Bootstrapped and tested on x86_64-linux, unless someone objects, I will commit it to the branch and the new test to both the 4.6 branch and the trunk on Monday. Thanks, Martin 2012-01-06 Martin Jambor PR tree-optimization/51759 Backport from mainline 2010-09-

[RFC] Fixing expansion of misaligned MEM_REFs on strict-alignment targets

2012-01-06 Thread Martin Jambor
Hi, I'm trying to teach our expander how to deal with misaligned MEM_REFs on strict alignment targets. We currently generate code which leads to bus error signals due to misaligned accesses. I admit my motivation is not any target in particular but simply being able to produce misaligned MEM_REF

[PATCH, PR 50444] Decrease MEM_REF TYPE_ALIGN in build_ref_for_offset

2012-01-12 Thread Martin Jambor
his. Is it the good direction, should I commit the patch (to trunk and the 4.6 branch) if it passes? Thanks, Martin 2012-01-12 Martin Jambor PR tree-optimization/50444 * tree-sra.c (build_ref_for_offset): Decrease the alignment of the type of the created MEM_REF if n

Re: [PATCH, PR 50444] Decrease MEM_REF TYPE_ALIGN in build_ref_for_offset

2012-01-12 Thread Martin Jambor
Hi, On Thu, Jan 12, 2012 at 03:23:31PM +0100, Richard Guenther wrote: > On Thu, 12 Jan 2012, Martin Jambor wrote: > > > Hi, > > > > I tend to believe that this is the SRA part of a fix for PR 50444 (and > > possibly some strict alignment SRA-related bugs too

[PATCH, PR 51782] Derive rtx address space from base object

2012-02-21 Thread Martin Jambor
the patch if his tests pass too. Thanks, Martin 2012-02-20 Martin Jambor PR tree-optimizaion/51782 * emit-rtl.c (set_mem_attributes_minus_bitpos): Set address space according to the base object. Index: src/gcc/emit-rtl.c

[RFC PATCH 1/3] Misaligned top level MEM_REFs on LHS of assignments

2012-02-27 Thread Martin Jambor
fail with movmisalign. Thanks, Martin 2012-02-28 Martin Jambor * expr.c (expand_assignment): Handle misaligned scalar writes to memory through top-level MEM_REFs by calling store_bit_field. * testsuite/gcc.dg/misaligned-expand-2.c: New test. Index: src/gcc/expr.c

[RFC PATCH 0/3] Fixing expansion of misaligned MEM_REFs on strict-alignment targets

2012-02-27 Thread Martin Jambor
Hi, this is another iteration of my attempts to fix expansion of misaligned memory accesses on strict-alignment platforms (which was suggested by Richi in http://gcc.gnu.org/ml/gcc-patches/2011-08/msg00931.html and my first attempt was posted as http://gcc.gnu.org/ml/gcc-patches/2012-01/msg00319.h

[RFC PATCH 2/3] Misaligned MEM_REFs within handled_components on LHS of assignments

2012-02-27 Thread Martin Jambor
at -O1). Therefore I added a condition to punt on complex modes. Thanks, Martin 2012-02-28 Martin Jambor * expr.c (expand_assignment): Handle misaligned scalar writes to memory through MEM_REFs within handled_components by calling store_bit_field

[RFC PATCH 3/3] Misaligned MEM_REF reads

2012-02-27 Thread Martin Jambor
SLOW_UNALIGNED_ACCESS instead of STRICT_ALIGNMENT there?). Thanks, Martin 2012-02-28 Martin Jambor * expr.c (expand_expr_real_1): handle misaligned scalar reads from memory through MEM_REFs by calling extract_bit_field. * testsuite/gcc.dg/misaligned-expand-1.c: New

[PATCH, 4.4, PR 52430] IPA-CP has to clone or leave alone externally_visible nodes

2012-03-01 Thread Martin Jambor
ed and tested on x86_64-linux, OK for the branch? Thanks, Martin 2012-02-29 Martin Jambor PR tree-optimization/52430 * ipa-cp.c (ipcp_initialize_node_lattices): Also consider node->local.externally_visible as needed. Index: gcc

Re: [PATCH, 4.4, PR 52430] IPA-CP has to clone or leave alone externally_visible nodes

2012-03-06 Thread Martin Jambor
Hi, On Fri, Mar 02, 2012 at 06:54:13PM +1300, Maxim Kuvyrkov wrote: > On 2/03/2012, at 1:53 AM, Martin Jambor wrote: > > > Hi, > > > > the following patch backports 4.5 behavior to 4.4 IPA-CP > > initialization when it decides which nodes need to be duplicated

[PATCH] Proper use of decl_function_context in dwar2out.c

2012-03-08 Thread Martin Jambor
OK for the branch once 4.7.0 is out? Thanks, Martin 2012-03-07 Martin Jambor * dwarf2out.c (dwarf2out_decl): Use result of decl_function_context rather than DECL_CONTEXT. Index: src/gcc/dwarf2out.c === --- sr

Re: RFC: explicitely mark out-of-scope deaths

2011-05-26 Thread Martin Jambor
Hi, On Thu, May 26, 2011 at 03:43:45PM +0200, Michael Matz wrote: > Index: tree-sra.c > === > --- tree-sra.c.orig 2011-05-26 14:15:01.0 +0200 > +++ tree-sra.c2011-05-26 14:15:41.0 +0200 > @@ -1041,6 +1041,11

[PATCH] Fix ipa_reduced_postorder with respect to overwritable functions

2011-05-30 Thread Martin Jambor
my problems caused by this went away too). OK for trunk? Thanks, Martin 2011-05-30 Martin Jambor * ipa-utils.c (searchc_env): New field allow_overwritable. (searchc): do not ignore edges to overwritable nodes if indicated by env->allow_overwrita

[PATCH] Make ipa_reduced_postorder number SCCs

2011-05-30 Thread Martin Jambor
number of the component when constructing the linked list of nodes in it. And this is exactly what the patch below does. Bootstrapped and tested on x86_64-linux. OK for trunk? Thanks, Martin 2011-05-19 Martin Jambor * ipa-utils.c (ipa_dfs_info): New field scc_no; * ipa

[PATCH, C++] Use of a variable with undefined value in cp/parser.c?

2011-06-06 Thread Martin Jambor
cp_parser_parameter_declaration. All in all, I intend to commit the following in a few days unless someone stops me. Thanks, Martin 2011-06-06 Martin Jambor * parser.c (cp_parser_parameter_declaration_list): Initialize parenthesized_p. Index: src/gcc/cp/parser.c

[PATCH] Better propagation of flags in access trees of SRA

2011-06-07 Thread Martin Jambor
Hi, the way we propagate flags in SRA access tree has evolved in an unfortunate way, this patch simplifies the whole thing while doing exactly the same thing. Bootstrapped and tested on x86_64-linux, OK for trunk? Thanks, Martin 2011-06-06 Martin Jambor * tree-sra.c

Re: Cgraph alias reorg 8/14 (ipa-cp and ipa-prop update)

2011-06-13 Thread Martin Jambor
Hi, On Fri, Jun 10, 2011 at 04:55:43PM +0200, Jan Hubicka wrote: > Hi, > this patch updated ipa-cp and ipa-prop for aliases. It is basically > easy - we don't analyze nodes represneting aliases and when > propagating we skip them, like everywhere else. > > There are two problems I noticed. Fir

[PATCH, PR 48613] Don't stream jump functions if there are none

2011-06-14 Thread Martin Jambor
tions can -and are - dealt elsewhere. Bootstrapped and tested on trunk on x86_64-linux. OK for trunk and subsequently for the 4.6 branch too? Thanks, Martin 2011-06-13 Martin Jambor PR tree-optimization/48613 * ipa-prop.c (ipa_prop_write_jump_functions): Ret

[PATCH, PR 49343] Make SRA cope with some fields with variable offsets

2011-06-15 Thread Martin Jambor
e). Fixed thusly, code closely follows what is in get_ref_base_and_extent but is simpler because we know that function has once already accepted this input. Bootstrapped and tested on x86_64-linux. OK for trunk? Thanks, Martin 2011-06-10 Martin Jambor PR tree-optimiza

Re: SRA generates uninitialized var use

2011-06-22 Thread Martin Jambor
Hi, On Tue, Jun 21, 2011 at 06:08:27PM +0200, Richard Guenther wrote: > On Tue, Jun 21, 2011 at 5:51 PM, Xinliang David Li wrote: > > On Tue, Jun 21, 2011 at 1:42 AM, Richard Guenther > > wrote: > >> On Tue, Jun 21, 2011 at 1:28 AM, Xinliang David Li > >> wrote: > >>> Good point -- but why doe

Re: [PATCH] middle-end only piece of middle-end array expressions

2011-06-22 Thread Martin Jambor
Hi, On Tue, Jun 21, 2011 at 05:12:40PM +0200, Richard Guenther wrote: > > This is the middle-end pieces, without the C/C++ frontend changes. > Enough to work on the Fortran parts. > > Doesn't even break bootstrap. > > Richard. > > 2008-04-11 Richard Guenther > > * builtin-attrs.def (

Re: SRA generates uninitialized var use

2011-06-23 Thread Martin Jambor
Hi, On Mon, Jun 20, 2011 at 10:47:58PM +0200, Richard Guenther wrote: > On Mon, Jun 20, 2011 at 6:15 PM, Xinliang David Li wrote: > > It is used to indicate the fact the var decl needs to have a memory > > home (addressable) -- is there another way to do this? this is to > > avoid the following s

[PATCH, PR 49516] Avoid SRA mem-refing its scalar replacements

2011-06-23 Thread Martin Jambor
on i686-linux. I have bootstrapped and tested the patch on x86_64-linux too. I intend to do a full i686 bootstrap and test but so far have not managed to do it. OK for trunk and 4.6 after it is unfrozen? Thanks, Martin 2011-06-22 Martin Jambor PR tree-optimizations/49516

[PATCH, PR 49094] Refrain from creating misaligned accesses in SRA

2011-06-26 Thread Martin Jambor
c++ on sparc64-linux without any issues as well as traditional bootstrap and full testsuite run on x86_64-linux. OK for trunk and for 4.6 when unfrozen? Thanks, Martin 2011-06-24 Martin Jambor PR tree-optimization/49094 * tree-sra.c (potential_alignment_i

Re: [PATCH, PR 49094] Refrain from creating misaligned accesses in SRA

2011-06-28 Thread Martin Jambor
Hi, On Mon, Jun 27, 2011 at 03:18:01PM +0200, Richard Guenther wrote: > On Sun, 26 Jun 2011, Martin Jambor wrote: > > > Hi, > > > > under some circumstances involving user specified alignment and/or > > packed attributes, SRA can create a misaligned MEM_REF. As

[PATCH, SRA] Total scalarization and padding

2011-06-28 Thread Martin Jambor
s to read the source. Bootstrapped and tested on x86_64-linux, OK for trunk? Thanks, Martin 2011-06-24 Martin Jambor * tree-sra.c (struct access): Rename total_scalarization to grp_total_scalarization (completely_scalarize_var): New function. (sort_and_splic

Re: [PATCH, SRA] Total scalarization and padding

2011-06-28 Thread Martin Jambor
Hi, On Tue, Jun 28, 2011 at 03:01:17PM +0200, Richard Guenther wrote: > On Tue, Jun 28, 2011 at 2:50 PM, Martin Jambor wrote: > > Hi, > > > > at the moment SRA can get confused by alignment padding and think that > > it actually contains some data for which there is

Re: [PATCH, PR 49094] Refrain from creating misaligned accesses in SRA

2011-06-30 Thread Martin Jambor
). Thanks, Martin 2011-06-30 Martin Jambor PR tree-optimization/49094 * tree-sra.c (tree_non_mode_aligned_mem_p): New function. (build_accesses_from_assign): Use it. * testsuite/gcc.dg/tree-ssa/pr49094.c: New test. Index: src/gcc/tree-sra.c

Re: [PATCH, PR 49094] Refrain from creating misaligned accesses in SRA

2011-06-30 Thread Martin Jambor
Hi, On Thu, Jun 30, 2011 at 03:39:55PM +0200, Martin Jambor wrote: > Hi, > > I had to add a test that the analyzed expression is not an SSA name. > This has been approved by Rchi on IRC yesterday. Thus, I have > committed the following as revision 175703 after successful r

Re: [PATCH, SRA] Total scalarization and padding

2011-06-30 Thread Martin Jambor
Hi, On Wed, Jun 29, 2011 at 02:52:36PM +0200, Richard Guenther wrote: > On Tue, 28 Jun 2011, Martin Jambor wrote: > > On Tue, Jun 28, 2011 at 03:01:17PM +0200, Richard Guenther wrote: > > > On Tue, Jun 28, 2011 at 2:50 PM, Martin Jambor wrote: > > > > Hi, > &g

Re: [PATCH] [Annotalysis] Fixes virtual method calls when type is unknown

2011-07-01 Thread Martin Jambor
Hi, On Thu, Jun 30, 2011 at 10:01:58AM -0700, Delesley Hutchins wrote: > This bug fixes a failure in annotalysis that is caused when gcc does > not return the correct static type for the callee of a virtual method. > > Bootstrapped and passed GCC regression testsuite on x86_64-unknown-linux-gnu.

Re: [PATCH, PR 49094] Refrain from creating misaligned accesses in SRA

2011-07-01 Thread Martin Jambor
Hi, On Thu, Jun 30, 2011 at 06:36:01PM +0200, Martin Jambor wrote: > Hi, > > On Thu, Jun 30, 2011 at 03:39:55PM +0200, Martin Jambor wrote: > > Hi, > > > > I had to add a test that the analyzed expression is not an SSA name. > > This has been approved by Rch

Re: [PATCH] [Annotalysis] Fixes virtual method calls when type is unknown

2011-07-01 Thread Martin Jambor
Hi, On Fri, Jul 01, 2011 at 09:31:30AM -0700, Delesley Hutchins wrote: > > Just out of curiosity, I does your > > analysis crash also on the testcase below (add the Mutex field if it > > is necessary)? > > No, the static type of b (in b->test()) remains Bar* in gimple, so the > analysis works fin

[PATCH, PR 49495] Cgraph verifier must look through aliases

2011-07-03 Thread Martin Jambor
07-02 Martin Jambor PR middle-end/49495 * cgraphunit.c (verify_edge_corresponds_to_fndecl): New function. (verify_cgraph_node): Some functinality moved to verify_edge_corresponds_to_fndecl, call it. Index: src/gcc/cgraphu

Re: [PATCH, PR 49495] Cgraph verifier must look through aliases

2011-07-07 Thread Martin Jambor
7;t able to fit the 80 column limit). > > Bootstrapped and tested on x86_64-linux. OK for trunk? > > > > Thanks, > > > > Martin > > > > > > 2011-07-02 Martin Jambor > > > > PR middle-end/49495 > > * cgraphunit.c (verif

[PATCH] Skip testsuite/gcc.dg/tree-ssa/sra-12.c on avr*-*-*

2011-07-07 Thread Martin Jambor
tomorrow unless someone objects. Thanks, Martin 2011-07-07 Martin Jambor testsuite/ * gcc.dg/tree-ssa/sra-12.c: Skip dump scan on avr targets. Index: src/gcc/testsuite/gcc.dg/tree-ssa/sra-12.c === --- src.orig/gcc/testsuite/

[PATCH, SRA] Dump that a structure is too big for total scalarization

2011-07-07 Thread Martin Jambor
currently undergoing a bootstrap and testsuite run on x86_64-linux. OK if it passes? Thanks, Martin 2011-07-07 Martin Jambor * tree-sra.c (analyze_all_variable_accesses): Dump that a struture is too big for total scalarization. Index: src/gcc/tree-sra.c

Re: [PATCH] New IPA-CP with real function cloning

2011-07-08 Thread Martin Jambor
Hi, On Thu, Jul 07, 2011 at 06:03:07PM +0200, Jan Hubicka wrote: > Hi, > patch is long, so let me review it in more passes. Fair enough. > > > > > > 2011-06-22 Martin Jambor > > > > * ipa-prop.h: Include alloc-pool.h. > > (ipa_lattice_

[PATCH] Remove obsolete alias check in cgraph_redirect_edge_call_stmt_to_callee

2011-07-11 Thread Martin Jambor
unk? Thanks, Martin 2011-07-08 Martin Jambor * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Alias check removed. Index: src/gcc/cgraphunit.c === --- src.orig/gcc/cgraphunit.c +++ src/gcc/cgraphuni

[PATCH] Remove cgraph_get_node_or_alias

2011-07-11 Thread Martin Jambor
Hi, cgraph_get_node_or_alias is now completely equivalent to cgraph_get_node, in fact it is exactly same character-by-character. Therefore it should be removed, which is what the patch below does. Bootstrapped and tested on x86_64-linux, OK for trunk? Thanks, Martin 2011-07-11 Martin Jambor

[PATCH, 4.6, PR 49094, committed] Backport of fixes for PR 49094

2011-07-11 Thread Martin Jambor
11-06/msg02371.html The first has been explicitely approved for the branch, the second is a straightforward followup. Sorry it took so long, I just nearly forgot to do the backport too. Thanks, Martin 2011-07-11 Martin Jambor PR tree-optimization/49094 * tree-

Re: [PATCH] New IPA-CP with real function cloning

2011-07-14 Thread Martin Jambor
Hi, I'll send a new version of IPA-CP incorporating most of the feedback in a new thread but let me also comment on some of the points here: On Fri, Jul 08, 2011 at 08:24:31PM +0200, Jan Hubicka wrote: > > > > { > > > > /* Pointer to an array of structures describing individual formal > > > >

Re: [PATCH] New IPA-CP with real function cloning

2011-07-14 Thread Martin Jambor
Hi, like with the previous mail, I'll reply to the comments here and then post a new version of the patch in a separate thread. On Sun, Jul 10, 2011 at 07:04:21PM +0200, Jan Hubicka wrote: > > > > /* If checking is enabled, verify that no lattice is in the TOP state, i.e. > > not > >bottom,

Re: [PATCH] New IPA-CP with real function cloning

2011-07-15 Thread Martin Jambor
Hi, On Thu, Jul 14, 2011 at 11:28:32PM +0200, Jan Hubicka wrote: > > > > Well, technically they survive until after inlining (because of > > indirect inlining which also derives information from the lattices > > corresponding to node->inlined_to node. Results of arithmetic > > functions are not

Re: [PATCH, PR 49094] Refrain from creating misaligned accesses in SRA

2011-07-21 Thread Martin Jambor
Hi, On Thu, Jul 21, 2011 at 10:34:35AM +0200, Richard Guenther wrote: > On Wed, 20 Jul 2011, Ulrich Weigand wrote: > > > Richard Guenther wrote: > > > On Tue, Jul 19, 2011 at 8:20 PM, Ulrich Weigand > > > wrote: > > > > The problem is that in this expression > > > > disappear = VIEW_CONVERT_E

[PATCH, PR 49796] Do not verify cgraph edge destinations if they lead to a different partition

2011-07-22 Thread Martin Jambor
Thanks, Martin 2011-07-21 Martin Jambor PR lto/49796 * cgraphunit.c (verify_edge_corresponds_to_fndecl): Return false if decl node is in another partition, call cgraph_get_node only once. Index: src/gcc/cgra

Re: [PATCH, PR 49094] Refrain from creating misaligned accesses in SRA

2011-07-25 Thread Martin Jambor
Hi, On Thu, Jul 21, 2011 at 11:40:32AM +0200, Martin Jambor wrote: > Hi, > > On Thu, Jul 21, 2011 at 10:34:35AM +0200, Richard Guenther wrote: > > On Wed, 20 Jul 2011, Ulrich Weigand wrote: > > > > > Richard Guenther wrote: > > > > On Tue, Jul 19, 2011

[PATCH, PR 49786] Avoid overflow when updating counts in IPA-CP

2011-07-26 Thread Martin Jambor
before the IPA-CP submission and the current normal bootstrap ones and it seemed fine (although there were a few dump scan failures). (All of the above was done on x86_64-linux.) So, OK for trunk? Thanks, Martin 2011-07-25 Martin Jambor PR bootstrap/49786 * ipa-cp.c

Re: [PATCH, PR 49094] Refrain from creating misaligned accesses in SRA

2011-07-26 Thread Martin Jambor
On Tue, Jul 26, 2011 at 09:39:02AM +0200, Richard Guenther wrote: > On Mon, Jul 25, 2011 at 7:52 PM, Martin Jambor wrote: ... > > > > 2011-07-25  Martin Jambor   > > > >        * tree-sra.c (tree_non_mode_aligned_mem_p): Strip conversions and > >  

Re: [PATCH] Remove obsolete alias check in cgraph_redirect_edge_call_stmt_to_callee

2011-07-27 Thread Martin Jambor
Ping. (Re-tested this Monday.) Thanks, Martin On Mon, Jul 11, 2011 at 11:58:32AM +0200, Martin Jambor wrote: > Hi, > > since (same body) aliases have their own cgraph_nodes, the check for > them in cgraph_redirect_edge_call_stmt_to_callee is now unnecessary > because e->

Re: [PATCH, PR 49094] Refrain from creating misaligned accesses in SRA

2011-07-27 Thread Martin Jambor
Hi, On Wed, Jul 27, 2011 at 02:34:59PM +0200, Ulrich Weigand wrote: > Martin Jambor wrote: > > > OK, this is what I have just committed as revision 176797 after > > re-testing. > > Thanks, this has fixed the forwprop-5.c regression on spu-elf on mainline. > > I&#x

[PATCH, PR 49886] Prevent fnsplit from changing signature when there are type attributes

2011-07-28 Thread Martin Jambor
h has passed bootstrap and testsuite on x86_64-linux, the current one is undergoing both right now. OK for trunk if it passes? Thanks, Martin 2011-07-28 Martin Jambor PR middle-end/49886 * ipa-inline-analysis.c (compute_inline_parameters): Set can_change_signatu

Re: [PATCH, PR 49886] Prevent fnsplit from changing signature when there are type attributes

2011-07-29 Thread Martin Jambor
Hi, On Thu, Jul 28, 2011 at 06:52:05PM +0200, Martin Jambor wrote: > pass_split_functions is happy to split functions which have type > attributes but cannot update them if the new clone has in any way > different parameters than the original. This can lead to > miscompilations in ca

[PATCH 0/4] Devirtualization fix and improvements

2011-04-15 Thread Martin Jambor
Hi, the following set of patches is a bunch of early fixups and improvements to the current devirtualization mechanism which are semi-related but are meant to be applied on top of each other. One nice thing about them is that they improve SPEC 2006 473.astar by over 3% with LTO. More comments ab

[PATCH 1/4] Remove usesess and wrong code from ipa_analyze_virtual_call_uses

2011-04-15 Thread Martin Jambor
blems. OK for trunk and the 4.6 branch? Thanks, Martin 2011-04-08 Martin Jambor * ipa-prop.c (ipa_analyze_virtual_call_uses): Remove handling of ADR_EXPRs. Index: src/gcc/ipa-prop.c === --- src.orig/gcc/ipa-p

[PATCH 3/4] Simple relaxation of dynamic type change detection routine

2011-04-15 Thread Martin Jambor
04-14 Martin Jambor * ipa-prop.c (stmt_may_be_vtbl_ptr_store): Return false for scalar non-pointer assignments. Index: src/gcc/ipa-prop.c === --- src.orig/gcc/ipa-prop.c +++ src/gcc/ipa-prop.c @@ -405,13 +4

[PATCH 4/4] Devirtualization based on global objects

2011-04-15 Thread Martin Jambor
d and tested on x86_64-linux. OK for trunk? Thanks, Martin 2011-04-15 Martin Jambor * ipa-cp.c (ipcp_process_devirtualization_opportunities): Devirtualize also according to actual contants. * gimple-fold.c (gimple_extract_devirt_binfo_from_cst): New fun

[PATCH 2/4] Handle calls to ancestor objects in IPA-CP devirtualization

2011-04-15 Thread Martin Jambor
constant propagation is then made aware of the offset field and takes it into account when looking up the proper BINFO. Bootstrapped and tested on x86_64-linux. OK for trunk? Thanks, Martin 2011-04-13 Martin Jambor * ipa-cp.c (ipcp_process_devirtualization_opportunities): Take

[PATCH, PR 48601] cgraph_get_create_node in emultls.c

2011-04-15 Thread Martin Jambor
fixes the issue. It is rather straight-forward and was pre-approved on IRC by Honza so I am about to commit it now. Testcases are already in the testsuite. Thanks, Martin 2011-04-15 Martin Jambor PR middle-end/48601 * tree-emutls.c (lower_emutls_function_body): Call

Re: [PATCH 2/4] Handle calls to ancestor objects in IPA-CP devirtualization

2011-04-18 Thread Martin Jambor
Hi, On Fri, Apr 15, 2011 at 05:26:44PM +0200, Richard Guenther wrote: > On Fri, 15 Apr 2011, Martin Jambor wrote: > > > Hi, > > > > early inlining can create virtual calls based on the part of an object > > that represents an ancestor. This patch makes ipa-prop

Re: [PATCH 3/4] Simple relaxation of dynamic type change detection routine

2011-04-18 Thread Martin Jambor
Hi, On Fri, Apr 15, 2011 at 05:28:49PM +0200, Richard Guenther wrote: > On Fri, 15 Apr 2011, Martin Jambor wrote: > > > Hi, > > > > in order to speed up astar, I had to persuade the function that > > decides whether a statement potentially modifies the dynamic type

Re: [PATCH 4/4] Devirtualization based on global objects

2011-04-18 Thread Martin Jambor
Hi, On Fri, Apr 15, 2011 at 05:38:50PM +0200, Richard Guenther wrote: > On Fri, 15 Apr 2011, Martin Jambor wrote: > > > Hi, > > > > this is the patch that actually speeds up astar (together with the > > previous one). It implements devirtualization based on globa

[PATCH, Fortran] A tweak to fortran -> call graph interface

2011-04-18 Thread Martin Jambor
artin - It seems to me that fortran can call cgraph_create_node directly without checking for its existence first. Bootstrapped and tested on x86_64-linux without any problems, tests on i686 in progress. Thanks, Martin 2011-03-18 Martin Jambor * trans-d

<    11   12   13   14   15   16   17   18   >