Commit Graph

107958 Commits

Author SHA1 Message Date
GCC Administrator
85c56e4f89 Daily bump.
From-SVN: r172236
2011-04-10 00:18:43 +00:00
Anatoly Sokolov
d108e67950 expr.c (expand_expr_real_1): Use add_to_hard_reg_set function instead of loop.
* expr.c (expand_expr_real_1): Use add_to_hard_reg_set function
	instead of loop.
	* sel-sched.c (mark_unavailable_hard_regs): Likewise.
	* function.c (record_hard_reg_sets): Likewise.
	* ira.c (compute_regs_asm_clobbered): Likewise.
	* sched-deps.c (sched_analyze_1): Likewise.
	* reload1.c (mark_reload_reg_in_use, choose_reload_regs): Likewise.

From-SVN: r172231
2011-04-09 23:10:45 +04:00
Xinliang David Li
3411bc59c6 Fix PR48484
From-SVN: r172229
2011-04-09 16:29:08 +00:00
Duncan Sands
b365495ab5 Bail out rather than crashing in array_type_nelts if TYPE_MAX_VALUE is null.
From-SVN: r172227
2011-04-09 16:18:01 +00:00
GCC Administrator
273a32b891 Daily bump.
From-SVN: r172224
2011-04-09 00:18:46 +00:00
Mike Stump
d4dd174148 re PR testsuite/48506 (ssa-ccp-17.c = g.i fails)
PR testsuite/48506
	* gcc.dg/tree-ssa/ssa-ccp-17.c: Robustify against ports that
	default to fno-common.

From-SVN: r172218
2011-04-08 23:53:59 +00:00
Georg-Johann Lay
82fde1e5a5 sibcall-3.c: Don't xfail on AVR.
2011-04-08  Georg-Johann Lay  <avr@gjlay.de>

	* gcc.dg/sibcall-3.c: Don't xfail on AVR.
	* gcc.dg/sibcall-4.c: Don't xfail on AVR.

From-SVN: r172217
2011-04-08 23:17:52 +00:00
Eric Botcazou
68bc509a5c combine.c (combine_validate_cost): Adjust comments.
* combine.c (combine_validate_cost): Adjust comments.  Set registered
	cost of I0 to zero at the end, if any.

From-SVN: r172216
2011-04-08 22:31:22 +00:00
Thomas Koenig
51a30b323d re PR fortran/48448 (Implement -f(no-)frontend-optimization)
2011-04-08  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/48448
	* gfortran.h (gfc_option_t):  Add warn_function_elimination and
	flag_frontend_optimize.
	* lang.opt (Wfunction-elimination):  Add.
	(ffrontend-optimize):  Add.
	* invoke.texi:  Add documentation for -Wfunction-elimination
	and -ffrontend-optimize.  Add -faggressive-function-elimination
	to list of code generation options.
	* frontend-passes.c (gfc_run_passes):  Run optimizations if
	flag_frontend_optimize is set.
	(warn_function_elimination):  New function.
	(cfe_expr_0):  Call it if requested to do so.
	* options.c (gfc_init_options):  Initiate warn_function_elimination
	and flag_frontend_optimize.
	(gfc_post_options):  Set flag_frontend_optimize if not specified
	by user, depending on the optimization level.
	(gfc_handle_option):  Handle -Wfunction-elimination and
	-ffrontend-optimize.

2011-04-08  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/48448
	* gfortran.dg/function_optimize_5.f90:  New test.

From-SVN: r172215
2011-04-08 21:46:08 +00:00
Xinliang David Li
041e059f26 FDO insane profile
From-SVN: r172213
2011-04-08 21:03:12 +00:00
Xinliang David Li
6a801cf261 -dA enhancement
From-SVN: r172212
2011-04-08 21:01:08 +00:00
Steven G. Kargl
d5f3624e37 re PR target/47829 (no .eh_frame_hdr table will be created.)
2011-04-08  Steven G. Kargl  <kargl@gcc.gnu.org>

        PR 47829
        gcc/config.gcc: disable unwind table generation for crtbegin/crtend
        on i386-*-freebsd.

