Age | Commit message (Collapse) | Author | Files | Lines |
|
* tree-vrp.c (find_assert_locations): Skip also edges
from the entry block.
* tree-vect-loop-manip.c (slpeel_make_loop_iterate_ntimes): Call
free_stmt_vec_info on orig_cond after gsi_removing it.
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Always
free body_cost_vec vector.
(vect_analyze_data_refs): If gather is unsuccessful,
free_data_ref (dr).
* tree-inline.c (tree_function_versioning): Free
old_transforms_to_apply vector.
From-SVN: r190590
|
|
and add a bitmap obstack.
* tree-ssa-coalesce.c (struct ssa_conflicts_d): Make contents
of this a VEC and add a bitmap obstack.
(ssa_conflicts_new): Allocate the obstack and grow the VEC cleared
to the right size.
(ssa_conflicts_delete): Free the VEC and release the obstack.
(ssa_conflicts_test_p, ssa_conflicts_test_p, ssa_conflicts_add_one,
ssa_conflicts_merge, ssa_conflicts_dump): Update for above changes.
(truct live_track_d): Add another bitmap obstack here.
(new_live_track): Initialize it and use it for all bitmaps.
(delete_live_track): Don't free the bitmaps one at a time, just
release the obstack.
(create_outofssa_var_map): Fix to conform to GCC code style rules.
From-SVN: r190589
|
|
--enable-shared.
* Makefile.in (vis_hide, gen-hide-list): Do not make definitions
depend on --enable-shared.
($(lib1asmfuncs-o)): Use %.vis files independent of
--enable-shared.
* static-object.mk ($(base)$(objext), $(base).vis)
($(base)_s$(objext)): Use same rules for visibility handling as in
shared-object.mk.
From-SVN: r190588
|
|
2012-08-22 Tobias Burnus <burnus@net-b.de>
* trans-expr.c (gfc_copy_class_to_class,
gfc_trans_arrayfunc_assign): Free loop and ss data.
* trans-intrinsic.c (gfc_trans_arrayfunc_assign): Free ss data.
From-SVN: r190586
|
|
* config/m32c/constraints.md: New file.
* config/m32c/t-m32c (MD_FILES): Add constraints.
* config/m32c/m32c-protos.h (m32c_const_ok_for_constraint_p): Delete.
(m32c_extra_address_constraint, m32c_extra_memory_constraint): Delete.
(m32c_reg_class_from_constraint): Delete.
(m32c_extra_constraint_p, m32c_extra_constraint_p2): Delete.
(m32c_matches_constraint_p): Declare.
* config/m32c/m32c.h (CONSTRAINT_LEN): Delete.
(REG_CLASS_FROM_CONSTRAINT): Delete.
(CONST_OK_FOR_CONSTRAINT_P): Delete.
(CONST_DOUBLE_OK_FOR_CONSTRAINT_P): Delete.
(EXTRA_CONSTRAINT_STR): Delete.
(EXTRA_MEMORY_CONSTRAINT, EXTRA_ADDRESS_CONSTRAINT): Delete.
* config/m32c/m32c.c: Include tm-constrs.h
(m32c_reg_class_from_constraint): Delete.
(m32c_const_ok_for_constraint_p): Delete.
(m32c_extra_constraint_p2): Rename to...
(m32c_matches_constraint_p): ...this. Make it return bool. Tweak
formatting.
(m32c_extra_constraint_p): Delete.
(m32c_extra_address_constraint, m32c_extra_memory_constraint): Delete.
(m32c_split_move): Use satisfies_constraint_Ss.
* config/m32c/predicates.md (memsym_operand): Use
satisfies_constraint_Si.
(memimmed_operand): Use satisfies_constraint_Sp.
(m32c_psi_scale, m32c_1bit8_operand): Use satisfies_constraint_Ilb.
(m32c_1bit16_operand): Use satisfies_constraint_Ilw.
(m32c_1mask8_operand): Use satisfies_constraint_ImB.
(m32c_1mask16_operand): Use satisfies_constraint_Imw.
From-SVN: r190585
|
|
* config/mep/mep.h (REG_CLASS_FROM_CONSTRAINT): Delete.
(CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
(CONSTRAINT_LEN, EXTRA_CONSTRAINT): Delete.
* config/mep/mep.c (mep_reg_class_from_constraint): Delete.
(mep_const_ok_for_letter_p, mep_extra_constraint): Delete.
* config/mep/mep-protos.h (mep_reg_class_from_constraint): Delete.
(mep_const_ok_for_letter_p, mep_extra_constraint): Delete.
From-SVN: r190584
|
|
From-SVN: r190583
|
|
* config/sh/sh.md (cmpeqdi_t, cmpgtdi_t, cmpgedi_t, cmpgeudi_t,
cmpgtudi_t, *movsicc_t_false, *movsicc_t_true, divsi_inv20, negsi_cond,
truncdihi2, ic_invalidate_line_i, ic_invalidate_line_sh4a,
ic_invalidate_line_media, movdf_i4, calli_pcrel, call_valuei,
call_valuei_pcrel, sibcalli_pcrel, sibcall_compact,
sibcall_valuei_pcrel, sibcall_value_compact, casesi_worker_1,
casesi_worker_2, bandreg_m2a, borreg_m2a, bxorreg_m2a, sp_switch_1,
sp_switch_2, stack_protect_set_si, stack_protect_set_si_media,
stack_protect_set_di_media, stack_protect_test_si,
stack_protect_test_si_media, stack_protect_test_di_media): Convert to
multi-line asm output strings.
(divsi_inv_qitable, divsi_inv_hitable): Use single-alternative asm
output.
(*andsi3_bclr, rotldi3_mextr, rotrdi3_mextr, calli, call_valuei_tbr_rel,
movml_push_banked, movml_pop_banked, bclr_m2a, bclrmem_m2a, bset_m2a,
bsetmem_m2a, bst_m2a, bld_m2a, bldsign_m2a, bld_reg, *bld_regqi,
band_m2a, bor_m2a, bxor_m2a, mextr_rl, *mextr_lr, ): Use tab char
instead of '\\t'.
(iordi3): Use braced string.
(*movsi_pop): Use tab chars instead of spaces.
From-SVN: r190580
|
|
PR target/39423
* config/sh/sh.md (*movhi_index_disp): Add support for SH2A movu.w insn.
PR target/39423
* gcc.target/sh/pr39423-2.c: New.
From-SVN: r190579
|
|
PR middle-end/54332
* df-scan.c (df_bb_verify): Restore df_free_collection_rec call
inside the insn traversal loop.
* vec.h (vec_reserve): Remove the stack allocation check.
From-SVN: r190576
|
|
sure the gfc_code is freed.
2012-08-21 Tobias Burnus <burnus@net-b.de>
* parse.c (parse_contained): Include EXEC_END_PROCEDURE
in ns->code to make sure the gfc_code is freed.
From-SVN: r190575
|
|
non-split code stack.
* config/i386/morestack.S (__morestack_non_split): Increase amount
of space allocated for non-split code stack.
From-SVN: r190574
|
|
2012-08-21 Marc Glisse <marc.glisse@inria.fr>
gcc/
* fold-const.c (fold_ternary_loc): Detect identity permutations.
Canonicalize permutations more.
* tree-ssa-forwprop.c (is_combined_permutation_identity): New function.
(simplify_permutation): Likewise.
(ssa_forward_propagate_and_combine): Call it.
gcc/testsuite/
* gcc.dg/tree-ssa/forwprop-19.c: New testcase.
* gcc.dg/fold-perm.c: Likewise.
From-SVN: r190561
|
|
expansion cache.
2012-08-21 Richard Guenther <rguenther@suse.de>
* tree-ssa-loop-im.c (tree_ssa_lim_finalize): Properly free
the affine expansion cache.
* tree-ssa-dom.c (free_expr_hash_elt_contents): New function,
split out from ...
(free_expr_hash_elt): ... this one.
(record_cond): Properly free a not needed hashtable element.
(lookup_avail_expr): Likewise.
* tree-into-ssa.c (init_ssa_renamer): Specify a free function
for the var_infos hashtable.
(update_ssa): Likewise.
From-SVN: r190560
|
|
2012-08-21 Richard Guenther <rguenther@suse.de>
* alloc-pool.c (pool_alloc): Fix valgrind annotation.
* tree.h: Fix typo and complete flags documentation.
From-SVN: r190559
|
|
2012-08-21 Richard Guenther <rguenther@suse.de>
cp/
* cp-tree.h (TREE_INDIRECT_USING): Use TREE_LANG_FLAG_0 accessor.
(ATTR_IS_DEPENDENT): Likewise.
(ARGUMENT_PACK_INCOMPLETE_P): Use TREE_ADDRESSABLE instead of
TREE_LANG_FLAG_0 on TREE_VECs.
* tree.h (struct tree_base): Add union to make it possible to
re-use the upper 4 bytes for tree codes that do not need as
many flags as others. Move visited and default_def_flag to
common bits section in exchange for saturating_flag and
unsigned_flag. Add SSA name version and tree vec length
fields here.
(struct tree_vec): Remove length field here.
(struct tree_ssa_name): Remove version field here.
From-SVN: r190558
|
|
* MAINTAINERS (Write After Approval): Add myself.
(picochip port): Remove myself.
From-SVN: r190557
|
|
PR fortran/48636
* ipa-inline.c (want_inline_small_function_p): Take loop_iterations hint.
(edge_badness): Likewise.
* ipa-inline.h (inline_hints_vals): Add INLINE_HINT_loop_iterations.
(inline_summary): Add loop_iterations.
* ipa-inline-analysis.c: Include tree-scalar-evolution.h.
(dump_inline_hints): Dump loop_iterations.
(reset_inline_summary): Free loop_iterations.
(inline_node_duplication_hook): Update loop_iterations.
(dump_inline_summary): Dump loop_iterations.
(will_be_nonconstant_expr_predicate): New function.
(estimate_function_body_sizes): Analyze loops.
(estimate_node_size_and_time): Set hint loop_iterations.
(inline_merge_summary): Merge loop iterations.
(inline_read_section): Stream in loop_iterations.
(inline_write_summary): Stream out loop_iterations.
From-SVN: r190556
|
|
From-SVN: r190554
|
|
From-SVN: r190552
|
|
From-SVN: r190547
|
|
2012-08-20 Florian Weimer <fweimer@redhat.com>
PR c++/19351
* call.c (build_operator_new_call): Add size_check argument and
evaluate it.
* cp-tree.h (build_operator_new_call): Adjust declaration.
* init.c (build_new_1): Compute array size check and apply it.
2012-08-10 Florian Weimer <fweimer@redhat.com>
PR c++/19351
* g++.dg/init/new38.C: New test.
* g++.dg/init/new39.C: New test.
From-SVN: r190546
|
|
-ftree-vectorize and -fschedule-insns2)
PR target/50489
* config/sh/sh.md (rotcr, *rotcr, shar, shlr): New insns and splits.
(ashrdi3_k, lshrdi3_k): Rewrite as insn_and_split.
* config/sh/sh.c (sh_lshrsi_clobbers_t_reg_p): New function.
* config/sh/sh-protos.h (sh_lshrsi_clobbers_t_reg_p): Declare it.
PR target/50489
* gcc.target/sh/pr54089-1.c: New.
From-SVN: r190545
|
|
PR target/51244
* config/sh/sh.md (*cset_zero): New insns.
PR target/51244
* gcc.target/sh/pr51244-11.c: New.
From-SVN: r190544
|
|
* dwarf2out.h (enum dw_val_class): Add dw_val_class_high_pc.
* dwarf2out.c (dw_val_equal_p): Handle dw_val_class_high_pc.
(add_AT_low_high_pc): New function.
(AT_lbl): Handle dw_val_class_high_pc.
(print_die): Likewise.
(attr_checksum): Likewise.
(attr_checksum_ordered): Likewise.
(same_dw_val_p): Likewise.
(size_of_die): Likewise.
(value_format): Likewise.
(output_die): Likewise.
(gen_subprogram_die): Use add_AT_low_high_pc.
(add_high_low_attributes): Likewise.
(dwarf2out_finish): Likewise.
From-SVN: r190543
|
|
variable to a nonlocal pointer)
2012-08-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54301
* expr.c (gfc_check_pointer_assign): Warn when a pointer,
which is a function result, might outlive its target.
2012-08-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54301
* gfortran.dg/warn_target_lifetime_2.f90: New.
From-SVN: r190542
|
|
fwprop handling of debug insns)
PR rtl-optimization/54294
* fwprop.c (all_uses_available_at): Ignore debug insns in between
def_insn and target_insn when checking whether the shortcut is
possible.
From-SVN: r190541
|
|
From-SVN: r190540
|
|
/cp
2012-08-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/10416
* decl.c (poplevel): Check TYPE_HAS_NONTRIVIAL_DESTRUCTOR for
Wunused_variable too.
/testsuite
2012-08-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/10416
* g++.dg/warn/Wunused-var-17.C: New.
From-SVN: r190538
|
|
or misbehaving binaries)
gcc/
2012-08-20 Patrick Marlier <patrick.marlier@gmail.com>
PR middle-end/53992
* omp-low.c (lower_omp_1): Handle GIMPLE_TRANSACTION.
testsuite/
2012-08-20 Patrick Marlier <patrick.marlier@gmail.com>
PR middle-end/53992
* gcc.dg/gomp/pr53992.c: New test.
From-SVN: r190536
|
|
Found this while running -ftime-report on a largish C++ source file.
We need to start TV_NAME_LOOKUP conditionally inside poplevel()
because it may be called from another lookup routine that already has
TV_NAME_LOOKUP going.
Tested on x86_64. Committed to trunk.
2012-08-20 Diego Novillo <dnovillo@google.com>
* decl.c (poplevel): Start TV_NAME_LOOKUP conditionally.
From-SVN: r190535
|
|
wrong value extension)
PR tree-ssa/54295
* tree-ssa-math-opts.c (is_widening_mult_rhs_p): Delete rhs_code
declaration and setter.
From-SVN: r190534
|
|
wrong value extension)
PR tree-ssa/54295
* tree-ssa-math-opts.c (widening_mult_conversion_strippable_p):
New function.
(is_widening_mult_rhs_p): Use it.
* gcc.c-torture/execute/20120817-1.c: New test.
From-SVN: r190533
|
|
* configure.ac (ffs): Check for declaration.
* configure, config.in: Regenerate.
From-SVN: r190532
|
|
2012-08-20 Richard Guenther <rguenther@suse.de>
* tree-flow.h (register_new_name_mapping): Remove.
* tree-into-ssa.c (register_new_name_mapping): Likewise.
(add_new_name_mapping): Do not push/pop timevar here.
(create_new_def_for): Instead do it here. Initialize
update-ssa here, handle a NULL def.
* tree-vrp.c (build_assert_expr_for): Use create_new_def_for.
From-SVN: r190531
|
|
* gcc.target/arm/thumb-16bit-ops.c (f): This test uses a 16-bit
add instruction.
(f2): New test that really does need adds.
From-SVN: r190530
|
|
2012-08-20 Richard Guenther <rguenther@suse.de>
* name-lookup.c (store_binding_p): New predicate, split out from ...
(store_binding): ... here. Always store binding and require
target vector with enough space.
(store_bindings): Collect to store bindings and reserve space
for them, then store them.
(store_class_bindings): Likewise.
From-SVN: r190529
|
|
2012-08-20 Richard Guenther <rguenther@suse.de>
PR tree-optimization/54327
* gimple-fold.c (get_maxval_strlen): Do not walk use-def chains
if the use is registered for SSA update.
* gcc.dg/torture/pr54327.c: New testcase.
From-SVN: r190528
|
|
PR tree-optimization/54321
* tree-ssa-forwprop.c (simplify_builtin_call): Pass 0 instead of 1
as second argument to tree_low_cst call on val2.
* gcc.c-torture/compile/pr54321.c: New test.
From-SVN: r190526
|
|
2012-08-20 Richard Guenther <rguenther@suse.de>
* gimple.h (gimple_statement_base): Annotate with GTY chain_next.
From-SVN: r190525
|
|
2012-08-20 Richard Guenther <rguenther@suse.de>
PR bootstrap/54326
* genoutput.c (note_constraint): Properly use CONST_CAST.
From-SVN: r190524
|
|
variable to a nonlocal pointer)
2012-08-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54301
* expr.c (gfc_check_pointer_assign): Warn when the pointer
might outlive its target.
* gfortran.h (struct gfc_option_t): Add warn_target_lifetime.
* options.c (gfc_init_options, set_wall, gfc_handle_option):
handle it.
* invoke.texi (-Wtarget-lifetime): Document it.
(-Wall): Implied it.
* lang.opt (-Wtarget-lifetime): New flag.
2012-08-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54301
* gfortran.dg/warn_target_lifetime_1.f90: New.
From-SVN: r190522
|
|
From-SVN: r190521
|
|
From-SVN: r190518
|
|
inhibit_libc.
* crtstuff.c (USE_PT_GNU_EH_FRAME): Define for systems using glibc
even if inhibit_libc.
From-SVN: r190517
|
|
comparisons)
2012-08-19 Thomas König <tkoenig@gcc.gnu.org>
PR fortran/54298
* gfortran.h (struct gfc_option_t): Add warn_compare_reals.
* lang.opt: Add Wcompare-reals.
* invoke.texi: Document -Wcompare-reals.
* resolve.c (resolve_operator): If -Wcompare-reals is in effect,
warn about equality/inequality comparisions for REAL and COMPLEX.
* options.c (gfc_init_options): Set warn_compare_reals.
(set_Wall): Include warn_compare_reals in Wall.
(gfc_handle_option): Handle Wcompare_reals.
2012-08-19 Thomas König <tkoenig@gcc.gnu.org>
PR fortran/54298
* gfortran.dg/real_compare_1.f90: New test case.
* gfortran.dg/bessel_5.f90 Add -Wno-compare-reals to options.
From-SVN: r190516
|
|
of a regular access type for...
* layout.adb (Set_Elem_Alignment): Cap the alignment of access types
to that of a regular access type for non-strict-alignment platforms.
* gcc-interface/utils.c (finish_fat_pointer_type): Do not set the
alignment for non-strict-alignment platforms.
From-SVN: r190515
|
|
COMPONENT_REF built for a derived...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Use proper
dummy type for the temporary COMPONENT_REF built for a derived tagged
type with discriminant.
From-SVN: r190514
|
|
cp/
* Make-lang.in: Fix typo.
From-SVN: r190513
|
|
From-SVN: r190512
|