platform/upstream/linaro-gcc.git
11 years ago2012-09-12 Terry Guo <terry.guo@arm.com>
xguo [Thu, 13 Sep 2012 05:36:19 +0000 (05:36 +0000)]
2012-09-12  Terry Guo  <terry.guo@arm.com>

        * gcc.target/arm/combine-movs.c: Check movs for ARM mode
        and lsrs for Thumb2 mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191239 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoThis fixes PR gcov-profile/54487 where the gcda files were not locked
tejohnson [Thu, 13 Sep 2012 04:59:14 +0000 (04:59 +0000)]
This fixes PR gcov-profile/54487 where the gcda files were not locked
by the profile-use read, enabling writes by other instrumented compiles
to change the profile in the middle of the profile use read. The GCOV_LOCKED
macro was not set because it was guarded by HOST_HAS_F_SETLKW, which was
never set. The fix is to add a compile test in the configure to set it.

2012-09-12  Teresa Johnson  <tejohnson@google.com>

PR gcov-profile/54487
* configure.ac (HOST_HAS_F_SETLKW): Set based on compile
test using F_SETLKW with fcntl.
* configure, config.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191238 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Thu, 13 Sep 2012 00:17:42 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191237 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR fortran/48636
hubicka [Wed, 12 Sep 2012 21:51:14 +0000 (21:51 +0000)]
PR fortran/48636
* gcc.dg/ipa/inlinehint-2.c: New testcase.
* ipa-inline-analysis.c (dump_inline_hints): Dump loop stride.
(set_hint_predicate): New function.
(reset_inline_summary): Reset loop stride.
(remap_predicate_after_duplication): New function.
(remap_hint_predicate_after_duplication): New function.
(inline_node_duplication_hook): Update.
(dump_inline_summary): Dump stride summaries.
(estimate_function_body_sizes): Compute strides.
(remap_hint_predicate): New function.
(inline_merge_summary): Use it.
(inline_read_section): Read stride.
(inline_write_summary): Write stride.
* ipa-inline.c (want_inline_small_function_p): Handle strides.
(edge_badness): Likewise.
* ipa-inline.h (inline_hints_vals): Add stride hint.
(inline_summary): Update stride.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191232 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/i386.c (x86_prefetch_sse): Change to unsigned char.
uros [Wed, 12 Sep 2012 19:25:13 +0000 (19:25 +0000)]
* config/i386/i386.c (x86_prefetch_sse): Change to unsigned char.
* config/i386/i386.h (x86_prefetch_sse): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191231 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAllow negative offset for UNSPEC_DTPOFF/UNSPEC_NTPOFF
hjl [Wed, 12 Sep 2012 18:08:59 +0000 (18:08 +0000)]
Allow negative offset for UNSPEC_DTPOFF/UNSPEC_NTPOFF

gcc/

PR target/54445
* config/i386/predicates.md (x86_64_immediate_operand): Allow
negative offset for UNSPEC_DTPOFF/UNSPEC_NTPOFF.

gcc/testsuite/

PR target/54445
* gcc.target/i386/pr54445-1.c: New file.
* gcc.target/i386/pr54445-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191230 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * common.opt (flto-partition): Add "max".
hubicka [Wed, 12 Sep 2012 17:55:13 +0000 (17:55 +0000)]
* common.opt (flto-partition): Add "max".
* invoke.texi (flto-partition): Document "max"

* lto.c (do_whole_program_analysis): Care timevars, statistics and
AUX pointer cleaning. Add max partitioning.
* lto-partition.c (enum symbol_class): New.
(get_symbol_class): New function.
(symbol_partitioned_p): New function.
(add_references_to_partition): Remove.
(add_aliases_to_partition): Remove.
(add_cgraph_node_to_partition_1): Remove.
(add_cgraph_node_to_partition): Remove.
(add_symbol_to_partition): New function.
(add_symbol_to_partition_1): New function.
(contained_in_symbol): New function.
(partition_cgraph_node_p): Remove.
(partition_varpool_node_p): Remove.
(partition_symbol_p): Remove.
(lto_1_to_1_map): Cleanup.
(lto_max_map): New.
(lto_balanced_map): Update.
(lto_promote_cross_file_statics): Update.
* lto-partition.h (lto_max_map): Declare.
* timevar.def (TV_WHOPR_PARTITIONING): New timevar.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191229 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR lto/54312
hubicka [Wed, 12 Sep 2012 16:26:19 +0000 (16:26 +0000)]
PR lto/54312
* lto.c (uniquify_nodes): Remove quadratic loop checking if the
type is variant leader.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191228 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-09-12 Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com>
uros [Wed, 12 Sep 2012 15:23:01 +0000 (15:23 +0000)]
2012-09-12  Ganesh Gopalasubramanian  <Ganesh.Gopalasubramanian@amd.com>

* config/i386/i386.md : Comments on fma4 instruction
selection reflect requirement on register pressure based
cost model.

* config/i386/driver-i386.c (host_detect_local_cpu): fma4
flag is set-reset as informed by the cpuid flag.

* config/i386/i386.c (processor_alias_table): fma4
flag is enabled for bdver2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191226 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-09-12 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 12 Sep 2012 14:46:22 +0000 (14:46 +0000)]
2012-09-12  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/54489
* tree-ssa-pre.c: Include domwalk.h.
(in_fre): Remove.
(sccvn_valnum_from_value_id): New function.
(debug_bitmap_sets_for): Simplify.
(get_representative_for): Properly initialize the SCCVN valnum.
(create_expression_by_pieces): Likewise.
(insert_into_preds_of_block): Likewise.
(can_PRE_operation): Remove.
(make_values_for_phi): Simplify.
(compute_avail): Likewise.
(do_SCCVN_insertion): Remove.
(eliminate_avail, eliminate_push_avail, eliminate_insert):
New functions.
(eliminate): Split and perform a domwalk.
(eliminate_bb): Former eliminate part that is now dom-enter.
(eliminate_leave_block): New function.
(fini_eliminate): Likewise.
(init_pre): Simplify.
(fini_pre): Likewise.
(execute_pre): Fold into do_pre and do_fre.
(do_pre): Consume execute_pre.
(do_fre): Likewise.
* Makefile.in (tree-ssa-pre.o): Add domwalk.h dependency.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191225 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-09-12 Diego Novillo <dnovillo@google.com>
dnovillo [Wed, 12 Sep 2012 13:51:52 +0000 (13:51 +0000)]
2012-09-12  Diego Novillo  <dnovillo@google.com>