From-SVN: r172211
2011-04-08 20:57:44 +00:00
Eric Botcazou
29b1c5a4fd decl.c (gnat_to_gnu_entity): Set minimum alignment on fields of the RETURN type built for the Copy-In...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Set minimum
	alignment on fields of the RETURN type built for the Copy-In Copy-Out
	mechanism.

From-SVN: r172210
2011-04-08 20:30:14 +00:00
Eric Botcazou
88872b00da trans.c (Identifier_to_gnu): Do not return initializers of aggregate types that contain a placeholder.
* gcc-interface/trans.c (Identifier_to_gnu): Do not return initializers
	of aggregate types that contain a placeholder.

From-SVN: r172209
2011-04-08 20:21:36 +00:00
Michael Matz
42821aff0a re PR rtl-optimization/48389 (ICE: in make_edges, at cfgbuild.c:319 with -mtune=pentiumpro)
PR middle-end/48389
	* jump.c (rebuild_jump_labels_1, rebuild_jump_labels_chain): New
	functions.
	(rebuild_jump_labels): Call rebuild_jump_labels_1.
	* rtl.h (rebuild_jump_labels_chain): Declare.
	* cfgexpand.c (gimple_expand_cfg): Initialize JUMP_LABEL also on
        insns inserted on edges.

testsuite/
	* gcc.target/i386/pr48389.c: New test.

From-SVN: r172208
2011-04-08 20:18:08 +00:00
Joseph Myers
ad7be0090c gcc_update (gcc/config/arm/arm-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/arm/arm-tables.opt): New dependencies.

gcc:
	* config.gcc (arm*-*-*): Add arm/arm-tables.opt to extra_options.
	* config/arm/arm-arches.def: New.
	* config/arm/arm-opts.h: New.
	* config/arm/genopt.sh: New.
	* config/arm/arm-tables.opt: New (generated).
	* config/arm/arm.c (arm_handle_option, arm_target_help,
	TARGET_HANDLE_OPTION, TARGET_HELP, arm_find_cpu): Remove.
	(all_architectures): Get most table contents from arm-arches.def.
	(arm_option_override): Set arm_selected_arch, arm_selected_cpu and
	arm_selected_tune here.
	* config/arm/arm.h (enum processor_type): Move to arm-opts.h.
	* config/arm/arm.opt (config/arm/arm-opts.h): New HeaderInclude.
	(march=, mcpu=, mtune=): Use Enum and Var.
	* config/arm/t-arm ($(srcdir)/config/arm/arm-tables.opt): New.
	(arm.o): Update dependencies.

From-SVN: r172205
2011-04-08 20:39:48 +01:00
Basile Starynkevitch
ecbb6fb7e4 gengtype.c (write_typed_alloc_def): New argument f.
2011-04-08  Basile Starynkevitch  <basile@starynkevitch.net>

	* gengtype.c (write_typed_alloc_def): New argument f. Use it instead
	of header_file.
	(write_typed_struct_alloc_def, write_typed_typedef_alloc_def)
	(write_typed_alloc_defns): Likewise.
	(main): Calls write_typed_alloc_defns with output_header.

From-SVN: r172203
2011-04-08 17:52:25 +00:00
Vladimir Makarov
89577341ed Fix PR # 48435 instead of 4435
From-SVN: r172202
2011-04-08 17:48:23 +00:00
Vladimir Makarov
8d189b3fd1 re PR libstdc++/4435 (Object file has undefined basic_string symbol as local.)
2011-04-08  Vladimir Makarov  <vmakarov@redhat.com>

	PR 4435
	* ira-color.c (setup_profitable_hard_regs): Add comments.
	Don't take prohibited hard regs into account.
	(setup_conflict_profitable_regs): Rename to
	get_conflict_profitable_regs.
	(check_hard_reg_p): Check prohibited hard regs.

