[PATCH] PowerPC address support clean, patch 2 of 4

2018-05-03 Thread Michael Meissner
whether a particular reload register class supports a particular D*-form instruction. This is patch #2 of 4 and it moves some of the mode support functions to be next to each other in the source. I have done a bootstrap with patches 1-4 and did a make check comparison on a little endian power8 system

[PATCH][Aarch64] v2: Arithmetic overflow tests [Patch 4/4]

2018-06-06 Thread Michael Collison
This is a respin of a AArch64 patch that adds support for builtin arithmetic overflow operations. This update separates the patch into multiple pieces and addresses comments made by Richard Earnshaw here: https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00249.html Original patch and motivation

Re: patch pings

2011-04-15 Thread Bernd Schmidt
On 04/15/2011 04:18 PM, Jeff Law wrote: > http://gcc.gnu.org/ml/gcc-patches/2011-03/msg02247.html I don't know. I sympathize with the goal, but I'm not too happy about the structure of this patch. Doesn't this do the scan once for every reload in an insn? It seems to me like t

[PATCH] Fix PR48650

2011-04-18 Thread Richard Guenther
STRING_CST is now derived from tree_typed but we still clear a tree_common sized chunk. Nathan, maybe grep for other sizeof()s around the tree? Installed as obvious. Richard. 2011-04-18 Richard Guenther PR middle-end/48650 * tree.c (build_string): STRING_CST is now derived

[PATCH] Fix PR46188

2011-04-19 Thread Richard Guenther
This fixes PR46188 on the 4.5 branch by backporting rev. 159907. Instead of carrying over the checking bits I simply removed them on the branch (they had one trivial fallout originally, PR44295). Bootstrapped and tested on x86_64-unknown-linux-gnu, {,-m32} for all languages including Ada and Obj

[PATCH] Fix PR48695

2011-04-20 Thread Richard Guenther
This fixes PR48965, not handling mem-refs properly within aliasing_component_refs_p. We disregarded the offset for the decl base. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2011-04-20 Richard Guenther PR middle-end/48695 * tree-ssa-alias

[PATCH] Fix PR47892

2011-04-20 Thread Richard Guenther
This fixes PR47892, we are failing to if-convert function calls, even those we can vectorize. This includes pow() which we canonicalize x*x to with -ffast-math (yeah, I know ...). No reason to not if-convert at least const builtins. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to

[PATCH] Fix PR48703

2011-04-21 Thread Richard Guenther
This fixes the fallout of not re-setting the set_decl_assembler_name langhook with -flto. Bootstrapped and tested on x86_64-unknown-linux-gnu, SPEC2k6 build tested, installed. Richard. 2011-04-21 Richard Guenther PR lto/48703 * tree.c (free_lang_data_in_decl): Do not zero TR

Re: patch pings

2011-04-25 Thread Jeff Law
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 04/15/11 10:26, Bernd Schmidt wrote: > On 04/15/2011 04:18 PM, Jeff Law wrote: > >> http://gcc.gnu.org/ml/gcc-patches/2011-03/msg02247.html > > I don't know. I sympathize with the goal, but I'm not too happy about &

[PATCH] Fix PR48753

2011-04-26 Thread Richard Guenther
Value-profiling now creates proper integer constants. Installed. Richard. 2011-04-26 Richard Guenther PR testsuite/48753 * gcc.dg/tree-prof/val-prof-2.c: Adjust. Index: gcc/testsuite/gcc.dg/tree-prof/val-prof-2.c =

[PATCH] Fix PR48731