* vec.h: Remove compatibility notes for previous distinction
between vectors of objects and vectors of pointers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191223 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agofix date
chrbr [Wed, 12 Sep 2012 13:08:29 +0000 (13:08 +0000)]
fix date

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191220 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago* config/sh/newlib.h (NO_IMPLICIT_EXTERN_C): Define.
chrbr [Wed, 12 Sep 2012 13:05:25 +0000 (13:05 +0000)]
* config/sh/newlib.h (NO_IMPLICIT_EXTERN_C): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191219 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoClear hardware capabilities on libstdc++.so with Sun as
ro [Wed, 12 Sep 2012 12:38:15 +0000 (12:38 +0000)]
Clear hardware capabilities on libstdc++.so with Sun as

* acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Define.
* configure.ac: Call GLIBCXX_CHECK_ASSEMBLER_HWCAP.
* fragment.am (CONFIG_CXXFLAGS): Add $(HWCAP_FLAGS).
* configure: Regenerate.
* Makefile.in: Regenerate.
* doc/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* python/Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* src/c++11/Makefile.in: Regenerate.
* src/c++98/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191218 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix Solaris 9/x86 bootstrap
ro [Wed, 12 Sep 2012 12:34:21 +0000 (12:34 +0000)]
Fix Solaris 9/x86 bootstrap

* rtl.h (FFS, FLOAT, ABS, PC): Don't undef.
* system.h (FFS, FLOAT, ABS, PC): Undef.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191217 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-12 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 12 Sep 2012 10:33:47 +0000 (10:33 +0000)]
2012-09-12  Richard Guenther  <rguenther@suse.de>

PR middle-end/54553
* common.opt (finline): Mark with Optimization.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191215 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-12 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 12 Sep 2012 10:05:19 +0000 (10:05 +0000)]
2012-09-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54225
        PR fortran/53306
        * array.c (match_subscript, gfc_match_array_ref): Fix
        diagnostic of coarray's '*'.

2012-09-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54225
        PR fortran/53306
        * gfortran.dg/coarray_10.f90: Update dg-error.
        * gfortran.dg/coarray_28.f90: New.
        * gfortran.dg/array_section_3.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191213 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config.gcc: Obsolete picochip-*.
jakub [Wed, 12 Sep 2012 09:01:02 +0000 (09:01 +0000)]
* config.gcc: Obsolete picochip-*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191210 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/mmix/mmix.h (MMIX_REG_OK_STRICT): Delete.
hp [Wed, 12 Sep 2012 01:52:36 +0000 (01:52 +0000)]
* config/mmix/mmix.h (MMIX_REG_OK_STRICT): Delete.
(REG_CLASS_FROM_LETTER, CONST_OK_FOR_LETTER_P): Delete.
(CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_CONSTRAINT): Delete.
* config/mmix/mmix-protos.h (mmix_intval): Declare.
(mmix_const_ok_for_letter_p, mmix_extra_constraint): Delete.
(mmix_const_double_ok_for_letter_p): Delete.
* config/mmix/constraints.md: New file.
* config/mmix/mmix.md: Include it.
(iordi3): Fix typo; use "I" instead of undefined "H" constraint.
("*call_real"): Update comment about not using the "p" constraint.
* config/mmix/predicates.md (mmix_reg_or_8bit_operand): Use
satisfies_constraint_I.
(mmix_address_operand): New predicate.
(mmix_symbolic_or_address_operand): Use it instead of address_operand.
* config/mmix/mmix.c: #include tm-constrs.h.
(mmix_intval): Delete declaration.  Make non-static.
(mmix_const_ok_for_letter_p, mmix_extra_constraint): Delete.
(mmix_const_double_ok_for_letter_p): Delete.
(mmix_legitimate_address_p): Use satisfies_constraint_I.
(mmix_print_operand_address): Likewise.
(mmix_emit_sp_add): Adjust to use insn_const_int_ok_for_constraint
when matching "L" constraint.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191208 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Wed, 12 Sep 2012 00:18:16 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191206 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree.h (expand_case): Move prototype ...
steven [Tue, 11 Sep 2012 22:39:34 +0000 (22:39 +0000)]
* tree.h (expand_case): Move prototype ...
* expr.h (expand_case): ...here.
(expand_sjlj_dispatch_table): New prototype.
* stmt.c: Include pointer-set.h instead of bitmap.h.
(expand_case): Use a pointer set instead of a bitmap for
already-seen labels.  Fold label values here.
(add_case_node): Don't fold label values here.
(expand_sjlj_dispatch_table): New function.
* except.c (sjlj_emit_dispatch_table): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191203 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd missing entry for r191165
ebotcazou [Tue, 11 Sep 2012 20:12:12 +0000 (20:12 +0000)]
Add missing entry for r191165

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191201 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Christophe Lyon <christophe.lyon@linaro.org>
clyon [Tue, 11 Sep 2012 19:52:18 +0000 (19:52 +0000)]
2012-09-11  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/testsuite/
* gcc.target/arm/neon-vset_lanes8.c, gcc.target/arm/pr51835.c,
gcc.target/arm/pr48252.c: Fix for big-endian support.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191200 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Marc Glisse <marc.glisse@inria.fr>
glisse [Tue, 11 Sep 2012 16:51:15 +0000 (16:51 +0000)]
2012-09-11  Marc Glisse  <marc.glisse@inria.fr>

gcc/
        * tree-ssa-forwprop.c (simplify_vector_constructor): New function.
        (ssa_forward_propagate_and_combine): Call it.

gcc/testsuite/
        * gcc.dg/tree-ssa/forwprop-22.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191198 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Diego Novillo <dnovillo@google.com>
dnovillo [Tue, 11 Sep 2012 16:17:50 +0000 (16:17 +0000)]
2012-09-11  Diego Novillo  <dnovillo@google.com>

* var-tracking.c (vt_add_function_parameter): Adjust for VEC
changes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191197 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Dominique Dhumieres <dominiq@lps.ens.fr>
dnovillo [Tue, 11 Sep 2012 15:33:51 +0000 (15:33 +0000)]
2012-09-11  Dominique Dhumieres  <dominiq@lps.ens.fr>