From-SVN: r172201
2011-04-08 17:17:50 +00:00
Nathan Froyd
dcf0c47e8d utils.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES
gcc/ada/
	* gcc-interface/utils.c (handle_sentinel_attribute): Don't use
	TYPE_ARG_TYPES
	(handle_type_generic_attribute): Likewise.

gcc/c-family/
	* c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
	(handle_type_generic_attribute): Likewise.

gcc/lto/
	* lto-lang.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
	(handle_type_generic_attribute): Likewise.

From-SVN: r172200
2011-04-08 17:05:23 +00:00
Nathan Froyd
44f370bf4c alpha.c (alpha_emit_xfloating_libcall): Call use_reg.
* config/alpha/alpha.c (alpha_emit_xfloating_libcall): Call use_reg.
	* config/xtensa/xtensa.c (xtensa_call_tls_desc): Likewise.
	* config/sparc/sparc.c (sparc_legitimize_tls_address): Likewise.

From-SVN: r172199
2011-04-08 16:48:52 +00:00
John David Anglin
483d7ad32f re PR target/48366 (ICE in extract_constrain_insn_cached, at recog.c:2024)
PR target/48366
	* config/pa/pa.c (hppa_register_move_cost): Increase to 18 cost of
	move from floating point to shift amount register .
	(emit_move_sequence): Remove secondary reload support for floating
	point to shift amount amount register copies.
	(pa_secondary_reload): Return GENERAL_REGS for floating point/shift
	amount register copies.
	* config/pa/pa32-regs.h (HARD_REGNO_MODE_OK): For shift amount
	register, return false if mode isn't a scalar integer mode.
	* config/pa/pa64-regs.h (HARD_REGNO_MODE_OK): Likewise.

From-SVN: r172197
2011-04-08 16:21:39 +00:00
Kai Tietz
b89381a2e4 Missed part of regenerated file.
From-SVN: r172196
2011-04-08 18:12:14 +02:00
Richard Guenther
97e03fa170 gimple.c (gimple_call_flags): Remove kludge.
2011-04-08  Richard Guenther  <rguenther@suse.de>

	* gimple.c (gimple_call_flags): Remove kludge.

From-SVN: r172190
2011-04-08 14:36:14 +00:00
Joseph Myers
8c41bcca5b * de.po: Update.
From-SVN: r172187
2011-04-08 15:29:33 +01:00
Kai Tietz
51e16725b8 configure.ac (libgcj_ld_export_all): Set for windows native targets to export-all-symbols.
2011-04-08  Kai Tietz  <ktietz@redhat.com>

	* configure.ac (libgcj_ld_export_all): Set for windows
	native targets to export-all-symbols.
	(LIBGCJ_LD_EXPORT_ALL): Export libgcj_ld_export_all.
	* Makefile.am (libgcj_la_LDFLAGS): Add LIBGCJ_LD_EXPORT_ALL.
	* sysdep/i386/backtrace.h (MAIN_FUNC): Define for windows
	native targets to DllMain.
	* gcj/javaprims.h (JNICALL): Define it dependent
	for different windows targets.
	* include/jni_md.h: Likewise.
	* headers.txt (_Jv_JNI_ToReflectedField): Mark
	JNICALLS for friends.
	(_Jv_JNI_ToReflectedMethod): Likewise.
	* java/lang/Class.h: Regenerated.
	* java/lang/reflect/Field.h: Regenerated.
	* java/lang/reflect/Constructor.h: Regenerated.
	* java/lang/reflect/Method.h: Regenerated.
	* configure: Regenerated.
	* Makefile.in: Regenerated.
	* include/Makefile.in: Regenerated.
	* testsuite/Makefile.in: Regenerated.
	* gcj/Makefile.in: Regenerated.

