OSDN Git Service
bernds [Wed, 6 Jul 2011 14:21:51 +0000 (14:21 +0000)]
* simplify-rtx.c (simplify_ternary_operation): Remove dead code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175918
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Wed, 6 Jul 2011 14:21:03 +0000 (14:21 +0000)]
* cse.c (find_comparison_args): Use val_mode_signbit_set_p.
* simplify-rtx.c (mode_signbit_p): Use GET_MODE_PRECISION.
(val_mode_signbit_p, val_mode_signbit_set_p): New functions.
(simplify_const_unary_operation, simplify_binary_operation_1,
simplify_const_binary_operation,
simplify_const_relational_operation): Use them. Use
GET_MODE_MASK for masking and sign-extensions.
* combine.c (set_nonzero_bits_and_sign_copies, simplify_set,
combine_simplify_rtx, force_to_mode, reg_nonzero_bits_for_combine,
simplify_shift_const_1, simplify_comparison): Likewise.
* expr.c (convert_modes): Likewise.
* rtlanal.c (nonzero_bits1, canonicalize_condition): Likewise.
* expmed.c (emit_cstore, emit_store_flag_1, emit_store_flag):
Likewise.
* rtl.h (val_mode_signbit_p, val_mode_signbit_set_p): Declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175917
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 6 Jul 2011 14:05:54 +0000 (14:05 +0000)]
2011-07-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49645
* c-decl.c (finish_decl): Also set DECL_HARD_REGISTER for global
register variables.
* tree-ssa-sccvn.c (vn_reference_op_eq): Disregard differences
in type qualification here ...
(copy_reference_ops_from_ref): ... not here.
(vn_reference_lookup_3): ... or here.
(copy_reference_ops_from_ref): Record decl bases as MEM[&decl].
(vn_reference_lookup): Do the lookup with a valueized ao-ref.
* g++.dg/tree-ssa/pr8781.C: Disable SRA.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175916
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 6 Jul 2011 13:58:39 +0000 (13:58 +0000)]
* doc/install.texi (Configuration): It's
--enable-gnu-indirect-function, not --enable-indirect-function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175915
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Wed, 6 Jul 2011 13:36:16 +0000 (13:36 +0000)]
* simplify-rtx.c (simplify_const_binary_operation): Use the
shift_truncation_mask hook instead of performing modulo by
width. Compare against mode precision, not bitsize.
* combine.c (combine_simplify_rtx, simplify_shift_const_1):
Use shift_truncation_mask instead of constructing the value
manually.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175913
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Wed, 6 Jul 2011 13:19:04 +0000 (13:19 +0000)]
Use pointer_mode for address computation.
gcc/
2011-07-06 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/47383
* tree-ssa-address.c (addr_for_mem_ref): Use pointer_mode for
address computation and convert to address_mode if needed.
gcc/testsuite/
2011-07-06 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/47383
* gcc.dg/pr47383.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175912
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Wed, 6 Jul 2011 11:56:46 +0000 (11:56 +0000)]
PR tree-optimization/49647
* gcc.dg/tree-ssa/
20030807-7.c: Remove xfail *-*-*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175910
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 6 Jul 2011 10:03:05 +0000 (10:03 +0000)]
2011-07-06 Richard Guenther <rguenther@suse.de>
* tree.c (build_common_tree_nodes_2): Merge with
build_common_tree_nodes.
* tree.h (build_common_tree_nodes): Adjust prototype.
(build_common_tree_nodes_2): Remove.
* doc/tm.texi.in (lang_hooks.builtin_function): Adjust.
* doc/tm.texi (lang_hooks.builtin_function): Regenerate.
c-family/
* c-common.c (c_common_nodes_and_builtins):
Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
fortran/
* f95-lang.c (gfc_init_decl_processing):
Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
go/
* go-lang.c (go_langhook_init):
Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
java/
* decl.c (java_init_decl_processing):
Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
lto/
* lto-lang.c (lto_init):
Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
ada/
* gcc-interface/misc.c (gnat_init):
Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
Re-initialize boolean_false_node.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175906
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Wed, 6 Jul 2011 08:46:41 +0000 (08:46 +0000)]
PR testsuite/49542
* gcc.dg/vect/pr33804.c: XFAIL if vect_no_align unconditionally.
* gcc.dg/vect/slp-multitypes-3.c: XFAIL on SPARC unconditionally.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175905
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 6 Jul 2011 04:20:39 +0000 (04:20 +0000)]
PR c++/48157
* pt.c (tsubst_qualified_id): Preserve TEMPLATE_ID_EXPR in
partial instantiation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175904
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 6 Jul 2011 00:18:36 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175900
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Tue, 5 Jul 2011 22:14:37 +0000 (22:14 +0000)]
libgcc/
* config.host (i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu)
(i[34567]86-*-gnu*, i[34567]86-*-kopensolaris*-gnu): Remove
md_unwind_header by splitting out of...
(i[34567]86-*-linux*): ... this.
* config.host (x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu):
Remove md_unwind_header by splitting out of...
(x86_64-*-linux*): ... this.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175892
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 5 Jul 2011 18:43:04 +0000 (18:43 +0000)]
PR tree-optimization/49618
* tree-eh.c (tree_could_trap_p) <case CALL_EXPR>: For DECL_WEAK
t recurse on the decl.
<case FUNCTION_DECL, case VAR_DECL>: For DECL_WEAK decls
return true if expr isn't known to be defined in current
TU or some other LTO partition.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175884
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Tue, 5 Jul 2011 18:27:57 +0000 (18:27 +0000)]
* gcc.dg/pr44023.c: Add dg-require-effective-target int32plus
* gcc.dg/pr43402.c: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175882
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Tue, 5 Jul 2011 18:16:17 +0000 (18:16 +0000)]
2011-07-05 Thomas Koenig <tkoenig@gcc.gnu.org>
* runtime/memory.c (internal_malloc_size): If size is zero,
allocate a single byte.
* m4/pack.m4 (pack_'rtype_code`): Don't check for zero size
for the argument of internal_malloc_size.
* m4/spread.m4 (spread_'rtype_code`): Likewise.
* m4/eoshift1.m4 (eoshift1): Don't allocate twice. Don't check
for zero size for the argument of internal_malloc_size.
* m4/eoshift3.m4: Don't check for zero size for the argument of
internal_malloc_size.
* intrinsics/pack_generic.c (pack_internal): Likewise.
(pack_s_internal): Likewise.
* intrinsics/cshift0.c (cshift0): Likewise.
* intrinsics/spread_generic.c (spread_internal): Likewise.
* intrinsics/eoshift0.c (eoshift0): Likewise.
* intrinsics/eoshift2.c (eoshift2): Likewise.
* generated/eoshift1_16.c: Regenerated.
* generated/eoshift1_4.c: Regenerated.
* generated/eoshift1_8.c: Regenerated.
* generated/eoshift3_16.c: Regenerated.
* generated/eoshift3_4.c: Regenerated.
* generated/eoshift3_8.c: Regenerated.
* generated/pack_c10.c: Regenerated.
* generated/pack_c16.c: Regenerated.
* generated/pack_c4.c: Regenerated.
* generated/pack_c8.c: Regenerated.
* generated/pack_i16.c: Regenerated.
* generated/pack_i1.c: Regenerated.
* generated/pack_i2.c: Regenerated.
* generated/pack_i4.c: Regenerated.
* generated/pack_i8.c: Regenerated.
* generated/pack_r10.c: Regenerated.
* generated/pack_r16.c: Regenerated.
* generated/pack_r4.c: Regenerated.
* generated/pack_r8.c: Regenerated.
* generated/spread_c10.c: Regenerated.
* generated/spread_c16.c: Regenerated.
* generated/spread_c4.c: Regenerated.
* generated/spread_c8.c: Regenerated.
* generated/spread_i16.c: Regenerated.
* generated/spread_i1.c: Regenerated.
* generated/spread_i2.c: Regenerated.
* generated/spread_i4.c: Regenerated.
* generated/spread_i8.c: Regenerated.
* generated/spread_r10.c: Regenerated.
* generated/spread_r16.c: Regenerated.
* generated/spread_r4.c: Regenerated.
* generated/spread_r8.c: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175880
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Tue, 5 Jul 2011 18:03:04 +0000 (18:03 +0000)]
* gcc.dg/cpp/pragma-3.c: Add dg-require-effective-target fopenmp.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175879
138bc75d-0d04-0410-961f-
82ee72b054a4
meissner [Tue, 5 Jul 2011 17:45:38 +0000 (17:45 +0000)]
Add --param case-values-threshold
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175878
138bc75d-0d04-0410-961f-
82ee72b054a4
janis [Tue, 5 Jul 2011 17:16:17 +0000 (17:16 +0000)]
* gcc.target/arm/pr42093.c: Use "-fno-reorder-blocks".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175877
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 5 Jul 2011 17:14:16 +0000 (17:14 +0000)]
dwarf2out: Remove unused text-based unwind entry points.
The dwarf2out_cfi_label function is privatized, the
dwarf2out_def_cfa function is merged into its last user.
The others really are unused.
* dwarf2out.c (dwarf2out_cfi_label): Make static.
(dwarf2out_flush_queued_reg_saves): Make static.
(dwarf2out_reg_save): Remove.
(dwarf2out_return_save): Remove.
(dwarf2out_return_reg): Remove.
(dwarf2out_reg_save_reg): Remove.
(dwarf2out_def_cfa): Merge into ...
(dwarf2out_frame_init): ... here.
* dwarf2out.h, tree.h: Remove declarations as necessary.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175876
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 5 Jul 2011 17:10:29 +0000 (17:10 +0000)]
ia64: Remove TARGET_DWARF_HANDLE_FRAME_UNSPEC hook.
Use an empty REG_FRAME_RELATED_EXPR instead.
* config/ia64/ia64.c (ia64_dwarf_handle_frame_unspec): Remove.
(TARGET_DWARF_HANDLE_FRAME_UNSPEC): Remove.
(ia64_expand_epilogue): Emit an empty FRAME_RELATED_EXPR for
the alloc insn.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175875
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 5 Jul 2011 17:08:58 +0000 (17:08 +0000)]
ia64: Remove dead code in process_epilogue.
* config/ia64/ia64.c (ia64_emit_deleted_label_after_insn): Remove.
(IA64_CHANGE_CFA_IN_EPILOGUE): Remove.
(process_epilogue): Don't call dwarf2out_def_cfa.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175874
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 5 Jul 2011 17:08:52 +0000 (17:08 +0000)]
ia64: Use pc_rtx to save the return address.
When actually emitting dwarf2, this now produces proper results.
When emitting ia64 unwind info, this removes a hard-coded assumption.
* config/ia64/ia64.c (ia64_expand_prologue): Use pc_rtx to
indicate the return address save.
(process_cfa_register): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175873
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 5 Jul 2011 17:06:09 +0000 (17:06 +0000)]
ia64: Remove ia64_dwarf2out_def_steady_cfa.
This defines nothing that we can't deduce already, so remove it.
* config/ia64/ia64.c (ia64_dwarf2out_def_steady_cfa): Remove.
(process_cfa_adjust_cfa, ia64_asm_unwind_emit): Don't call it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175872
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 5 Jul 2011 17:05:04 +0000 (17:05 +0000)]
ia64: Issue REG_CFA_REGISTER for ar.pfs at alloc insn.
* config/ia64/ia64.c (ia64_expand_prologue): Emit REG_CFA_REGISTER
for ar.pfs save at alloc insn.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175871
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 5 Jul 2011 17:03:41 +0000 (17:03 +0000)]
arm: Use REG_CFA_REGISTER instead of UNSPEC_STACK_ALIGN.
This requires a bit of extra preparation in arm_unwind_emit, in
order to handle the change for ARM unwinding.
* config/arm/arm.c (arm_dwarf_handle_frame_unspec): Remove.
(TARGET_DWARF_HANDLE_FRAME_UNSPEC): Remove.
(arm_expand_prologue): Use REG_CFA_REGISTER to mark the
stack pointer save.
(arm_unwind_emit_set): Don't recognize UNSPEC_STACK_ALIGN.
(arm_unwind_emit): Walk REG_NOTES for unwinding notes. Emit
proper unwind info for a REG_CFA_REGISTER save of stack pointer.
* config/arm/arm.md (UNSPEC_STACK_ALIGN): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175870
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 5 Jul 2011 16:58:42 +0000 (16:58 +0000)]
vax: Emit prologue as rtl.
Not that there's much rtl to emit, since the CALL instruction
interpreting the procedure entry mask does almost all the work.
However, it means we're no longer emitting dwarf2 via the
text-based entry points.
* config/vax/vax.md (define_c_enum unspecv): New. Define the
VUNSPEC_* constants here instead of via define_constants.
(VUNSPEC_PEM): New constant.
(procedure_entry_mask): New insn.
(prologue): New expander.
* config/vax/vax.c (vax_add_reg_cfa_offset): New.
(vax_expand_prologue): Rename from vax_output_function_prologue;
emit rtl instead of text.
(TARGET_ASM_FUNCTION_PROLOGUE): Remove.
(print_operand): Add 'x' prefix.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175869
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 5 Jul 2011 16:36:59 +0000 (16:36 +0000)]
* g++.dg/rtti/anon-ns1.C: Allow for null-termination.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175867
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 5 Jul 2011 15:47:40 +0000 (15:47 +0000)]
Promote the function argument before checking non-legitimate constant.
2011-07-05 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/47715
* calls.c (precompute_register_parameters): Promote the function
argument before checking non-legitimate constant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175864
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Tue, 5 Jul 2011 14:50:34 +0000 (14:50 +0000)]
Fix PR47654: Loop blocking should strip-mine at least two loops.
PR tree-optimization/47654
* graphite-blocking.c (pbb_strip_mine_time_depth): Do not return bool.
(lst_do_strip_mine_loop): Return an int.
(lst_do_strip_mine): Same.
(scop_do_strip_mine): Same.
(scop_do_block): Loop blocking should strip-mine at least two loops.
* graphite-interchange.c (lst_interchange_select_outer): Return an int.
(scop_do_interchange): Same.
* graphite-poly.h (scop_do_interchange): Update declaration.
(scop_do_strip_mine): Same.
* gcc.dg/graphite/block-pr47654.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175861
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Tue, 5 Jul 2011 14:50:27 +0000 (14:50 +0000)]
Fix computation of precision.
* graphite-clast-to-gimple.c (precision_for_value): Removed.
(precision_for_interval): Removed.
(gcc_type_for_interval): Use mpz_sizeinbase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175860
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Tue, 5 Jul 2011 14:50:21 +0000 (14:50 +0000)]
Correct computation of max.
* graphite-ppl.h (value_max): Correct computation of max.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175859
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Tue, 5 Jul 2011 14:50:13 +0000 (14:50 +0000)]
Correct typo.
* graphite-clast-to-gimple.c (clast_name_to_index): Add missing space.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175858
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 5 Jul 2011 14:47:21 +0000 (14:47 +0000)]
PR c++/49598
* semantics.c (finish_id_expression): convert_from_reference.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175857
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 5 Jul 2011 14:39:30 +0000 (14:39 +0000)]
2011-07-05 Richard Guenther <rguenther@suse.de>
c-family/
* c-common.c (c_common_nodes_and_builtins): Build all common
tree nodes first.
* c-decl.c (c_init_decl_processing): Defer building common
tree nodes to c_common_nodes_and_builtins.
cp/
* decl.c (cxx_init_decl_processing): Defer building common
tree nodes to c_common_nodes_and_builtins.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175856
138bc75d-0d04-0410-961f-
82ee72b054a4
razya [Tue, 5 Jul 2011 13:08:01 +0000 (13:08 +0000)]
07-05-2011 Razya Ladelsky <razya@il.ibm.com>
* tree-cfg.c (gimple_duplicate_sese_tail): Remove handling of
the loop's number of iterations.
* tree-parloops.c (transform_to_exit_first_loop): Add the
handling of the loop's number of iterations before the call
to gimple_duplicate_sese_tail.
Insert the stmt caclculating the new rhs of the loop's
condition stmt to the preheader instead of iters_bb.
* testsuite/gcc.dg/autopar/pr49580.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175851
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 5 Jul 2011 12:47:35 +0000 (12:47 +0000)]
Don't propagate hard registers in forward_propagate_subreg.
2011-07-05 H.J. Lu <hongjiu.lu@intel.com>
PR rtl-optimization/47449
* fwprop.c (forward_propagate_subreg): Don't propagate hard
register nor zero/sign extended hard register.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175849
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 5 Jul 2011 11:24:26 +0000 (11:24 +0000)]
2011-07-05 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49518
PR tree-optimization/49628
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Skip
irrelevant and invariant data-references.
(vect_analyze_data_ref_access): For invariant loads clear the
group association.
* g++.dg/torture/pr49628.C: New testcase.
* gcc.dg/torture/pr49518.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175847
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Tue, 5 Jul 2011 10:22:50 +0000 (10:22 +0000)]
* ada/acats/run_acats (which): Extract last field from type -p,
type output only if command succeeded.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175843
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 5 Jul 2011 00:17:59 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175840
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 4 Jul 2011 21:44:11 +0000 (21:44 +0000)]
* cp-demangle.c (d_expression): Handle 'this'.
(d_print_comp) [DEMANGLE_COMPONENT_FUNCTION_PARAM]: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175836
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 4 Jul 2011 21:44:04 +0000 (21:44 +0000)]
DR 1207
PR c++/49589
* mangle.c (write_expression): Handle 'this'.
* parser.c (cp_parser_postfix_dot_deref_expression): Allow
incomplete *this.
* semantics.c (potential_constant_expression_1): Check that
DECL_CONTEXT is set on 'this'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175835
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 4 Jul 2011 21:43:57 +0000 (21:43 +0000)]
* error.c (dump_template_bindings): Don't print typenames
for a partial instantiation.
(dump_function_decl): If we aren't printing function arguments,
print template arguments as <args> rather than [with ...].
(dump_expr): Don't print return type or template header.
[BASELINK]: Use BASELINK_FUNCTIONS rather than get_first_fn.
* pt.c (dependent_template_arg_p): Handle null arg.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175834
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 4 Jul 2011 21:43:49 +0000 (21:43 +0000)]
* error.c (type_to_string): Avoid redundant akas.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175833
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 4 Jul 2011 21:12:57 +0000 (21:12 +0000)]
PR fortran/49623
* gfortranspec.c (lang_specific_driver): Ignore options with
CL_ERR_MISSING_ARG errors.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175830
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 4 Jul 2011 21:04:54 +0000 (21:04 +0000)]
PR rtl-optimization/49619
* combine.c (combine_simplify_rtx): In PLUS -> IOR simplification
pass VOIDmode as op0_mode to recursive call, and return temp even
when different from tor, just if it is not IOR of the original
PLUS arguments.
* gcc.dg/pr49619.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175825
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 4 Jul 2011 18:53:56 +0000 (18:53 +0000)]
PR rtl-optimization/49472
* simplify-rtx.c (simplify_unary_operation_1) <case NEG>: When
negating MULT, negate the second operand instead of first.
(simplify_binary_operation_1) <case MULT>: If one operand is
a NEG and the other is MULT, don't attempt to optimize by
negation of the MULT operand if it only moves the NEG operation
around.
* gfortran.dg/pr49472.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175821
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 4 Jul 2011 17:19:52 +0000 (17:19 +0000)]
PR debug/49602
* tree-into-ssa.c (rewrite_debug_stmt_uses): Disregard
get_current_def return value if it can't be trusted to be
the current value of the variable in the current bb.
* gcc.dg/pr49602.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175818
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 4 Jul 2011 16:26:08 +0000 (16:26 +0000)]
PR target/49600
* config/i386/i386.md (SSE2 int->float split): Push operand 1 in
general register to memory for !TARGET_INTER_UNIT_MOVES.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175817
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Mon, 4 Jul 2011 12:48:04 +0000 (12:48 +0000)]
PR target/34734
PR target/44643
* gcc.target/avr/avr.exp: Run over cpp files, too.
* gcc.target/avr/torture/avr-torture.exp: Ditto.
* gcc.target/avr/progmem.h: New file.
* gcc.target/avr/exit-abort.h: New file.
* gcc.target/avr/progmem-error-1.c: New file.
* gcc.target/avr/progmem-error-1.cpp: New file.
* gcc.target/avr/progmem-warning-1.c: New file.
* gcc.target/avr/torture/progmem-1.c: New file.
* gcc.target/avr/torture/progmem-1.cpp: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175811
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Mon, 4 Jul 2011 12:28:02 +0000 (12:28 +0000)]
PR target/44643
* config/avr/avr.c (avr_insert_attributes): Use TYPE_READONLY
instead of TREE_READONLY.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175809
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Mon, 4 Jul 2011 12:20:35 +0000 (12:20 +0000)]
* doc/extend.texi (AVR Built-in Functions): Update documentation
of __builtin_avr_fmul*.
* config/avr/avr.c (avr_init_builtins): Don't depend on
AVR_HAVE_MUL.
* config/avr/avr-c.c (avr_cpu_cpp_builtins): Ditto.
* config/avr/avr.md (fmul): Rename to fmul_insn.
(fmuls): Rename to fmuls_insn.
(fmulsu): Rename to fmulsu_insn.
(fmul,fmuls,fmulsu): New expander.
(*fmul.call,*fmuls.call,*fmulsu.call): New Insn.
* config/avr/t-avr (LIB1ASMFUNCS): Add _fmul, _fmuls, _fmulsu.
* config/avr/libgcc.S (__fmul): New function.
(__fmuls): New function.
(__fmulsu,__fmulsu_exit): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175807
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 4 Jul 2011 12:06:17 +0000 (12:06 +0000)]
2011-07-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49615
* tree-cfgcleanup.c (split_bbs_on_noreturn_calls): Fix
basic-block index check.
* g++.dg/torture/pr49615.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175803
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Mon, 4 Jul 2011 10:02:34 +0000 (10:02 +0000)]
libgcc/
* config/avr/t-avr (intfuncs16): Add _clrsbXX2.
gcc/
* longlong.h (count_leading_zeros, count_trailing_zeros,
COUNT_LEADING_ZEROS_0): Define for target avr if W_TYPE_SIZE is 16
resp. 64.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175800
138bc75d-0d04-0410-961f-
82ee72b054a4
nicola [Mon, 4 Jul 2011 08:02:50 +0000 (08:02 +0000)]
In gcc/objc/:
2011-07-04 Nicola Pero <nicola.pero@meta-innovation.com>
Refactored encoding code into objc-encoding.h and objc-encoding.c.
* objc-act.c (util_obstack, util_firstobj, encode_type_qualifiers,
encode_type, generating_instance_variables, objc_method_parm_type,
objc_encoded_type_size, encode_method_prototype,
objc_build_encode_expr, pointee_is_readonly, encode_pointer,
encode_array, encode_vector, encode_aggregate_fields,
encode_aggregate_within, encode_next_bitfield,
encode_gnu_bitfield, encode_field_decl,
objc_v2_encode_property_attr): Moved to objc-encoding.h and
objc-encoding.c. No change in the actual code.
Include objc-encoding.h.
(objc_init): Added TODO.
(objc_build_property_setter_name): Made non-static so it can be
called from objc-encoding.c.
* objc-act.h (OBJC_ENCODE_INLINE_DEFS,
OBJC_ENCODE_DONT_INLINE_DEFS): Moved to objc-encoding.h.
* objc-runtime-shared-support.h (objc_v2_encode_property_attr,
encode_method_prototype, encode_field_decl,
generating_instance_variables): Moved to objc-encoding.h.
(objc_build_property_setter_name): Declare.
* objc-encoding.c: New.
* objc-encoding.h: New.
* objc-gnu-runtime-abi-01.c: Include objc-encoding.h.
* objc-next-runtime-abi-01.c: Likewise.
* objc-next-runtime-abi-02.c: Likewise.
* objc-runtime-shared-support.c: Likewise.
* Make-lang.in (OBJC_OBJS): Added objc-encoding.o.
(objc/objc-lang.o): Reordered dependencies.
(objc/objc-runtime-shared-support.o): Reordered dependencies.
Added dependencies on objc-encoding.h and on $(GGC_H),
$(DIAGNOSTIC_CORE_H), $(FLAGS_H) and input.h.
(objc/objc-gnu-runtime-abi-01.o): Likewise.
(objc/objc-next-runtime-abi-01.o): Likewise.
(objc/objc-next-runtime-abi-02.o): Likewise.
(objc/objc-act.o): Reordered dependencies. Added dependency on
objc-encoding.h.
(objc/objc-encoding.o): New rule.
* objc-encoding.c (encode_type): Use "%<%T%>" format when printing
warning "unknown type %<%T%> found during Objective-C encoding"
instead of using gen_type_name.
In gcc/objcp/:
2011-07-04 Nicola Pero <nicola.pero@meta-innovation.com>
* Make-lang.in (OBJCXX_OBJS): Added objc-encoding.o.
(objcp/objcp-lang.o): Reordered dependencies. Depend on GGC_H.
(objcp/objcp-decl.o): Reordered dependencies.
(objcp/objc-runtime-shared-support.o): Reordered dependencies.
Updated them to be identical to the corresponding new objc/ ones,
with the addition of objcp-decl.h.
(objcp/objc-runtime-shared-support.o): Likewise.
(objcp/objc-gnu-runtime-abi-01.o): Likewise.
(objcp/objc-next-runtime-abi-01.o): Likewise.
(objcp/objc-next-runtime-abi-02.o): Likewise.
(objcp/objcp-act.o): Reordered dependencies. Added dependency on
objc-encoding.h.
(objcp/objc-encoding.o): New rule.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175797
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 4 Jul 2011 00:19:16 +0000 (00:19 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175793
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Sun, 3 Jul 2011 17:37:30 +0000 (17:37 +0000)]
PR 49296 Fix wrong PR number in ChangeLog
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175789
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [Sun, 3 Jul 2011 10:14:55 +0000 (10:14 +0000)]
PR tree-optimization/49610
* tree-vect-loop.c (vect_is_slp_reduction): Check that DEF_STMT has
a basic block.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175786
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 3 Jul 2011 00:17:52 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175785
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 2 Jul 2011 18:13:47 +0000 (18:13 +0000)]
* tree.h (TYPE_ARTIFICIAL): New flag.
* dwarf2out.c (modified_type_die): Add a DW_AT_artificial attribute to
the DIE of the type if it is artificial.
(gen_array_type_die): Likewise.
(gen_enumeration_type_die): Likewise.
(gen_struct_or_union_type_die): Likewise.
* lto-streamer-in.c (unpack_ts_base_value_fields): Use TYPE_ARTIFICIAL.
* lto-streamer-out.c (pack_ts_base_value_fields): Likewise.
ada/
* gcc-interface/utils.c (record_builtin_type): Set TYPE_ARTIFICIAL on
the type according to the ARTIFICIAL_P parameter.
(create_type_decl): Likewise.
(create_type_stub_decl): Set TYPE_ARTIFICIAL on the type to 1.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175781
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Sat, 2 Jul 2011 11:08:41 +0000 (11:08 +0000)]
2011-07-02 Janus Weil <janus@gcc.gnu.org>
PR fortran/49562
* expr.c (gfc_check_vardef_context): Handle type-bound procedures.
2011-07-02 Janus Weil <janus@gcc.gnu.org>
PR fortran/49562
* gfortran.dg/typebound_proc_23.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175779
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 2 Jul 2011 00:17:54 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175775
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 1 Jul 2011 22:24:42 +0000 (22:24 +0000)]
2011-07-01 Jonathan Wakely <jwakely.gcc@gmail.com>
PR c++/49605
* init.c (build_delete): Only warn for sfk_deleting_destructor.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175771
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 1 Jul 2011 21:43:59 +0000 (21:43 +0000)]
* gcc-interface/Make-lang.in (gnat1): Prepend '+' to the command.
(gnatbind): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175769
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 1 Jul 2011 21:15:05 +0000 (21:15 +0000)]
* tree-object-size.c (pass_through_call): Handle
BUILT_IN_ASSUME_ALIGNED.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175768
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 1 Jul 2011 21:14:14 +0000 (21:14 +0000)]
* Make-lang.in (cp/decl.o): Depend on pointer-set.h.
(cp/class.o): Likewise.
(cp/error.o): Likewise.
(cp/name-lookup.o): Likewise.
(cp/decl2.o): Likewise. Don't depend on $(POINTER_SET_H).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175767
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 1 Jul 2011 20:24:38 +0000 (20:24 +0000)]
PR c++/48261
* pt.c (lookup_template_function): Handle non-function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175766
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 1 Jul 2011 20:24:25 +0000 (20:24 +0000)]
PR c++/48593
* pt.c (tsubst_qualified_id): Check PTRMEM_OK_P.
* tree.c (build_qualified_name): Set PTRMEM_OK_P.
* semantics.c (finish_parenthesized_expr): Clear PTRMEM_OK_P on
SCOPE_REF, too.
* cp-tree.h (PTRMEM_OK_P): Apply to SCOPE_REF, too.
(QUALIFIED_NAME_IS_TEMPLATE): Switch to lang flag 1.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175765
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 1 Jul 2011 20:24:08 +0000 (20:24 +0000)]
PR c++/48883
PR c++/49609
* pt.c (resolve_nondeduced_context): Call mark_used.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175764
138bc75d-0d04-0410-961f-
82ee72b054a4
brobecke [Fri, 1 Jul 2011 17:51:05 +0000 (17:51 +0000)]
Darwin has case-insensitive filesystems
HFS+, the FS on Darwin, is case insensitive. So this patch adjusts
filename_cmp.c to ignore the casing when comparing filenames on Darwin.
include/ChangeLog:
* filenames.h (HAVE_CASE_INSENSITIVE_FILE_SYSTEM): Define
on Darwin, as well as on the systems that use a DOS-like
filesystem.
libiberty/ChangeLog:
* filename_cmp.c (filename_cmp, filename_ncmp): Add handling of
HAVE_CASE_INSENSITIVE_FILE_SYSTEM.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175762
138bc75d-0d04-0410-961f-
82ee72b054a4
jkratoch [Fri, 1 Jul 2011 17:16:44 +0000 (17:16 +0000)]
libiberty/
PR debug/49408
* cp-demangle.c (d_print_comp): Suppress argument list for function
references by the '&' unary operator. Keep also already processed
variant without the argument list. Suppress argument list types for
function call used in an expression.
* testsuite/demangle-expected: Fix excessive argument list types in
`test for typed function in decltype'. New testcase for no argument
list types printed. 3 new testcases for function references by the
'&' unary operator..
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175761
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Fri, 1 Jul 2011 15:46:17 +0000 (15:46 +0000)]
2011-07-01 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (tree_non_mode_aligned_mem_p): Also ignore MEM_REFs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175760
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 1 Jul 2011 13:36:17 +0000 (13:36 +0000)]
PR c++/49085
* semantics.c (finish_offsetof): Complain about incomplete type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175758
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Fri, 1 Jul 2011 12:57:11 +0000 (12:57 +0000)]
Use proper mode for stack save area.
2011-07-01 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/48016
* explow.c (update_nonlocal_goto_save_area): Use proper mode
for stack save area.
* function.c (expand_function_start): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175756
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Fri, 1 Jul 2011 11:27:00 +0000 (11:27 +0000)]
* config-list.mk (LIST): Append OPT-enable-obsolete to
alpha-dec-osf5.1, mips-sgi-irix6.5.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175754
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 1 Jul 2011 11:13:13 +0000 (11:13 +0000)]
2011-07-01 Richard Guenther <rguenther@suse.de>
PR middle-end/49596
* cgraph.h (varpool_all_refs_explicit_p): Not analyzed nodes
may have unknown refs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175753
138bc75d-0d04-0410-961f-
82ee72b054a4
ktietz [Fri, 1 Jul 2011 10:00:25 +0000 (10:00 +0000)]
2011-07-01 Kai Tietz <ktietz@redhat.com>
* tree-ssa-forwprop.c (simplify_bitwise_binary): Fix typo.
2011-07-01 Kai Tietz <ktietz@redhat.com>
* gcc.dg/tree-ssa/bitwise-sink.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175752
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Fri, 1 Jul 2011 09:25:29 +0000 (09:25 +0000)]
* config.gcc: Obsolete alpha*-dec-osf5.1, mips-sgi-irix6.5.
* doc/install.texi (Specific, alpha*-dec-osf5.1): Document it.
(Specific, mips-sgi-irix6): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175751
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Fri, 1 Jul 2011 08:59:20 +0000 (08:59 +0000)]
libmudflap:
PR libmudflap/49549
* testsuite/lib/libmudflap.exp (load_gcc_lib): Load
target-supports.exp.
* testsuite/libmudflap.cth/cthfrags.exp: Only pass
--noinhibit-exec to GNU ld.
gcc:
PR libmudflap/49549
* doc/sourcebuild.texi (Effective-Target Keywords): Document gld.
gcc/testsuite:
PR libmudflap/49549
* lib/target-supports.exp (check_effective_target_gld): New proc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175749
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 1 Jul 2011 08:21:09 +0000 (08:21 +0000)]
* tree-pretty-print.c (dump_generic_code) <case CONSTRUCTOR>: Print
[idx]= and [idx1 ... idx2]= before initializers if needed for
array initializers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175748
138bc75d-0d04-0410-961f-
82ee72b054a4
liqin [Fri, 1 Jul 2011 07:51:38 +0000 (07:51 +0000)]
2011-07-01 Chen Liqin <liqin.gcc@gmail.com>
* config.gcc (score-*-elf): Remove score7.o.
* config/score/t-score-elf: Likewise.
* config/score/score.c: Merge score7 to score.c and remove forwarding functions.
* config/score/score7.c: Deleted.
* config/score/score7.h: Deleted.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175747
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 1 Jul 2011 06:56:18 +0000 (06:56 +0000)]
2011-07-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49603
* tree-vect-stmts.c (vectorizable_load): Remove unnecessary
assert.
* gcc.dg/torture/pr49603.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175746
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 1 Jul 2011 00:54:27 +0000 (00:54 +0000)]
correct changelog
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175744
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 1 Jul 2011 00:53:10 +0000 (00:53 +0000)]
PR c++/49387
* rtti.c (get_pseudo_ti_index): Call complete_type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175743
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 1 Jul 2011 00:17:43 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175742
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 1 Jul 2011 00:03:58 +0000 (00:03 +0000)]
PR c++/49569
* method.c (implicitly_declare_fn): Set DECL_PARM_LEVEL and
DECL_PARM_INDEX on rhs parm.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175738
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 1 Jul 2011 00:03:43 +0000 (00:03 +0000)]
* pt.c (iterative_hash_template_arg): Use cp_tree_operand_length.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175737
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 1 Jul 2011 00:03:34 +0000 (00:03 +0000)]
PR c++/49355
* tree.c (stabilize_init): Handle aggregate initialization.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175736
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Thu, 30 Jun 2011 21:54:29 +0000 (21:54 +0000)]
2011-06-30 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (struct access): Rename total_scalarization to
grp_total_scalarization
(completely_scalarize_var): New function.
(sort_and_splice_var_accesses): Set total_scalarization in the
representative access.
(analyze_access_subtree): Propagate total scalarization accross the
tree, no holes in totally scalarized trees, simplify coverage
computation.
(analyze_all_variable_accesses): Call completely_scalarize_var instead
of completely_scalarize_record.
* testsuite/gcc.dg/tree-ssa/sra-12.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175733
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 30 Jun 2011 21:10:03 +0000 (21:10 +0000)]
PR c++/48481
* name-lookup.c (struct arg_lookup): Add fn_set.
(add_function): Check it.
(lookup_arg_dependent_1): Initialize it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175732
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 30 Jun 2011 21:09:55 +0000 (21:09 +0000)]
* g++.dg/cpp0x/named.C: Test subobject of xvalue.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175731
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 30 Jun 2011 21:08:54 +0000 (21:08 +0000)]
i386: Always use TARGET_DEEP_BRANCH_PREDICTION.
While it could be possible to output_set_got such that we can
individually annotate the instructions, it's simpler to simply
admit that all processors currently being manufactured do want
deep branch prediction. At which point all of the complication
simply goes away.
* config/i386/i386.h (X86_TUNE_DEEP_BRANCH_PREDICTION): Remove.
(TARGET_DEEP_BRANCH_PREDICTION): Remove.
* config/i386/i386.c: Don't include dwarf2out.h.
(initial_ix86_tune_features): Remove X86_TUNE_DEEP_BRANCH_PREDICTION.
(output_set_got): Don't test TARGET_DEEP_BRANCH_PREDICTION, delete
all code dead thereafter. Don't do dwarf2out_flush_queued_reg_saves.
(ix86_expand_prologue): Set REG_CFA_FLUSH_QUEUE on set_got insn.
(machopic_output_stub): Don't test TARGET_DEEP_BRANCH_PREDICTION.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175730
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 30 Jun 2011 21:04:23 +0000 (21:04 +0000)]
dwarf2out: Add REG_CFA_FLUSH_QUEUE.
* reg-notes.def (REG_CFA_FLUSH_QUEUE): New.
* dwarf2out.c (dwarf2out_frame_debug): Handle it.
* final.c (final_scan_insn): Look for it, and invoke
dwarf2out_frame_debug before the insn if found.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175729
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 30 Jun 2011 21:01:06 +0000 (21:01 +0000)]
dwarf2out: Handle pc_rtx as return column in REG_CFA_OFFSET too.
* dwarf2out.c (dwarf2out_frame_debug_cfa_offset): Allow PC_RTX
as a source, and interpret that as DWARF_FRAME_RETURN_COLUMN.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175728
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 30 Jun 2011 20:59:41 +0000 (20:59 +0000)]
dwarf2out: Convert regs_saved_in_regs to VEC.
* dwarf2out.c (struct reg_saved_in_data): Provide a typedef.
Define a vector of this type.
(regs_saved_in_regs): Use a VEC.
(num_regs_saved_in_regs): Remove.
(compare_reg_or_pc): New.
(record_reg_saved_in_reg): Split out from...
(dwarf2out_flush_queued_reg_saves): ... here.
(clobbers_queued_reg_save): Update for VEC.
(reg_saved_in): Likewise.
(dwarf2out_frame_debug_init): Likewise.
(dwarf2out_reg_save_reg): Use record_reg_saved_in_reg.
(dwarf2out_frame_debug_cfa_register): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175727
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 30 Jun 2011 19:32:23 +0000 (19:32 +0000)]
PR tree-optimization/49572
* tree-ssa-dom.c (initialize_hash_element) <GIMPLE_SINGLE_RHS>: Use the
type of the RHS instead of that of the LHS for the expression type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175721
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 30 Jun 2011 17:56:50 +0000 (17:56 +0000)]
* df-scan.c (df_get_entry_block_def_set): Use INCOMING_REGNO macro
unconditionally.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175718
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 30 Jun 2011 14:03:25 +0000 (14:03 +0000)]
2011-06-30 Richard Guenther <rguenther@suse.de>
* opts.c (finish_options): Do not disable IPA-PTA during ltrans.
* tree-ssa-structalias.c (create_variable_info_for): Do not
add initial constraints for non-var-decls. Properly handle
globals in other ltrans partitions.
(intra_create_variable_infos): Manually create constraints for
the fake no-alias parameter.
(ipa_pta_execute): Dump the cgraph, handle ltrans partitions properly
and assert there are no clones.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175707
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 30 Jun 2011 13:27:43 +0000 (13:27 +0000)]
2011-06-30 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46787
* tree-data-ref.c (dr_address_invariant_p): Remove.
(find_data_references_in_stmt): Invariant accesses are ok now.
* tree-vect-stmts.c (vectorizable_load): Handle invariant
loads.
* tree-vect-data-refs.c (vect_analyze_data_ref_access): Allow
invariant loads.
* gcc.dg/vect/vect-121.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175704
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Thu, 30 Jun 2011 13:24:19 +0000 (13:24 +0000)]
2011-06-30 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/49094
* tree-sra.c (tree_non_mode_aligned_mem_p): New function.
(build_accesses_from_assign): Use it.
* testsuite/gcc.dg/tree-ssa/pr49094.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175703
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Thu, 30 Jun 2011 12:26:08 +0000 (12:26 +0000)]
* de.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175698
138bc75d-0d04-0410-961f-
82ee72b054a4