* config/darwin.c (darwin_asm_named_section): Adjust for
VEC changes.
(darwin_asm_dwarf_section): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191192 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/54172
jakub [Tue, 11 Sep 2012 15:22:54 +0000 (15:22 +0000)]
PR libstdc++/54172
* libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last
argument of the first __atomic_compare_exchange_n.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191190 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 11 Sep 2012 14:35:08 +0000 (14:35 +0000)]
2012-09-11  Martin Jambor  <mjambor@suse.cz>

* dwarf2out.c (dwarf2out_abstract_function): Do not change cfun.
(premark_used_types): New parameter fun, use it instead of cfun.
(gen_subprogram_die): Use DECL_STRUCT_FUNCTION (decl) instead of cfun,
also pass it to premark_used_types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191186 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 11 Sep 2012 13:39:11 +0000 (13:39 +0000)]
2012-09-11  Richard Guenther  <rguenther@suse.de>

* lto.c (enum gtc_mode): Remove.
(struct type_pair_d): Adjust.
(lookup_type_pair): Likewise.
(gimple_type_leader): Do not mark as deletable.
(gimple_lookup_type_leader): Adjust.
(gtc_visit): Likewise.
(gimple_types_compatible_p_1): Likewise.
(gimple_types_compatible_p): Likewise.
(gimple_type_hash): Likewise.
(gimple_register_type): Likewise.
(read_cgraph_and_symbols): Manage lifetime of tables
here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191184 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix typo in documentation from last commit.
ramana [Tue, 11 Sep 2012 13:34:35 +0000 (13:34 +0000)]
Fix typo in documentation from last commit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191182 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 11 Sep 2012 13:15:24 +0000 (13:15 +0000)]
2012-09-11  Tobias Burnus  <burnus@net-b.de>

        * doc/sourcebuild.texi (arm_neon_v2_ok): Fix @anchor.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191181 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd support for vectorized fma.
ramana [Tue, 11 Sep 2012 12:53:00 +0000 (12:53 +0000)]
Add support for vectorized fma.

2012-09-11  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>

* config/arm/neon.md (fma<VCVTF:mode>4): New pattern.
(*fmsub<VCVTF:mode>4): Likewise.
* doc/sourcebuild.texi (arm_neon_v2_ok, arm_neon_v2_hw):  Document it.

2012-09-11  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>

* gcc.target/arm/neon-vfma-1.c: New testcase.
* gcc.target/arm/neon-vfms-1.c: Likewise.
* gcc.target/arm/neon-vmla-1.c: Update test to use int instead
of float.
* gcc.target/arm/neon-vmls-1.c: Likewise.
* lib/target-supports.exp (add_options_for_arm_neonv2): New
function.
(check_effective_target_arm_neonv2_ok_nocache): Likewise.
(check_effective_target_arm_neonv2_ok): Likewise.
(check_effective_target_arm_neonv2_hw): Likewise.
(check_effective_target_arm_neonv2): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191180 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR middle-end/54149
aldyh [Tue, 11 Sep 2012 12:28:02 +0000 (12:28 +0000)]
    PR middle-end/54149
        * tree-ssa-loop-im.c (execute_sm_if_changed_flag_set): Only set
        flag for writes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191179 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Tue, 11 Sep 2012 12:23:25 +0000 (12:23 +0000)]
2012-09-11  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR tree-optimization/55492
* doc/invoke.texi (max-slsr-cand-scan): New description.
* gimple-ssa-strength-reduction.c (find_basis_for_candidate): Limit
the time spent searching for a basis.
* params.def (PARAM_MAX_SLSR_CANDIDATE_SCAN): New param.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191178 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 11 Sep 2012 11:39:27 +0000 (11:39 +0000)]
2012-09-11  Richard Guenther  <rguenther@suse.de>

* gimple.h (gimple_register_type): Remove.
(print_gimple_types_stats): Adjust prototype.
* lto-streamer.h (print_lto_report): Likewise.
* lto-streamer.c (print_lto_report): Adjust.
* gimple.c (gimple_types, type_hash_cache, enum gtc_mode,
struct type_pair_d, lookup_type_pair, struct sccs,
next_dfs_num, gtc_next_dfs_num, struct gimple_type_leader_entry_s,
gimple_type_leader, gimple_lookup_type_leader, compare_type_names_p,
gtc_visit, gimple_types_compatible_p_1, gimple_types_compatible_p,
visit, iterative_hash_name, struct type_hash_pair,
type_hash_pair_compare, iterative_hash_gimple_type, gimple_type_hash,
gimple_type_eq, gimple_register_type_1, gimple_register_type):
Move to lto/lto.c.
(print_gimple_types_stats): Adjust.
(free_gimple_type_tables): Likewise.

lto/
* lto.c (gimple_types, type_hash_cache, enum gtc_mode,
struct type_pair_d, lookup_type_pair, struct sccs,
next_dfs_num, gtc_next_dfs_num, struct gimple_type_leader_entry_s,
gimple_type_leader, gimple_lookup_type_leader, compare_type_names_p,
gtc_visit, gimple_types_compatible_p_1, gimple_types_compatible_p,
visit, iterative_hash_name, struct type_hash_pair,
type_hash_pair_compare, iterative_hash_gimple_type, gimple_type_hash,
gimple_type_eq, gimple_register_type_1, gimple_register_type):
Move here from gimple.c
(read_cgraph_and_symbols): Free hash tables here.
(print_lto_report_1): New function wrapping print_lto_report.
(do_whole_program_analysis): Call it.
(lto_main): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191177 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 11 Sep 2012 09:35:18 +0000 (09:35 +0000)]
2012-09-11  Richard Guenther  <rguenther@suse.de>

* graphite-scop-detection.c (move_sd_regions): Adjust for VEC
changes.
(scopdet_basic_block_info): Likewise.
(build_scops_1): Likewise.
(limit_scops): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191175 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-11 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 11 Sep 2012 08:32:29 +0000 (08:32 +0000)]
2012-09-11  Richard Guenther  <rguenther@suse.de>

PR middle-end/54515
* gimple.c (get_base_address): Do not return NULL_TREE apart
from for WITH_SIZE_EXPR.
* gimple-fold.c (canonicalize_constructor_val): Do not call
get_base_address when not necessary.