From-SVN: r172186
2011-04-08 16:16:38 +02:00
Alexander Monakov
9d40778b0c sel-sched.c (sel_region_init): Move call to sel_setup_region_sched_flags after setup_current_loop_nest.
* sel-sched.c (sel_region_init): Move call to
	sel_setup_region_sched_flags after setup_current_loop_nest.

From-SVN: r172185
2011-04-08 18:10:10 +04:00
Andrey Belevantsev
19ac78921e re PR rtl-optimization/48272 (internal compiler error: in setup_insn_reg_pressure_info, at haifa-sched.c:1124)
PR rtl-optimization/48272

        * sched-deps.c (setup_insn_reg_pressure_info): Export and rename to
        init_insn_reg_pressure_info.  Adjust a caller.
        * sched-int.h (init_insn_reg_pressure_info): Declare.
        * haifa-sched.c (haifa_init_insn): Call init_insn_reg_pressure_info
        when sched-pressure is enabled.

        * g++.dg/opt/pr48272.C: New.

From-SVN: r172183
2011-04-08 17:25:29 +04:00
Richard Guenther
0f8c63cc10 gimple.c (gimple_set_modified): Do not queue calls to MODIFIED_NORETURN_CALLS here ...
2011-04-08  Richard Guenther  <rguenther@suse.de>

	* gimple.c (gimple_set_modified): Do not queue calls to
	MODIFIED_NORETURN_CALLS here ...
	* tree-ssa-operands.c (update_stmt_operands): ... but here.

From-SVN: r172182
2011-04-08 13:22:32 +00:00
Richard Guenther
5e5a425e73 re PR lto/48467 ([LTO] Anomalous behavior of -save-temps)
2011-04-08  Richard Guenther  <rguenther@suse.de>

	PR lto/48467
	* toplev.c (lang_dependent_init): Do not open asm_out_file
	in WPA mode, nor perform debug machinery initialization.
	(finalize): Do not unlink asm_out_file in WPA mode.

From-SVN: r172181
2011-04-08 13:10:27 +00:00
Richard Guenther
9bfc434b7a gimple.h (gimple_call_fntype): New function.
2011-04-08  Richard Guenther  <rguenther@suse.de>

	* gimple.h (gimple_call_fntype): New function.
	(gimple_call_return_type): Use it.
	* expr.c (expand_expr_real_1): Use gimple_call_fntype.
	* gimple-low.c (gimple_check_call_args): Likewise.
	* gimple.c (gimple_call_flags): Likewise.
	(gimple_call_arg_flags): Likewise.
	(gimple_call_return_flags): Likewise.
	* tree-cfg.c (verify_gimple_call): Likewise.
	(do_warn_unused_result): Likewise.
	* tree-ssa-ccp.c (ccp_fold_stmt): Likewise.
	* value-prof.c (gimple_ic_transform): Fix fndecl check.

From-SVN: r172178
2011-04-08 12:19:45 +00:00
Dmitry Melnik
7c1f0b4020 re PR rtl-optimization/48235 (ICE: SIGSEGV in has_dependence_p (sel-sched-ir.c:3263) with -fselective-scheduling2 and custom flags)
PR rtl-optimization/48235
	* sel-sched.c (code_motion_process_successors): Recompute the last
	insn in basic block if control flow changed.
	(code_motion_path_driver): Ditto.  Recompute the first insn as well.
	Update condition for ilist_remove.

testsuite:
	* gcc.dg/pr48235.c: New.

From-SVN: r172177
2011-04-08 15:58:23 +04:00
Alexander Monakov
ea4d630fef re PR rtl-optimization/48302 (ICE: SIGSEGV in reposition_prologue_and_epilogue_notes (function.c:5662) with -fcrossjumping -fselective-scheduling2)
PR rtl-optimization/48302
	* sel-sched-ir.h (sel_add_loop_preheaders): Update prototype.
	* sel-sched-ir.c (sel_add_loop_preheaders): Add 'bbs' argument.  Use
	it to record added preheader blocks.
	* sel-sched.c (setup_current_loop_nest): Add 'bbs' argument.  Pass it
	on to sel_add_loop_preheaders.
	(sel_region_init): Move call to setup_current_loop_nest after
	sel_init_bbs.