2011-04-26 Thread Richard Guenther
This adds a missing check for ->local.inlinable to cgraph_flatten. Honza fixed this on trunk by factoring out the checks. Bootstrapped and tested on x86_64-unknown-linux-gnu, installed. Richard. 2011-04-26 Richard Guenther PR tree-optimization/48731 * ipa-inline.c (cgraph_fl

[PATCH] Fix PR48772

2011-04-27 Thread Richard Guenther
This fixes PR48772, we can't update stmts with virtual defs during VN elimination as that may destroy SSA names we use in the VN lattice. So we have to defer it, similar to removing stmts. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2011-04-27 Richard Guenth

[PATCH] Fix PR48804

2011-04-28 Thread Richard Guenther
Looking closer reveals a use-after-free, so this reverts the portion of the patch likely causing 48804. Committed as obvious. Richard. 2011-04-28 Richard Guenther Revert 2011-04-28 Richard Guenther * tree-ssa-structalias.c (solve_constraints): Build succ graph

[PATCH] Fix PR48822

2011-05-02 Thread Richard Guenther
This fixes PR48822, an issue we ran into the past as well. The problem is that due to various reasons (mostly simplification of expressions) we might be tempted to go up the lattice (from VARYING to some constant) during value-numbering. This is of course a recipie to oscillation as can be seen

[PATCH] Fix PR48846

2011-05-03 Thread Richard Guenther
We are streaming DECL_OFFSET_ALIGN using 8 bits. That is bogus, as DECL_OFFSET_ALIGN is 1 << decl_common.off_align which in turn is a 8 bit bitfield. The solution is to stream decl_common.off_align instead. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk and the 4.6 branch

[PATCH] Cleanup expand_shift

2011-05-03 Thread Richard Guenther
This is the promised followup to the expand_shift reorg. The following patch makes the worker take an RTL expanded shift amount and avoids re-creating adjusted trees if it recurses for expanding rotates. Most of the scary code (involving the conversions) originated from the fix for PR27861

[patch] PR 48837

2011-05-06 Thread Zdenek Dvorak
Hi, when accumulator transformation is performed on a function like foo(a) { if (a > 0) return 1 + foo (a - 1) return bla(); } this becomes foo(a) { int tmp = 0; while (a > 0) tm = 1 + tmp; return tmp + bla(); } Before, bla was a tail-call, but after the optimization, it i

[PATCH] Fix PR48953

2011-05-11 Thread Richard Guenther
This fixes the tree inliner which fails to remap the type of MEM_REFs. That downstream causes issues when LTO re-computes TYPE_CANONICAL and fails during stmt verification. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. I'm considering this also for 4.6 as it is latent t

[PATCH] Fix PR48964

2011-05-11 Thread Richard Guenther
This typo prevents a load of canonical type merging and thus very likely causes PR48964. I'm currently checking if it fixes LTO profiledbootstrap and will commit if it does (and also if it doesn't - it's quite an obvious bug). Richard. 2011-05-11 Richard Guenther PR middle-end/48964

[PATCH] Fix PR48172

2011-05-12 Thread Richard Guenther
This fixes PR48172 by properly doing the runtime alias check for vectorization. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk sofar. Richard. 2011-05-12 Richard Guenther PR tree-optimization/48172 * tree-vect-loop-manip.c (vect_vfa_segment_size): Do n

[PATCH] Fix PR48978

2011-05-13 Thread Richard Guenther
The change to pointer and function type hashing has made hashing a lot weaker (contrary to what I expected) because if either type resides in a SCC then we do _not_ take the hash of the visited target types into account (I'm currently trying to think about a way around that), so we are effectively

[PATCH] Fix PR48989

2011-05-18 Thread Richard Guenther
This fixes the TRUTH_*_EXPR verification issues by making sure we preserve conversions to BOOLEAN_TYPE where that carries useful semantics - when the type has a TYPE_PRECISION other than 1. The point of the TRUTH_*_EXPR operand sanitization was to make sure we have two-valued types for their oper

[PATCH] Fix PR49018

2011-05-18 Thread Richard Guenther
This fixes PR49018, ifcombine looks for side-effects but instead asks only gimple_has_volatile_ops. And gimple_has_side_effects disregards that volatile asms have side-effects. The function also doesn't handle all stmts gracefully so I fixed it as well as turning the asserts to checking asserts.

[PATCH] Fix PR49063

2011-05-19 Thread Richard Guenther
I shouldn't have moved the test w/o re-testing. The following fixes it. Tested on x86_64-unknown-linux-gnu, applied. Richard. 2011-05-19 Richard Guenther PR testsuite/49063 * gcc.dg/builtin-object-size-11.c: Use -std=gnu89. Index: gcc/testsuite/gcc.dg/builtin-object-size-1

[PATCH] Fix PR48849

2011-05-20 Thread Richard Guenther
Ontop of the previous LTO type merging cleanup the following patch should fix PR48849 by making sure that TYPE_CANONICAL computation of pointer types at LTO streaming time matches that of the middle-end (and thus later passes that create new pointer types). LTO bootstrapped and tested on x86_64

[PATCH] Fix PR49079

2011-05-20 Thread Richard Guenther
This fixes PR49079 - the mem-ref merge broke the trailing array access detection of get_ref_base_and_extent because of the embedding of a view-conversion. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk and branch. Richard. 2011-05-20 Richard Guenther PR tree-o

Patch ping #2

2011-05-23 Thread Eric Botcazou
Not as many as Jakub, but still. :-) Fix annoying gcov filename handling (gcov.c, 2 lines): http://gcc.gnu.org/ml/gcc-patches/2011-03/msg01380.html Introduce -Wstack-usage: http://gcc.gnu.org/ml/gcc-patches/2011-03/msg01992.html Extend TYPE_DECL_IS_STUB trick (dwarf2out.c, 1 line): http:/

Re: Patch ping

2011-05-23 Thread Richard Guenther
On Mon, 23 May 2011, Jakub Jelinek wrote: > Hi! > > - http://gcc.gnu.org/ml/gcc-patches/2011-05/msg00895.html > P1 PR48973 4.6/4.7 fix for expansion of comparisons with signed > 1 bit precision type Ok. I'll leave the rest to others. Thanks, Richard.

[PATCH] Fix PR15419

2011-05-23 Thread Richard Guenther
We're confused when void * pointers enter memcpy folding. The following fixes it. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2011-05-23 Richard Guenther PR middle-end/15419 * builtins.c (fold_builtin_memory_op): Be less restrictive about

[PATCH] Fix PR49115

2011-05-23 Thread Richard Guenther
This fixes PR49115 - we cannot assume that a stmt that can throw internally is a kill. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk, queued for backporting. Richard. 2011-05-23 Richard Guenther PR tree-optimization/49115 * tree-ssa-alias.c (stmt_kill

Re: Patch ping

2011-05-23 Thread Jeff Law
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 05/23/11 01:48, Jakub Jelinek wrote: > > - http://gcc.gnu.org/ml/gcc-patches/2011-05/msg00403.html > debug info improvement for unused parameters passed in memory OK. > > - http://gcc.gnu.org/ml/gcc-patches/2011-05/msg01454.html > PR49032 f

[PATCH] Fix PR49078

2011-05-24 Thread Richard Guenther
This fixes PR49078 by restricting the assert in get_alias_set to the case where it matters. We know that how types generated during optimization have TYPE_CANONICAL computed differs from what the LTO machinery does, the patch documents that and reverts a previous attempt to fix parts of this

[PATCH] Fix PR48702

2011-05-26 Thread Richard Guenther
This patch fixes PR48702. IVOPTs does not guarantee that the base addresses it uses for memory accesses is within the bounds that the C standard (and the middle-end) would allow. Thus, make sure that for those bases where we cannot guarantee this we use TARGET_MEM_REF instead of MEM_REF and

[PATCH] Fix PR49177

2011-05-27 Thread Richard Guenther
This fixes PR49177 by re-introducing the removed folding in a correct way. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2011-05-27 Richard Guenther PR middle-end/49177 * fold-const.c (fold_unary_loc): Fold (T)(A CMP B) to A CMP B ?

[PATCH] Fix PR49189

2011-05-27 Thread Richard Guenther
This fixes PR49189 by re-installing the non-folding of conversions of comparison results. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2011-05-27 Richard Guenther PR middle-end/49189 * fold-const.c (fold_unary_loc): Do not re-fold folding conversion

[PATCH] Fix PR47975

2011-03-03 Thread Richard Guenther
Bah, whoever invented #define TYPE_MODE(NODE) \ (TREE_CODE (TYPE_CHECK (NODE)) == VECTOR_TYPE \ ? vector_type_mode (NODE) : (NODE)->type.mode) needs to be clue-batted (yes, I know your name!!! ;)) Bootstrap and regtest running on x86_64-unknown-linux-gnu. Richard. 2011-03-03 Richard Gue

PATCH: Remove README.QMTEST

2011-03-06 Thread Mark Mitchell
It was recently pointed out to me that we still have the README.QMTEST file in gcc/testsuite. That file talks about how to use QMTest instead of DejaGNU to test G++ -- but the information there is just not accurate anymore. Various things have bit-rotted since the point at which that was written

[PATCH] Fix PR48067

2011-03-11 Thread Richard Guenther
We shouldn't try to make use of the multiplication result twice in FMA_EXPR building. The following ensures that if the uses go through a negate. Bootstrap and regtest processing on x86_64-unknown-linux-gnu. Richard. 2011-03-11 Richard Guenther PR tree-optimization/48067 *

[PATCH] Fix PR48073

2011-03-11 Thread Richard Guenther
This fixes PR48073 - we are not interested in types on IDENTIFIER_NODEs for LTO and thus we don't need to walk types or decls that hang off such types. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2011-03-11 Richard Guenther PR lto/48073 *

[PATCH] Fix PR48098

2011-03-14 Thread Richard Guenther
I am currently testing the following patch for PR48098 which exposes the fact that TREE_TYPE (vector-type) does not return T when vector-type is built using make_vector_type (T). This is because we move all qualifiers from T to the vector-type and keep an unqualified element type. This finally

Re: Patch ping

2011-03-14 Thread Diego Novillo
On Mon, Mar 14, 2011 at 16:19, Jakub Jelinek wrote: > Hi! > > http://gcc.gnu.org/ml/gcc-patches/2011-02/msg01749.html >  - PR middle-end/47917, snprintf folding OK. Diego.

[PATCH] Fix PR48031

2011-03-15 Thread Richard Guenther
We shouldn't create new VLA array accesses via fold when we are in gimple form as we have no way to fixup the gimplified element size and minimal value slots. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk (I'll make my way backwards to the release branches after 4.6.0 is o

[PATCH] Fix PR41490

2011-03-15 Thread Richard Guenther
This fixes store-sinking (finally, broken since alias-improvements merge). To work reliably this adds an unconditional VUSE to all return statements. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2011-03-15 Richard Guenther PR tree-optimization/414

[PATCH] Fix PR13954

2011-03-15 Thread Richard Guenther
This fixes PR13954, the failure to look through memcpy functions during value-numbering. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2011-03-09 Richard Guenther PR tree-optimization/13954 * tree-ssa-sccvn.c (vn_reference_lookup_3): Look th

[PATCH] Fix PR47650

2011-03-15 Thread Richard Guenther
This fixes PR47650, bogus function type dumping for unprototyped and variadic functions. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2011-03-15 Richard Guenther PR middle-end/47650 * tree-pretty-print.c (dump_function_declaration): Properly

[PATCH] Fix PR48146

2011-03-16 Thread Richard Guenther
My fixing of store-sinking exposed an issue that relying on SSA update to fixup virtual operands isn't a good idea if we incrementally walk through all sinking candidates. Fixed by manually updating virtual SSA form which is easy in this case. Bootstrapped and tested on x86_64-unknown-linux-gnu,

[PATCH] Fix PR48147

2011-03-16 Thread Richard Guenther
-flto with using the linker-plugin has an implicit -fwhole-program effect which brings foo local and allows IPA-SRA to remove the constant parameter. The testcase does not want this and breaks even without -flto if you make foo static. Thus the following patch makes sure this doens't h

[PATCH] Fix PR48165

2011-03-17 Thread Richard Guenther
This fixes PR48165, we need to properly return sizetype quantities from compute_object_offset. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk and the branch. Richard. 2011-03-17 Richard Guenther PR middle-end/48165 * tree-object-size.c (compute_object_

[PATCH] Fix PR48148

2011-03-17 Thread Richard Guenther
This fixes PR48148, we shouldn't keep abstract origin references for external decls. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2011-03-17 Richard Guenther PR bootstrap/48148 * lto-cgraph.c (input_overwrite_node): Clear the abstract origin

[PATCH] Fix PR48134

2011-03-17 Thread Richard Guenther
This fixes PR48134, when propagating into debug-stmts we should fold them, like we do elsewhere. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2011-03-17 Richard Guenther PR middle-end/48134 * tree-ssa.c (insert_debug_temp_for_var_def): If w

[PATCH] Fix PR48210

2011-03-21 Thread Richard Guenther
Pretty obvious, require at least 1 partition. Richard. 2011-03-31 Richard Guenther PR lto/48210 * params.def (lto-partitions): Require at least 1 partition. Index: gcc/params.def === --- gcc/params.def (rev

[PATCH] Weaken PR47661

2011-03-21 Thread Richard Guenther
We force all maybe-trapping conditions into separate stmts, but this isn't necessary w/o -fno-call-exceptions. It also confuses our branch prediction. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. The bug remains for -fnon-call-exceptions. Richard. 2011-03-21 Richard

[PATCH] Fix PR48228

2011-03-22 Thread Richard Guenther
Boostrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2011-03-22 Richard Guenther PR tree-optimization/48228 * tree-vrp.c (vrp_visit_phi_node): Do not stop propagating for single-arg PHIs. * gcc.dg/Wstrict-overflow-23.c: New testcase.

[PATCH] Fix PR48269

2011-03-24 Thread Richard Guenther
This removes a double-accounting for MEM_REF offsets. The code still looks somewhat fishy, but at least is consistent in what it does now ;) Bootstrapped and tested on x86_64-unknonw-linux-gnu, applied to trunk. Richard. 2011-03-24 Richard Guenther PR middle-end/48269 * tre

[PATCH] Fix PR48270

2011-03-24 Thread Richard Guenther
Bootstrapped and tested on x86_64-unknonw-linux-gnu, applied. Richard. 2011-03-24 Richard Guenther PR tree-optimization/48270 * tree-ssa-phiopt.c (cond_if_else_store_replacement): Do not free datarefs before ddrs. Index: gcc/tree-ssa-phiopt.c

[PATCH] Fix PR48246

2011-03-31 Thread Richard Guenther
The LTO partitioning code asserts that at most the first partition is empty (which should probably be also the last one). It works fine when other partitions are empty so there is no reason to barf on users when they run into such partitioning cases. Thus, committed as obvious. Richard. 2011-0

[PATCH] cleanup gcse.c:canon_modify_mem_list

2011-04-03 Thread Nathan Froyd
The patch below converts gcse.c:canon_modify_mem_list to hold VECs instead of EXPR_LIST rtxes. I am ambivalent about the use of VECs in canon_modify_mem_list; they will waste some memory compared to the linked list scheme present before, though I'm not sure how much. It would depend o

[PATCH] Fix PR48431

2011-04-05 Thread Richard Guenther
Committed. Richard. 2011-04-05 Richard Guenther PR bootstrap/48431 * lto-plugin.c (claim_file_handler): Do not declare vars in code. Index: lto-plugin/lto-plugin.c === *** lto-plugin/lto-plugin.c (revision 1

[PATCH] Fix PR48467

2011-04-06 Thread Richard Guenther
This avoids unlinking the assembler output file at the end of WPA stage (we don't produce anything useful there) which eventually clobbers an assembler output from a previous stage. Instead simply don't open the file. That requires not performing debug init which we shouldn't need either here (m

[PATCH] Fix PR48437

2011-04-06 Thread Richard Guenther
This fixes PR48437, we shouldn't unify function-local externs as that confuses the DECL_CHAIN lists. It seems they can be identified by looking at TREE_STATIC and decl_function_context, if not we'll find out (maybe the hard way, with wrong-code because of unmerged decls). Eventually we should si

[PATCH] 4.4 backports

2011-04-07 Thread Jakub Jelinek
Hi! And here are 3 backported patches plus one testcase to 4.4 branch, committed after bootstrap/regtest on x86_64-linux and i686-linux. Jakub 2011-04-07 Jakub Jelinek PR tree-optimization/46491 Backported from mainline 2010-05-14 Jan Hubicka * ipa-p

[PATCH] Fix PR48513

2011-04-08 Thread Richard Guenther
I've re-generated tm.texi and verified make doc now works. Installed. Richard. 2011-04-08 Richard Guenther PR bootstrap/48513 * doc/tm.texi: Re-generate. Index: gcc/doc/tm.texi === --- gcc/doc/tm.texi (revi

[PATCH] Fix PR48590

2011-04-14 Thread Richard Guenther
We are currently not special casing alloca related builtins in the alias oracle while we can very easily do better, similar to how we handle malloc and free. The exception is BUILT_IN_STACK_RESTORE which is not tied to a particular allocation. Bootstrapped and tested on x86_64-unknown-linux-gnu,

[PATCH] doubled words

2011-04-15 Thread Jim Meyering
Signed-off-by: Jim Meyering --- While most of these are in comments, the corrections in gcc/tree-cfg.c and gcc/config/sh/constraints.md are in strings. The former at least is marked for translation, and hence appears in every .po file. gcc/config/alpha/vms-unwind.h |4 ++-- gcc/config/

[PATCH] Fix PR48290

2011-04-15 Thread Richard Guenther
This fixes the remaining part of PR48290, copyprop not properly propagating constant copies across PHI nodes. On the way this patch needs to fix some present issues with the code inhibiting various kinds of propagation (but not removing those two that look completely bogus). Bootstrapped and

[PATCH] Fix PR48286

2011-04-15 Thread Richard Guenther
This makes us avoid 323. Tested on x86_64-unknown-linux-gnu/-m32, committed. Richard. 2011-04-15 Richard Guenther PR testsuite/48286 * gfortran.dg/cray_pointers_8.f90: Use -ffloat-store. gcc/testsuite/gfortran.dg/cray_pointers_8.f90 Index: gcc/testsuite/gfortran.dg/cray_poi

[PATCH] Fix PR72772

2016-08-05 Thread Richard Biener
fixes already, so this is the final patch adjusting two testcases (for gcc.dg/tree-ssa/pr59597.c we no longer register the unwanted threadings as the forwarders no longer contain PHIs). This patch will cause +FAIL: gcc.dg/graphite/scop-dsyr2k.c scan-tree-dump-times graphite "number of SCoPs:

Go patch committed

2016-08-10 Thread Ian Lance Taylor
This patch to the Go frontend by Marek Polacek fixes one missing break statement and adds a couple of "fall through" comments to fix the Go frontend for -Wimplicit-fallthrough. Committed to mainline. Ian Index: gcc/go/gofron

[PATCH] Fix PR57326

2016-08-12 Thread Richard Biener
The following fixes a missed optimization in PRE which was over-cautionous with rejecting simplifications to SSA names during phi-translation. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2016-08-12 Richard Biener PR tree-optimization/57326 * tree-

[PATCH] Fix PR73434

2016-08-12 Thread Richard Biener
I am testing the following patch fixing a TBAA related miscompile. Bootstrap / regtest running on x86_64-unknown-linux-gnu. Richard. 2016-08-12 Richard Biener PR tree-optimization/73434 * tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Preserve TBAA info on

[PATCH] Fix PR76490

2016-08-15 Thread Richard Biener
The following fixes PR76490 which happens because how VRP expects +INF vs. +INF(OVF) to behave wrt comparisons. I fixed all operand_equal_p cases that matter. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2016-08-15 Richard Biener PR tree-optimization/7649

[PATCH] Fix PR23855

2016-08-15 Thread Richard Biener
-unswitch-2.c covers this case but had only two expected hoists). In the process of this I've removed the virtual SSA rewrite we were doing per guard hoisting. Bootstrap and regtest running on x86_64-unknown-linux-gnu (including the virtual SSA form verifier patch). I already built SPEC 2k6 for

[PATCH] Fix PR76783

2016-08-16 Thread Richard Biener
This patch fixes PR76783 by not just using any PRE order but RPO order for the SSA propagator. This makes sure to visit PHI args from non-backedges before the PHI node itself. It also fixes the assumption that BB_VISITED is well-defined on pass entry (but still keeps clearing it at the end

[PATCH] Fix PR77282

2016-08-18 Thread Richard Biener
The following fixes PR77282, tested on x86_64-unknown-linux-gnu, applied as obvious. Richard. 2016-08-18 Richard Biener PR tree-optimization/77282 * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): When doing auto-parallelizing also prevent use of PHIs that

[PATCH] Fix PR77286

2016-08-18 Thread Richard Biener
This fixes (ISTR we've been here before) slpeel_duplicate_current_defs_from_edges being dependent on PHI node ordering which can be disrupted by SSA update inserting virtual PHIs. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2016-08-19 Richard Biener PR tr

[PATCH] Fix PR77290

2016-08-19 Thread Richard Biener
This fixes PR77290 - my previous patch to PRE to limit insertion for flag_tree_parallelize_loops != 0 was confused because flag_tree_parallelize_loops is the number of threads to parallelize for (thus == 1 is the default and to not parallelize). Fixed as obvious. Richard. 2016-08-19 Richard

[PATCH] Fix PR77305

2016-08-22 Thread Richard Biener
The following robustifies statsistics accounting against current_pass being NULL. Bootstrap running on x86_64-unknown-linux-gnu. Richard. 2016-08-22 Richard Biener PR middle-end/77305 * statistics.c (statistics_counter_event): Robustify against NULL current_pass. In

[PATCH] remove whitespace

2016-08-22 Thread Aditya Kumar
--- libstdc++-v3/include/bits/shared_ptr_base.h | 26 +- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/libstdc++-v3/include/bits/shared_ptr_base.h b/libstdc++-v3/include/bits/shared_ptr_base.h index 787dc9b..60b825c 100644 --- a/libstdc++-v3/include/bits/

[PATCH] Remove whitespace

2016-08-22 Thread Aditya Kumar
--- libstdc++-v3/ChangeLog | 5 + libstdc++-v3/include/bits/algorithmfwd.h| 206 ++-- libstdc++-v3/include/bits/shared_ptr_base.h | 26 ++-- 3 files changed, 121 insertions(+), 116 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/

[PATCH] Fix PR69047

2016-08-26 Thread Richard Biener
The following fixes PR69047, update-address-taken can use the same trick as VN and re-write MEM[&d] into SSA when the size of the MEM and the size of d do not match by using a BIT_FIELD_REF. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. The patch contains a workar

[patch] Fix PR72715

2016-08-29 Thread Cesar Philippidis
It looks like the fortran FE has some preliminary support for do concurrent loops, however it was not well tested, nor is do concurrent supported by the OpenACC spec. This patch teaches the fortran FE to error when an acc loop directive is applied to a do concurrent loop. The reason why the

[PATCH] Fix PR77436

2016-09-01 Thread Richard Biener
The following fixes the wide-int conversion of tree_fold_binomial. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2016-09-01 Richard Biener PR middle-end/77436 * tree-chrec.c (tree_fold_binomial): Use widest_int, properly check whether the res

C++ patch ping

2016-09-05 Thread Jakub Jelinek
Hi! I'd like to ping 3 patches from a week ago: http://gcc.gnu.org/ml/gcc-patches/2016-08/msg01995.html - PR77375 - wrong-code with mutable members in base classes http://gcc.gnu.org/ml/gcc-patches/2016-08/msg01998.html - PR77338 - fix constexpr ICE on PARM_DECL with incomplete type http://

[PATCH] Delete GCJ

2016-09-05 Thread Andrew Haley
As discussed. I think I should ask a Global reviewer to approve this one. For obvious reasons I haven't included the diffs to the deleted gcc/java and libjava directories. The whole tree, post GCJ-deletion, is at svn+ssh://gcc.gnu.org/svn/gcc/branches/gcj/gcj-deletion-branch if anyone would like

[PATCH] Fix PR77450

2016-09-06 Thread Richard Biener
The following fixes PR77450. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2016-09-06 Richard Biener PR c/77450 c-family/ * c-common.c (c_common_mark_addressable_vec): Handle COMPOUND_LITERAL_EXPR. * c-c++-common/vec

[PATCH] Fix PR77479

2016-09-06 Thread Richard Biener
The following fixes PR77479. Boosttrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2016-09-06 Richard Biener PR tree-optimization/77479 * tree-vrp.c (update_value_range): Extend overflow handling to VARYING. * gcc.dg/torture/pr77479

[PATCH] Fix PR71132

2016-05-17 Thread Richard Biener
The following fixes a latent issue in loop distribution catched by the fake edge placement adjustment. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2016-05-17 Richard Biener PR tree-optimization/71132 * tree-loop-distribution.c (create_rdg_cd_edges)

[PATCH] Fix PR71168

2016-05-18 Thread Richard Biener
The following fixes an oversight with the last change. Tested on x86_64-unknown-linux-gnu, applied as obvious. Richard. 2016-05-18 Richard Biener PR tree-optimization/71168 * tree-loop-distribution.c (distribute_loop): Move *destroy_p initialization earlier.

[PATCH] Fix PR71185

2016-05-20 Thread Richard Biener
prefetching was prefetching for register operations like BIT_FIELD_REF . That's obviously just stupid. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2016-05-20 Richard Biener PR tree-optimization/71185 * tree-ssa-loop-prefetch.c (gather_memory_refer

[PATCH] Fix PR71230

2016-05-23 Thread Richard Biener
The following fixes PR71230 - a missed single_use call when re-interpreting * (-x) as * x * -1. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2016-05-23 Richard Biener PR tree-optimization/71230 * tree-ssa-reassoc.c (acceptable_pow_call): Move init

[PATCH] Introduce can_remove_lhs_p

2016-05-23 Thread Marek Polacek
As promised in , this is a simple clean-up which makes use of a new predicate. Richi suggested adding maybe_drop_lhs_from_noreturn_call which would be nicer, but I didn't know how to do that, given the handling if lhs is an SSA_NAME. Boots

[PATCH] Improve *avx_vperm_broadcast_*

2016-05-23 Thread Jakub Jelinek
Hi! The vbroadcastss and vpermilps insns are already in AVX512F & AVX512VL, so can be used with v instead of x, the splitter case where we for AVX emit vpermilps plus vpermf128 is more problematic, because the latter insn isn't available in EVEX. But, we can get the same effect with vshuff32x4 wh

[PATCH] Improve *ssse3_palignr_perm

2016-05-23 Thread Jakub Jelinek
Hi! This pattern is used to improve __builtin_shuffle in some cases; VPALIGNR is AVX512BW & AVX512VL. Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2016-05-23 Jakub Jelinek * config/i386/sse.md (*ssse3_palignr_perm): Add avx512bw alternative. Formattin

[PATCH] Improve vcvtps2ph

2016-05-23 Thread Jakub Jelinek
Hi! These insns are available in AVX512VL, so we can just use v instead of x. Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2016-05-23 Jakub Jelinek * config/i386/sse.md (*vcvtps2ph_store): Use v constraint instead of x constraint. (vcvtps2ph256

[PATCH] Improve avx_vec_concat

2016-05-23 Thread Jakub Jelinek
Hi! Not sure how to easily test these. In any case, for the vinsert* case, we don't have vinserti128 nor vinsertf128 in evex, so need to use vinsert[if]{64x4,32x4} or for DQ {64x2,32x8}. For the case with zero in the other half, we need AVX512VL and it isn't guaranteed for the output operand, bec

[PATCH] Fix PR71254

2016-05-24 Thread Richard Biener
The following testsuite regression on the gcc 5 branch exposes a latent issue on aarch64. Fixed by compiling the testcase only on the arch the fix was backported for. Tested w/ aarch64 cross and x86_64, committed to branch. Richard. 2016-05-24 Richard Biener PR testsuite/71254

[PATCH] Fix PR71253

2016-05-24 Thread Richard Biener
I am currently testing the following patch that makes the control dependences data structures survive edge redirection when the pass knows it doesn't alter control dependences. It basically replaces the edge list with a vector of BB indices (so even removing BBs and still querying the co

[PATCH] Fix PR71230

2016-05-24 Thread Richard Biener
The following fixes the ICEs in PR71230. Bootstrap and regtest running on x86_64-unknown-linux-gnu. Richard. 2016-05-24 Richard Biener PR tree-optimization/71240 * tree-ssa-math-opts.c (init_symbolic_number): Verify the source has integral type. * gcc.dg/opt

[PATCH] Fix PR71264

2016-05-25 Thread Richard Biener
Bootstrapped and tested on x86_64-unknmown-linux-gnu, applied. Richard. 2016-05-25 Richard Biener PR tree-optimization/71264 * tree-vect-stmts.c (vect_init_vector): Properly deal with vector type val. * gcc.dg/vect/pr71264.c: New testcase. Index: gcc/tree-ve

[PATCH] Improve *vec_concatv2si_sse4_1

2016-05-26 Thread Jakub Jelinek
Hi! This patch adds an avx512dq alternative (EVEX vpinsrd requires that) and enables EVEX vmovd and vpunpckldq. Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2016-05-26 Jakub Jelinek * config/i386/sse.md (*vec_concatv2si_sse4_1): Add avx512dq v=Yv,rm

<    5   6   7   8   9   10   11   12   13   14   >