* g++.dg/tree-ssa/pr54515.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191174 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-10 Andrew Pinski <apinski@cavium.com>
pinskia [Tue, 11 Sep 2012 04:21:30 +0000 (04:21 +0000)]
2012-09-10  Andrew Pinski  <apinski@cavium.com>

PR tree-opt/54362
* trans-mem.c (thread_private_new_memory): Handle COND_EXPR also.

2012-09-10  Andrew Pinski  <apinski@cavium.com>

PR tree-opt/c54362
* gcc.dg/tm/memopt-16.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191173 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-10 Andrew Pinski <apinski@cavium.com>
pinskia [Tue, 11 Sep 2012 04:21:00 +0000 (04:21 +0000)]
2012-09-10  Andrew Pinski  <apinski@cavium.com>

PR tree-opt/54362
* trans-mem.c (thread_private_new_memory): Handle COND_EXPR also.

2012-09-10  Andrew Pinski  <apinski@cavium.com>

PR tree-opt/c54362
* gcc.dg/tm/memopt-16.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191172 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/m68k/m68k.c (m68k_sched_dfa_post_advance_cycle): Support
mkuvyrkov [Tue, 11 Sep 2012 01:32:45 +0000 (01:32 +0000)]
* config/m68k/m68k.c (m68k_sched_dfa_post_advance_cycle): Support
starting scheduling from a pre-existing state.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191171 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago/cp
paolo [Tue, 11 Sep 2012 01:05:12 +0000 (01:05 +0000)]
/cp
2012-09-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54541
PR c++/54542
* call.c (build_cxx_call): Add tsubst_flags_t parameter, use
require_complete_type_sfinae.
(build_op_delete_call, build_over_call): Adjust.
* typeck.c (build_x_compound_expr_from_vec): Add tsubst_flags_t
parameter.
(cp_build_function_call_vec): Adjust.
* init.c (build_new_1): Likewise.
* rtti.c (throw_bad_cast, throw_bad_typeid, build_dynamic_cast_1):
Likewise.
* optimize.c (build_delete_destructor_body): Likewise.
* cp-tree.h: Adjust declarations.

* call.c (convert_arg_to_ellipsis): Use require_complete_type_sfinae.

/testsuite
2012-09-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54541
PR c++/54542
* g++.dg/cpp0x/sfinae40.C: New.
* g++.dg/cpp0x/sfinae41.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191170 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Tue, 11 Sep 2012 00:18:25 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191169 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.
dnovillo [Tue, 11 Sep 2012 00:04:25 +0000 (00:04 +0000)]
    * testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191166 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRemove unnecessary VEC function overloads.
dnovillo [Tue, 11 Sep 2012 00:04:13 +0000 (00:04 +0000)]
Remove unnecessary VEC function overloads.

Several VEC member functions that accept an element 'T' used to have
two overloads: one taking 'T', the second taking 'T *'.

This used to be needed because of the interface dichotomy between
vectors of objects and vectors of pointers.  In the past, vectors of
pointers would use pass-by-value semantics, but vectors of objects
would use pass-by-reference semantics.  This is no longer necessary,
but the distinction had remained.

The main side-effect of this change is some code reduction in code
that manipulates vectors of objects.  For instance,

-  struct iterator_use *iuse;
-
-  iuse = VEC_safe_push (iterator_use, heap, iterator_uses, NULL);
-  iuse->iterator = iterator;
-  iuse->ptr = ptr;
+  struct iterator_use iuse = {iterator, ptr};
+  VEC_safe_push (iterator_use, heap, iterator_uses, iuse);

Compile time performance was not affected.

Tested on x86_64 and ppc64.

Also built all-gcc on all targets using VEC routines: arm, bfin, c6x,
epiphany, ia64, mips, sh, spu, and vms.

2012-09-10  Diego Novillo  <dnovillo@google.com>

* vec.h (vec_t::quick_push): Remove overload that accepts 'T *'.
Update all users.
(vec_t::safe_push): Likewise.
(vec_t::quick_insert): Likewise.
(vec_t::lower_bound): Likewise.
(vec_t::safe_insert): Likewise.
(vec_t::replace): Change second argument to 'T &'.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191165 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/54538
jason [Mon, 10 Sep 2012 23:51:34 +0000 (23:51 +0000)]
PR c++/54538
PR c++/53783
* pt.c (tsubst_copy_and_build) [LAMBDA_EXPR]: Go back to using RECUR
for LAMBDA_EXPR_EXTRA_SCOPE except for function scope.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191164 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/rs6000/rs6000.md: Move a splitter next to its insn.
macro [Mon, 10 Sep 2012 21:09:03 +0000 (21:09 +0000)]
* config/rs6000/rs6000.md: Move a splitter next to its insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191162 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/54089
olegendo [Mon, 10 Sep 2012 20:35:25 +0000 (20:35 +0000)]
PR target/54089
* config/sh/sh.h (SH_DYNAMIC_SHIFT_COST): Set always to 1 if
dynamic shifts are available.
(SHIFT_COUNT_TRUNCATED): Always define to 0.  Correct comment.
* config/sh/sh.c (ashl_lshr_seq, ext_ashl_lshr_seq): Add comments.
* config/sh/predicates.md (shift_count_operand): Allow
arith_reg_operand even if TARGET_DYNSHIFT is false.
* config/sh/sh.md (ashlsi3, lshrsi3): Expand library call patterns
if needed.
(ashlsi3_d_call, lshrsi3_d_call): New insns.

PR target/54089
* config/sh/lib1funcs.S (ashlsi3): Reimplement as ashlsi3_r0.
(lshrsi3): Reimplement as lshrsi3_r0.

PR target/54089
* gcc.target/sh/pr54089-3.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191161 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR target/46191
schwab [Mon, 10 Sep 2012 20:14:47 +0000 (20:14 +0000)]
PR target/46191
* config/t-slibgcc-libgcc (SHLIB_MAKE_SOLINK): Use -lgcc instead
of libgcc.a.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191160 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Mon, 10 Sep 2012 19:40:43 +0000 (19:40 +0000)]
gcc/
* ira.c (setup_pressure_classes): Handle synonymous classes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191159 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-10 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 10 Sep 2012 18:48:34 +0000 (18:48 +0000)]
2012-09-10  Marc Glisse  <marc.glisse@inria.fr>