testsuite:
	* g++.dg/opt/pr48302.C: New.

From-SVN: r172176
2011-04-08 15:53:25 +04:00
Alexander Monakov
07643d76c7 re PR target/48273 (ICE: in create_copy_of_insn_rtx, at sel-sched-ir.c:5604 with -fsel-sched-pipelining -fselective-scheduling2 -march=core2)
PR target/48273
	* cfgloop.h (loop_has_exit_edges): New helper.
	* sel-sched-ir.c (init_global_and_expr_for_insn): Make CALLs
	non-clonable.
	* sel-sched.c (sel_setup_region_sched_flags): Don't pipeline loops
	that have no exit edges.

testsuite:
	* g++.dg/opt/pr48273.C: New.

From-SVN: r172175
2011-04-08 15:49:43 +04:00
Alexander Monakov
1f3b2b4e29 re PR rtl-optimization/48442 (ICE: in init_seqno, at sel-sched.c:6767 with -Os -fselective-scheduling2 --param max-sched-extend-regions-iters=100)
PR rtl-optimization/48442
	* sel-sched.c (init_seqno): Remove number_of_insns argument.  Update
	all callers.  Adjust assert.

testsuite:
	* gcc.dg/pr48442.c: New.

From-SVN: r172173
2011-04-08 15:44:51 +04:00
Jakub Jelinek
554f1948b9 re PR tree-optimization/48377 (miscompilation at -O3)
PR tree-optimization/48377
	* tree-vect-data-refs.c (vector_alignment_reachable_p): Set
	is_packed to true even for types with smaller TYPE_ALIGN than
	TYPE_SIZE.

	* gcc.dg/vect/pr48377.c: New test.

From-SVN: r172172
2011-04-08 13:38:19 +02:00
Richard Guenther
ddf723888e re PR bootstrap/48513 (Revision 172166 breaks bootstrap)
2011-04-08  Richard Guenther  <rguenther@suse.de>

	PR bootstrap/48513
	* doc/tm.texi: Re-generate.

From-SVN: r172171
2011-04-08 11:28:23 +00:00
Wei Guozhi
0c27e2d89b arm-protos.h (arm_attr_length_push_multi): New prototype.
* config/arm/arm-protos.h (arm_attr_length_push_multi): New prototype.
	* config/arm/arm.c (arm_attr_length_push_multi): New function.
	* config/arm/arm.md (*push_multi): Change the length computation to
	call a C function.

From-SVN: r172169
2011-04-08 09:17:42 +00:00
Anatoly Sokolov
07c5f94e82 tm.texi.in (ASM_OUTPUT_BSS): Remove documentation.
* doc/tm.texi.in (ASM_OUTPUT_BSS): Remove documentation.
	(BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): Update documentation.
	* doc/tm.texi: Regenerate.
	* system.h (ASM_OUTPUT_BSS): Poison.
	* varasm.c (asm_output_bss): Remove function.
	(emit_bss, init_varasm_once): Don't use ASM_OUTPUT_BSS macro.
	
	* config/frv/frv.h (BSS_SECTION_ASM_OP): Remove comment.
	* config/frv/fr30.h (BSS_SECTION_ASM_OP): Likewise.
	* config/i386/djgpp.h (BSS_SECTION_ASM_OP): Likewise.
	* config/i386/i386elf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS):
	Likewise.
	* config/sh/sh.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS):
	Likewise.
	* config/m68k/m68kelf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS):
	Likewise.
	* config/m68k/netbsd-elf.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.