gcc/
        * tree-ssa-forwprop.c (simplify_bitfield_ref): New function.
        (ssa_forward_propagate_and_combine): Call it.

gcc/testsuite/
        * gcc.dg/tree-ssa/forwprop-21.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191158 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-10 Steve Ellcey <sellcey@mips.com>
sje [Mon, 10 Sep 2012 17:28:20 +0000 (17:28 +0000)]
2012-09-10  Steve Ellcey  <sellcey@mips.com>

* config.gcc: Add mips*-mti-linux* target
Handle with_synci like other options.
* config/mips/gnu-user64.h (LINUX64_DRIVER_SELF_SPECS): New.
(DRIVER_SELF_SPECS): Define in terms of LINUX64_DRIVER_SELF_SPECS.
* config/mips/mips.h (MIPS_ISA_SYNCI_SPEC): New.
* config/mips/mti-linux.h: New file.
* config/mips/t-mti-linux: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191155 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.dg/tm/reg-promotion.c: Modify dump message check.
aldyh [Mon, 10 Sep 2012 17:21:26 +0000 (17:21 +0000)]
* gcc.dg/tm/reg-promotion.c: Modify dump message check.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191154 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agotestsuite/
aldyh [Mon, 10 Sep 2012 17:21:17 +0000 (17:21 +0000)]
testsuite/
        * gcc.dg/pr52558-2.c: Delete.
        * gcc.dg/simulate-thread/speculative-store-3.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191153 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-10 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 10 Sep 2012 16:23:02 +0000 (16:23 +0000)]
2012-09-10  Marc Glisse  <marc.glisse@inria.fr>

gcc/
        * tree-ssa-forwprop.c (simplify_permutation): Handle CONSTRUCTOR.

gcc/testsuite/
        * gcc.dg/tree-ssa/forwprop-20.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191151 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-10 Martin Jambor <mjambor@suse.cz>
jamborm [Mon, 10 Sep 2012 15:58:57 +0000 (15:58 +0000)]
2012-09-10  Martin Jambor  <mjambor@suse.cz>

* params.def (PARAM_IPA_MAX_AGG_ITEMS): New parameter.
* ipa-prop.c: Include params.h.
(IPA_MAX_AFF_JF_ITEMS): Removed.
(determine_known_aggregate_parts): Use param value of
PARAM_IPA_MAX_AGG_ITEMS instead of IPA_MAX_AFF_JF_ITEMS.
* Makefile.in (ipa-prop.o): Add PARAMS_H dependency.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191150 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-10 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 10 Sep 2012 14:10:09 +0000 (14:10 +0000)]
2012-09-10  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/54520
* tree-ssa-threadupdate.c (def_split_header_continue_p):
Properly consider sub-loops.

* gcc.dg/torture/pr54520.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191141 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/54506
jason [Mon, 10 Sep 2012 14:08:32 +0000 (14:08 +0000)]
PR c++/54506
* decl.c (move_signature_fn_p): Split out from move_fn_p.
* method.c (process_subob_fn): Use it.
* cp-tree.h: Declare it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191140 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * semantics.c (sort_constexpr_mem_initializers): Tweak.
jason [Mon, 10 Sep 2012 14:08:24 +0000 (14:08 +0000)]
* semantics.c (sort_constexpr_mem_initializers): Tweak.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191139 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago* config/alpha/predicates.md (small_symbolic_operand): Disallow large offsets.
rth [Mon, 10 Sep 2012 13:08:18 +0000 (13:08 +0000)]
* config/alpha/predicates.md (small_symbolic_operand): Disallow large offsets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191138 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/54536
gjl [Mon, 10 Sep 2012 10:43:20 +0000 (10:43 +0000)]
PR target/54536
* config/avr/avr-mcus.def (at90usb1287): Set LIBRARY_NAME to "usb1287".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191132 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * lto-cgraph.c (compute_ltrans_boundary): Do not care about aliases.
hubicka [Mon, 10 Sep 2012 08:32:36 +0000 (08:32 +0000)]
* lto-cgraph.c (compute_ltrans_boundary): Do not care about aliases.
* lto-partition.c (partition_symbol_p): Forward declare.
(add_references_to_partition): Reimplement using partition_symbol_p.
(add_aliases_to_partition): Break out from add_references_to_partition;
reimplement using partition_symbol_p.
(add_cgraph_node_to_partition_1): Handle callees using partition_symbol_p;
add sanity checks.
(add_varpool_node_to_partition): Use add_aliases_to_partition.
(partition_varpool_node_p): Do not special case aliases.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191129 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Mon, 10 Sep 2012 00:17:31 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191124 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-10 Sebastian Huber <sebastian.huber@embedded-brains.de>
redi [Sun, 9 Sep 2012 23:08:48 +0000 (23:08 +0000)]
2012-09-10  Sebastian Huber  <sebastian.huber@embedded-brains.de>
    Jonathan Wakely  <jwakely.gcc@gmail.com>

PR libstdc++/43852
* acinclude.m4 (GLIBCXX_ENABLE_VERBOSE): Define.
* configure.ac (GLIBCXX_ENABLE_VERBOSE): Use it.
* config.h.in: Regenerate.
* configure: Likewise.
* libsupc++/eh_term_handler.cc (_GLIBCXX_VERBOSE): Check new macro.
* libsupc++/pure.cc (_GLIBCXX_VERBOSE): Likewise.
* doc/xml/manual/configure.xml (--disable-libstdcxx-verbose): Document.
* doc/html/manual/configure.html: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191121 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/openbsd-stdint.h (INTMAX_TYPE, UINTMAX_TYPE): Define.
gerald [Sun, 9 Sep 2012 21:56:40 +0000 (21:56 +0000)]
* config/openbsd-stdint.h (INTMAX_TYPE, UINTMAX_TYPE): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191120 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR bootstrap/54419
redi [Sun, 9 Sep 2012 19:46:41 +0000 (19:46 +0000)]
PR bootstrap/54419
* acinclude.m4 (GLIBCXX_CHECK_X86_RDRAND): Remove stray character.
* configure: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191119 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix ChangeLog date.
redi [Sun, 9 Sep 2012 18:02:25 +0000 (18:02 +0000)]
Fix ChangeLog date.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191115 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/54388
redi [Sun, 9 Sep 2012 17:56:51 +0000 (17:56 +0000)]
PR libstdc++/54388
* include/std/array (array::at() const): Ensure lvalue result.
* testsuite/23_containers/array/element_access/54388.cc: New.
* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
dg-error line numbers.
* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191114 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * passes.c (ipa_write_summaries_1): Set state;
hubicka [Sun, 9 Sep 2012 17:29:21 +0000 (17:29 +0000)]
* passes.c (ipa_write_summaries_1): Set state;
do not call compute_ltrans_boundary.
(ipa_write_optimization_summaries): Likewise.
(ipa_write_summaries): compute_ltrans_boundary here.
* lto-streamer.h (lto_symtab_encoder_d): NODES are allocated in heap.
(compute_ltrans_boundary): Update prototype.

* lto.c (lto_wpa_write_files): Do not delete partition encoder;
it is deleted after streaming.
* lto-partition.c (partition_symbol_p): New function.
(promote_var, promote_fn): Remove.
(promote_symbol): New function.
(lto_promote_cross_file_statics): First compute boundaries; rewrite
to lookup the actual boundaries instead of computing them ad-hoc.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191113 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-09 Ulrich Drepper <drepper@gmail.com>
redi [Sun, 9 Sep 2012 17:20:42 +0000 (17:20 +0000)]
2012-09-09  Ulrich Drepper  <drepper@gmail.com>
    Dominique d'Humieres  <dominiq@lps.ens.fr>
    Jack Howarth  <howarth@bromo.med.uc.edu>

PR bootstrap/54419
* acinclude.m4: Define GLIBCXX_CHECK_X86_RDRAND.
* configure.ac: Use GLIBCXX_CHECK_X86_RDRAND to test for rdrand
support in assembler.
* src/c++11/random.cc (__x86_rdrand): Depend on _GLIBCXX_X86_RDRAND.
(random_device::_M_init): Likewise.
(random_device::_M_getval): Likewise.
* configure: Regenerated.
* config.h.in: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191111 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
drepper [Sun, 9 Sep 2012 14:22:10 +0000 (14:22 +0000)]
gcc/
        * config/i386/cpuid.h: Define signature_*_e[bcd]x macros for
        matching results of level 0 calls to __cpuid to processor
        manufacturers.
        * config/i386/driver-i386.c (vendor_signatures): Removed.
        (processor_signatures): Removed.
        (host_detect_local_cpu): Replace uses of now-removed SIG_*
        constants with the new signature_*_ebx constants.

libstdc++-v3/
        * src/c++11/random.cc (random_device::_M_init): Use new macro
        signature_INTEL_ebx to check for Intel processors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191109 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago Replace cgraph_node_set and varpool_node_set by symtab_node_encoder
hubicka [Sun, 9 Sep 2012 12:31:32 +0000 (12:31 +0000)]
Replace cgraph_node_set and varpool_node_set by symtab_node_encoder
in partitioning.
* tree-pass.h (cgraph_node_set_def, varpool_node_set_def): Remove
forward declaration.
(lto_symtab_encoder_d): Forward declare.
(ipa_write_optimization_summaries): Update.
* lto-cgraph.c (lto_symtab_encoder_new): Do not initialize
body, initializer and in_partition.
(lto_symtab_encoder_delete): Update.
(lto_symtab_encoder_encode): Update.
(lto_symtab_encoder_lookup): Move inline.
(lto_symtab_encoder_delete_node): New function.
(lto_symtab_encoder_encode_body_p, lto_set_symtab_encoder_encode_body,
lto_symtab_encoder_encode_initializer_p,
lto_set_symtab_encoder_encode_initializer, lto_symtab_encoder_in_partition_p,
lto_symtab_encoder_in_partition_p): Update.
(compute_ltrans_boundary): Take encoder as an input.
* passes.c (ipa_write_summaries_1): Update.
(ipa_write_summaries_1): Update.
(ipa_write_summaries): Update.
(ipa_write_optimization_summaries): Update.
* lto-streamer.c (print_lto_report): Report number of cgraph nodes.
* lto-streamer.h (lto_stats_d): Replace num_output_cgraph_nodes by
num_output_symtab_nodes.
(lto_encoder_entry): New structure.
(struct lto_symtab_encoder_d): Reorg.
(lto_symtab_encoder_delete_node): Declare.
(lto_symtab_encoder_lookup): Bring inline.
(compute_ltrans_boundary): Update.
(lto_symtab_encoder_size): Update.
(lsei_node, lsei_cgraph_node, lsei_varpool_node): Update.
(lto_symtab_encoder_deref): Update.

Replace cgraph_node_set and varpool_node_set by symtab_node_encoder
in partitioning.
* lto-partition.h (ltrans_partition_def): Replace cgraph_set and varpool_set
by encoder.
* lto-partition.c (new_partition): Update.
* lto.c (cmp_partitions_order): Update.
(lto_wpa_write_files): Update.
(free_ltrans_partitions): Update.
(add_references_to_partition): Update.
(add_cgraph_node_to_partition_1): Update.
(add_cgraph_node_to_partition): Update.
(add_varpool_node_to_partition): Update.
(undo_partition): Update.
(lto_balanced_map): Update.
(set_referenced_from_other_partition_p, set_reachable_from_other_partition_p,
set_referenced_from_this_partition_p): Update.
(lto_promote_cross_file_statics): Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191107 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * decl.c (reshape_init_class): Avoid dereferencing a
gerald [Sun, 9 Sep 2012 10:06:13 +0000 (10:06 +0000)]
* decl.c (reshape_init_class): Avoid dereferencing a
past-the-end pointer.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191106 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Sun, 9 Sep 2012 00:18:33 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191105 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/pa/pa.c (hppa_rtx_costs): Update costs for large integer modes.
danglin [Sat, 8 Sep 2012 22:35:54 +0000 (22:35 +0000)]
* config/pa/pa.c (hppa_rtx_costs): Update costs for large integer modes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191102 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix broken patch
ak [Sat, 8 Sep 2012 19:08:37 +0000 (19:08 +0000)]
Fix broken patch

2012-09-08  Andi Kleen  <ak@linux.intel.com>

        * gcc/lto/lto.c (do_whole_program_analysis):
        Fix last broken patch

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191097 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd -fmem-report-wpa
ak [Sat, 8 Sep 2012 17:26:07 +0000 (17:26 +0000)]
Add -fmem-report-wpa