From-SVN: r172166
2011-04-08 10:44:09 +04:00
Jason Merrill
f5a28e87f5 re PR c++/48500 (Regression: Failing to convert template argument to concrete type, in C++0x mode.)
PR c++/48500
	* semantics.c (potential_constant_expression_1) [CALL_EXPR]: Check
	arguments even if we don't know the function.

From-SVN: r172165
2011-04-08 02:08:31 -04:00
Jason Merrill
b06a1f50c5 re PR c++/48481 (C++ overloading memory hog)
PR c++/48481
	* tree.c (build_overload): Allow an unwrapped FUNCTION_DECL
	at the end of the chain.
	* pt.c (dependent_template_p): Use OVL_CURRENT/NEXT.
	(iterative_hash_template_arg): Likewise.

From-SVN: r172164
2011-04-08 02:08:21 -04:00
Jason Merrill
3a2cb4d037 re PR c++/48481 (C++ overloading memory hog)
PR c++/48481
	* cp-tree.h (OVL_ARG_DEPENDENT): New.
	* name-lookup.c (add_function): Set it.
	* semantics.c (finish_call_expr): Free OVERLOADs if it's set.

From-SVN: r172163
2011-04-08 02:08:13 -04:00
Jason Merrill
c9b558895e re PR c++/48481 (C++ overloading memory hog)
PR c++/48481
	* call.c (build_user_type_conversion_1): Use lookup_fnfields_slot.
	Release unused vector.

From-SVN: r172162
2011-04-08 02:08:04 -04:00
Jason Merrill
6ae81785e5 re PR c++/48451 ([C++0x][SFINAE] Failures with n-ary initialization expressions (with template default argument))
PR c++/48451
	* pt.c (fn_type_unification): Don't clear incomplete pack flag.
	(type_unification_real): Clear it here instead.

From-SVN: r172159
2011-04-07 22:03:25 -04:00
GCC Administrator
ca1c6ce3ad Daily bump.
From-SVN: r172155
2011-04-08 00:18:51 +00:00
Joseph Myers
5f2c36e1e8 rx.opt (rx610, [...]): Use Enum not Name on EnumValue lines.
* config/rx/rx.opt (rx610, rx200, rx600): Use Enum not Name on
	EnumValue lines.

From-SVN: r172149
2011-04-07 22:48:01 +01:00
Jason Merrill
d0bb79ac89 re PR c++/48468 ([C++0x][SFINAE] noexcept operator does not handle function templates well)
PR c++/48468
	* except.c (build_noexcept_spec): Propagate error_mark_node.
	(finish_noexcept_expr): Likewise.

From-SVN: r172148
2011-04-07 17:48:00 -04:00
Jason Merrill
6dab6cf121 re PR c++/48452 ([C++0x][SFINAE] Failures with n-ary initialization expressions (in return type))
PR c++/48452
	* typeck.c (build_x_compound_expr_from_list): Return error_mark_node
	in SFINAE context.

From-SVN: r172147
2011-04-07 17:47:53 -04:00
Jason Merrill
b46c79a1f6 re PR c++/48450 ([C++0x][SFINAE] Hard errors with static_cast expressions)
PR c++/48450
	* call.c (resolve_args): Take complain.
	(build_new_function_call, build_operator_new_call): Pass it.
	(build_op_call, build_new_op, build_new_method_call): Pass it.

From-SVN: r172146
2011-04-07 17:47:45 -04:00
Jason Merrill
3f89235e9d re PR c++/48450 ([C++0x][SFINAE] Hard errors with static_cast expressions)
PR c++/48450
	* typeck.c (check_for_casting_away_constness): Take complain.
	(build_static_cast_1, build_reinterpret_cast_1): Pass it.
	(build_const_cast_1): Pass it.  Take full complain parm.
	(build_const_cast, cp_build_c_cast): Adjust.

From-SVN: r172145
2011-04-07 17:47:38 -04:00