For parallel LTO builds setting -fmem-report does not work very well
because all the LTRANS phases dump it in parallel and typically interleave
it to unreadability.

Since usually the memory bottleneck is WPA add a flag to only dump
the memory report for that.

gcc/:
2012-09-08  Andi Kleen  <ak@linux.intel.com>

* gcc/common.opt (-fmem-report-wpa): Add
* gcc/doc/invoke.texi (-fmem-report-wpa): Document.
* gcc/lto/lto.c (do_whole_program_analysis): Run mem_report
when mem_report_wpa is set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191095 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix wrong date in ChangeLog
ak [Sat, 8 Sep 2012 15:30:25 +0000 (15:30 +0000)]
Fix wrong date in ChangeLog

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191094 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoOptimize moxie function prologues
green [Sat, 8 Sep 2012 01:14:22 +0000 (01:14 +0000)]
Optimize moxie function prologues

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191088 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Sat, 8 Sep 2012 00:17:52 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191087 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agofortran/
mikael [Fri, 7 Sep 2012 20:37:41 +0000 (20:37 +0000)]
fortran/
PR fortran/54208
* simplify.c (simplify_bound_dim): Resolve array spec before
proceeding with simplification.

testsuite/
PR fortran/54208
* gfortran.dg/bound_simplification_3.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191083 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-07 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 7 Sep 2012 20:17:43 +0000 (20:17 +0000)]
2012-09-07  Paolo Carlini  <paolo.carlini@oracle.com>

* pt.c (num_template_headers_for_class): Rework per the code
inline in cp_parser_check_declarator_template_parameters.
* parser.c (cp_parser_check_declarator_template_parameters):
Use num_template_headers_for_class.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191082 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR testsuite/54184
aldyh [Fri, 7 Sep 2012 16:00:07 +0000 (16:00 +0000)]
PR testsuite/54184
* gcc.dg/pr52558-1.c: Delete.
* gcc.dg/simulate-thread/speculative-store-2.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191079 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/v850/v850.h (DBX_DEBUGGING_INFO): Define.
nickc [Fri, 7 Sep 2012 14:17:34 +0000 (14:17 +0000)]
* config/v850/v850.h (DBX_DEBUGGING_INFO): Define.
(ASM_GENERATE_INTERNAL_LABEL): Define if not already provided.
* config/v850/v850.c (compute_register_save_size): Always include
the link pointer.
(increment_stack): New function - emits insns to increment or
decrement the stack pointer.
(expand_prologue, expand_epilogue): Use it.
(expand_prologue): Set the function stack size, if requested.
(v850_debug_unwind_info): New function.
(TARGET_DEBUG_UNWIND_INFO): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191076 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoThis fixes part of the issue described in PR gcov-profile/54487 where
tejohnson [Fri, 7 Sep 2012 13:49:47 +0000 (13:49 +0000)]
This fixes part of the issue described in PR gcov-profile/54487 where
there were warnings about mismatches due to slight differences in the
merged histograms in different object files. This can happen due to
the truncating integer division in the merge routine, which could result
in slightly different histograms when summaries are merged in different
orders.

2012-09-07  Teresa Johnson  <tejohnson@google.com>

        PR gcov-profile/54487
* libgcc/libgcov.c (gcov_exit): Avoid warning on histogram
        differences.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191074 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc-interface/trans.c (Loop_Statement_to_gnu): Revert to using
ebotcazou [Fri, 7 Sep 2012 11:55:06 +0000 (11:55 +0000)]
* gcc-interface/trans.c (Loop_Statement_to_gnu): Revert to using
size_type_node instead of sizetype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191069 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR tree-ssa/54295
rearnsha [Fri, 7 Sep 2012 10:37:08 +0000 (10:37 +0000)]
PR tree-ssa/54295
* tree-ssa-math-opts.c (widening_mult_conversion_strippable_p):
Sign-extension of a zero-extended value can be simplified to
just zero-extension.

testsuite:
* gcc.target/arm/pr50318-1.c: Scan for smlal.
* gcc.target/arm/smlaltb-1.c: XFAIL test.
* gcc.target/arm/smlaltt-1.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191066 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-07 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 7 Sep 2012 10:27:02 +0000 (10:27 +0000)]
2012-09-07  Richard Guenther  <rguenther@suse.de>

PR middle-end/53667
* tree-ssa-structalias.c (handle_rhs_call): Properly clobber
EAF_NOESCAPED arguments.  Transitively close non-EAF_DIRECT
arguments separately.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191064 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * bitmap.c (bitmap_last_set_bit): Rewrite to return the correct bit.
steven [Fri, 7 Sep 2012 10:23:06 +0000 (10:23 +0000)]
* bitmap.c (bitmap_last_set_bit): Rewrite to return the correct bit.

* graphite.c (print_global_statistics): Use EDGE_COUNT instead
of VEC_length.
(print_graphite_scop_statistics): Likewise.
* graphite-scop-detection.c (get_bb_type): Use single_succ_p.
(print_graphite_scop_statistics): Use EDGE_COUNT, not VEC_length.
(canonicalize_loop_closed_ssa): Use single_pred_p.

* alias.c (reg_seen): Make this an sbitmap.
(record_set, init_alias_analysis): Update.

* tree-ssa-coalesce.c (ssa_conflicts_dump): Fix dumping.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191063 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.dg/pr44194-1.c: Skip on Alpha and adjust regexp for SPARC64.
ebotcazou [Fri, 7 Sep 2012 10:04:57 +0000 (10:04 +0000)]
* gcc.dg/pr44194-1.c: Skip on Alpha and adjust regexp for SPARC64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191061 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-07 Tom de Vries <tom@codesourcery.com>
vries [Fri, 7 Sep 2012 09:21:21 +0000 (09:21 +0000)]
2012-09-07  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/53986
* gcc.dg/tree-ssa/vrp80.c: New test.
* gcc.dg/tree-ssa/vrp80-2.c: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191058 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-07 Tom de Vries <tom@codesourcery.com>
vries [Fri, 7 Sep 2012 09:21:11 +0000 (09:21 +0000)]
2012-09-07  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/53986
* tree-vrp.c (extract_range_from_multiplicative_op_1): Allow
LSHIFT_EXPR.
(extract_range_from_binary_expr_1): Handle LSHIFT with constant range as
shift amount.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191057 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-07 Segher Boessenkool <segher@kernel.crashing.org>
segher [Fri, 7 Sep 2012 08:06:43 +0000 (08:06 +0000)]
2012-09-07  Segher Boessenkool  <segher@kernel.crashing.org>

gcc/
* config/rs6000/aix43.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/aix51.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/aix52.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/aix53.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/aix61.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/freebsd64.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/linux64.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/rs6000.c (print_operand) ['.']: Delete.
* config/rs6000/rs6000.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/rs6000.md (tls_gd_aix<TLSmode:tls_abi_suffix>):
Replace %. with nop.
(tls_gd_call_aix<TLSmode:tls_abi_suffix>): Ditto.
(tls_ld_aix<TLSmode:tls_abi_suffix>): Ditto.
(tls_ld_call_aix<TLSmode:tls_abi_suffix>): Ditto.
(call_nonlocal_aix32): Ditto.
(call_nonlocal_aix64): Ditto.
(call_value_nonlocal_aix32): Ditto.
(call_value_nonlocal_aix64): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191055 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-06-04 Andi Kleen <ak@linux.intel.com>
ak [Fri, 7 Sep 2012 05:04:15 +0000 (05:04 +0000)]
2012-06-04  Andi Kleen <ak@linux.intel.com>

* doc/invoke.texi (-ffat-lto-objects): Clarify that gcc-ar
et.al. should be used.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191052 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoReduce memory usage for storing LTO decl resolutions
ak [Fri, 7 Sep 2012 02:56:17 +0000 (02:56 +0000)]
Reduce memory usage for storing LTO decl resolutions

With a LTO build of a large project (>11k subfiles incrementially linked)
storing the LTO resolutions took over 0.5GB memory:

lto/lto.c:1087 (lto_resolution_read)                      0: 0.0%  540398500           15903: 0.0%

The reason is that the declaration indexes are quite sparse, but every subfile
got a full continuous vector for them. Since there are so many of them the
many vectors add up.

This patch instead stores the resolutions initially in a compact (index, resolution)
format. This is only expanded into a sparse vector for fast lookup when
the subfile is actually read, but then immediately freed. This means only one
vector is allocated at a time.

This brings the overhead for this down to less than 3MB for the test case:

lto/lto.c:1087 (lto_resolution_read)                      0: 0.0%    2821456           42186: 0.0%

gcc/:

2012-09-06  Andi Kleen  <ak@linux.intel.com>

* gcc/lto-streamer.h (res_pair): Add.
(lto_file_decl_data): Replace resolutions with respairs.
Add max_index.
* gcc/lto/lto.c (lto_resolution_read): Remove max_index.  Add rp.
Initialize respairs.
(lto_file_finalize): Set up resolutions vector lazily from respairs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191051 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Fri, 7 Sep 2012 00:18:25 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191050 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoModify gcc/*.[hc] double_int call sites to use the new interface.
crowl [Fri, 7 Sep 2012 00:06:35 +0000 (00:06 +0000)]
Modify gcc/*.[hc] double_int call sites to use the new interface.
This change entailed adding a few new methods to double_int.

The change results in a 0.163% time improvement with a 70% confidence.

Tested on x86_64.

Index: gcc/ChangeLog

2012-09-06  Lawrence Crowl  <crowl@google.com>

* double-int.h (double_int::operator &=): New.
(double_int::operator ^=): New.
(double_int::operator |=): New.
(double_int::mul_with_sign): Modify overflow parameter to bool*.
(double_int::add_with_sign): New.
(double_int::ule): New.
(double_int::sle): New.
(binary double_int::operator *): Remove parameter name.
(binary double_int::operator +): Likewise.
(binary double_int::operator -): Likewise.
(binary double_int::operator &): Likewise.
(double_int::operator |): Likewise.
(double_int::operator ^): Likewise.
(double_int::and_not): Likewise.
(double_int::from_shwi): Tidy formatting.
(double_int::from_uhwi): Likewise.
(double_int::from_uhwi): Likewise.
* double-int.c (double_int::mul_with_sign): Modify overflow parameter
to bool*.
(double_int::add_with_sign): New.
(double_int::ule): New.
(double_int::sle): New.
* builtins.c: Modify to use the new double_int interface.
* cgraph.c: Likewise.
* combine.c: Likewise.
* dwarf2out.c: Likewise.
* emit-rtl.c: Likewise.
* expmed.c: Likewise.
* expr.c: Likewise.
* fixed-value.c: Likewise.
* fold-const.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimplify-rtx.c: Likewise.
* ipa-prop.c: Likewise.
* loop-iv.c: Likewise.
* optabs.c: Likewise.
* stor-layout.c: Likewise.
* tree-affine.c: Likewise.
* tree-cfg.c: Likewise.
* tree-dfa.c: Likewise.
* tree-flow-inline.h: Likewise.
* tree-object-size.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-sccvn: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vrp.c: Likewise.
* tree.h: Likewise.
* tree.c: Likewise.
* varasm.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191047 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-06 Cary Coutant <ccoutant@google.com>
ccoutant [Thu, 6 Sep 2012 23:32:59 +0000 (23:32 +0000)]
2012-09-06  Cary Coutant  <ccoutant@google.com>

include/
* dwarf2.def: Edit comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191046 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * configure.ac (hle prefixes): Remove .code64.
uros [Thu, 6 Sep 2012 21:45:46 +0000 (21:45 +0000)]
* configure.ac (hle prefixes): Remove .code64.
* configure: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191044 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-09-06 Thiago Macieira <thiago.macieira@intel.com>
bkoz [Thu, 6 Sep 2012 20:31:08 +0000 (20:31 +0000)]
2012-09-06  Thiago Macieira  <thiago.macieira@intel.com>

PR libstdc++/54172
        * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if
        we detect that another thread has had success. Don't compare_exchange
        from a finished state back to a waiting state. Comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191042 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * configure.ac: Bump minimum GMP version to 4.2.3.
dnovillo [Thu, 6 Sep 2012 18:14:58 +0000 (18:14 +0000)]
* configure.ac: Bump minimum GMP version to 4.2.3.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191037 138bc75d-0d04-0410-961f-82ee72b054a4