Commit Graph

94162 Commits

Author SHA1 Message Date
Ian Lance Taylor fb2a42372f Make-lang.in (cp/class.o): Depend upon gt-cp-class.h.
* Make-lang.in (cp/class.o): Depend upon gt-cp-class.h.
	(cp/semantics.o): Depend upon gt-cp-semantics.h.

From-SVN: r148544
2009-06-16 17:56:59 +00:00
Wim Lewis 6975f17fe7 ffi.c: Avoid clobbering cr3 and cr4, which are supposed to be callee-saved.
2009-06-16  Wim Lewis  <wiml@hhhh.org>

	* src/powerpc/ffi.c: Avoid clobbering cr3 and cr4, which are
	supposed to be callee-saved.
	* src/powerpc/sysv.S (small_struct_return_value): Fix overrun of
	return buffer for odd-size structs.

From-SVN: r148543
2009-06-16 19:55:39 +02:00
Andreas Tobler 7bbcc28642 re PR libffi/40444 (libffi badly broken with -m64 by some revision between 148383 and 148472.)
2009-06-16  Andreas Tobler  <a.tobler@schweiz.org>

	PR libffi/40444
	* testsuite/lib/libffi-dg.exp (libffi_target_compile): Add
	allow_stack_execute for Darwin.

From-SVN: r148542
2009-06-16 19:28:29 +02:00
Ian Lance Taylor 95228603e6 * Makefile.in (tree-vect-stmts.o): Depend upon $(TOPLEV_H).
From-SVN: r148541
2009-06-16 16:59:03 +00:00
Ian Lance Taylor 9c727c9a3e toplev.h (floor_log2): If GCC_VERSION >= 3004, declare as static inline, not extern inline.
* toplev.h (floor_log2): If GCC_VERSION >= 3004, declare as static
	inline, not extern inline.
	(exact_log2): Likewise.
	* toplev.c (floor_log2): Only define if GCC_VERSION < 3004. Don't
	test CLZ_HWI.
	(exact_log2): Likewise, but don't test CTZ_HWI.

From-SVN: r148540
2009-06-16 16:55:41 +00:00
Ian Lance Taylor 5fd8300bd5 bitmap.c (bitmap_clear): Don't declare as inline.
* bitmap.c (bitmap_clear): Don't declare as inline.
	* gimple.c (gimplify_assign): Likewise.
	* tree-ssa-sccvn.c (vn_nary_op_compute_hash): Likewise.
	* haifa-sched.c (insn_cost): Don't declare with HAIFA_INLINE.
	(sched_scan_info): Remove duplicate definition.

From-SVN: r148539
2009-06-16 16:46:31 +00:00
Andrew Haley fe673cc9cb configure.ac (TARGETDIR): Add missing blank lines.
2009-06-16  Andrew Haley  <aph@redhat.com>

	* configure.ac (TARGETDIR): Add missing blank lines.
	* configure: Regenerate.

From-SVN: r148538
2009-06-16 16:14:54 +00:00
Ian Lance Taylor 7d882b8356 c-common.c (skip_evaluation): Don't define.
./:	* c-common.c (skip_evaluation): Don't define.
	(c_inhibit_evaluation_warnings): Define global variable.
	(overflow_warning): Check c_inhibit_evaluation_warnings rather
	than skip_evaluation.
	(convert_and_check, warn_for_div_by_zero): Likewise.
	* c-common.h (skip_evaluation): Don't declare.
	(c_inhibit_evaluation_warnings): Declare.
	* c-parser.c (c_parser_typeof_specifier): Set
	c_inhibit_evaluation_warnings rather than skip_evaluation.
	(c_parser_conditional_expression): Likewise.
	(c_parser_binary_expression): Likewise.
	(c_parser_sizeof_expression): Likewise.
	(c_parser_alignof_expression): Likewise.
	* c-typeck.c (build_indirect_ref): Check
	c_inhibit_evaluation_warnings rather than skip_evaluation.
	(build_conditional_expr, build_binary_op): Likewise.
cp/:
	* parser.c (cp_unevaluated_operand): Define global variable.
	(cp_parser_question_colon_clause): Increment
	c_inhibit_evaluation_warnings when evaluating an expression which
	will never be executed.
	(cp_parser_decltype): Increment cp_unevaluated_operand and
	c_inhibit_evaluation_warnings, not skip_evaluation.
	(cp_parser_sizeof_operand): Likewise.
	(cp_parser_enclosed_template_argument_list): Save
	cp_unevaluated_operand and c_inhibit_evaluation_warnings, not
	skip_evaluation.
	* cp-tree.h (struct saved_scope): Remove skip_evaluation field.
	Add unevaluated_operand and inhibit_evaluation_warnings fields.
	(cp_unevaluated_operand): Declare.
	* name-lookup.c (push_to_top_level): Save cp_unevaluated_operand
	and c_inhibit_evaluation_warnings rather than skip_evaluation.
	(pop_from_top_level): Restore cp_unevaluated_operand and
	c_inhibit_evaluation_warnings rather than skip_evaluation.
	* class.c (build_base_path): Check cp_unevaluated_operand rather
	than skip_evaluation.
	* typeck.c (build_class_member_access_expr): Likewise.
	(cp_build_binary_op): Don't warn about bad shift counts if
	c_inhibit_evaluation_warnings is non-zero.
	* pt.c (coerce_template_parms): Save state of
	cp_unevaluated_operand and c_inhibit_evaluation_warnings, not
	skip_evaluation.
	(tsubst_aggr_type): Likewise.
	(tsubst_pack_expansion): Check cp_unevaluated_operand rather than
	skip_evaluation.
	(tsubst_copy): Likewise.
	(tsubst): Set cp_unevaluated_operand and
	c_inhibit_evaluation_warnings, not skip_evaluation.
	(tsubst_copy_and_build): Likewise.
	* call.c (convert_arg_to_ellipsis): Check cp_unevaluated_operand
	rather than skip_evaluation.
	* decl2.c (mark_used): Likewise.
	* semantics.c (finish_non_static_data_member): Likewise.
	* cvt.c (cp_convert_and_check): Check
	c_inhibit_evaluation_warnings rather than skip_evaluation.
	* mangle.c (write_type): Set cp_unevaluated_operand rather than
	skip_evaluation.
testsuite/:
	* g++.dg/warn/skip-1.C: New testcase.

From-SVN: r148535
2009-06-16 14:24:40 +00:00
Richard Guenther 2e4078422e tree-ssa-alias.c (is_escape_site): Remove.
2009-06-16  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-alias.c (is_escape_site): Remove.
	* tree-ssa-alias.h (enum escape_type): Remove.
	(is_escape_site): Likewise.
	* tree-ssa-structalias.c (find_func_aliases): Handle escapes
	via casts and asms without deferring to is_escape_site.

From-SVN: r148534
2009-06-16 14:12:44 +00:00
Jakub Jelinek f2ff88729a re PR middle-end/40446 (ICE in gen_lowpart_general)
PR middle-end/40446
	* expr.c (expand_expr_real_1) <case VIEW_CONVERT_EXPR>: Don't
	use gen_lowpart if op0 has complex mode.

	* g++.dg/other/pr40446.C: New test.

From-SVN: r148533
2009-06-16 15:48:07 +02:00
Matthias Klose 345f9a8b8e Regenerate classfiles in rev 148530 with correct ecj version
From-SVN: r148532
2009-06-16 13:36:37 +00:00
Matthias Klose a4194b1350 Main.java (getGjdocVersion): Use gnu.classpath.Configuration.CLASSPATH_VERSION as version number.
2009-06-16  Matthias Klose  <doko@ubuntu.com>

        * tools/gnu/classpath/tools/gjdoc/Main.java (getGjdocVersion): Use
        gnu.classpath.Configuration.CLASSPATH_VERSION as version number.
        * tools/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java
        (getDocletVersion): Likewise.
        * tools/classes/gnu/classpath/tools/gjdoc/Main*.class: Regenerate.
        * tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet*.class:
        Regenerate.

From-SVN: r148530
2009-06-16 13:22:43 +00:00
Nick Clifton ee07afa0e1 re PR fortran/10197 (direct acces files not unformatted by default)
PR 10197
        * testsuite/test-demangle.c: Rename getline to get_line to avoid
        conflicts with system function of the same name.

From-SVN: r148526
2009-06-16 12:43:58 +00:00
Richard Guenther de70bb20ba tree-ssa-structalias.c (do_ds_constraint): Stores in global variables add them to ESCAPED.
2009-06-16  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-structalias.c (do_ds_constraint): Stores in global
	variables add them to ESCAPED.
	(find_func_aliases): Do not make all indirectly stored values
	escaped.

	* gcc.dg/tree-ssa/pta-escape-1.c: New testcase.
	* gcc.dg/tree-ssa/pta-escape-2.c: Likewise.
	* gcc.dg/tree-ssa/pta-escape-3.c: Likewise.
	* gcc.dg/tree-ssa/ssa-fre-27.c: Likewise.

From-SVN: r148525
2009-06-16 12:31:49 +00:00
Rafael Avila de Espindola daa0eeb8ab winnt.c (i386_pe_encode_section_info): Update call to make_decl_one_only.
2009-06-16  Rafael Avila de Espindola  <espindola@google.com>

	* config/i386/winnt.c (i386_pe_encode_section_info): Update call to
	make_decl_one_only.

From-SVN: r148523
2009-06-16 10:59:59 +00:00
Martin Jambor 0ec19b8c10 re PR tree-optimization/40432 (verify_stmts failed with -O2: non-register as LHS of unary operation)
2009-06-16  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/40432
	* tree-sra.c (sra_modify_assign): When creating VIEW_CONVERT_EXPR,
	check whether we need to force gimple register operand.

	* testsuite/gcc.c-torture/compile/pr40432.c: New file.

From-SVN: r148522
2009-06-16 12:16:40 +02:00
Andrew Haley 3bc462c29c cls_align_sint64.c, [...]: Fix printf format specifiers.
2009-06-16  Andrew Haley  <aph@redhat.com>

        * testsuite/libffi.call/cls_align_sint64.c,
        testsuite/libffi.call/cls_align_uint64.c,
        testsuite/libffi.call/cls_longdouble_va.c,
        testsuite/libffi.call/cls_ulonglong.c,
        testsuite/libffi.call/return_ll1.c,
        testsuite/libffi.call/stret_medium2.c: Fix printf format
        specifiers.
        * testsuite/libffi.call/ffitest.h,
        testsuite/libffi.special/ffitestcxx.h (PRIdLL, PRIuLL): Define.

From-SVN: r148521
2009-06-16 10:15:31 +00:00
Martin Jambor 2b26b801df re PR tree-optimization/40413 (Internal error in connection with optimization and allocatable objects)
2009-06-16  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/40413
	* tree-sra.c (load_assign_lhs_subreplacements): Pass offset to
	build_ref_for_offset.
	(propagate_subacesses_accross_link): Fix a typo in a comment.

	* testsuite/gfortran.fortran-torture/compile/pr40413.f90: New file.

From-SVN: r148520
2009-06-16 12:11:55 +02:00
Janus Weil 8ad15a0a8d re PR fortran/36947 (Attributes not fully checked comparing actual vs dummy procedure)
2009-06-16  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/36947
	PR fortran/40039
	* expr.c (gfc_check_pointer_assign): Call 'gfc_compare_interfaces' with
	error message.
	* gfortran.h (gfc_compare_interfaces): Additional argument.
	* interface.c (operator_correspondence): Removed.
	(gfc_compare_interfaces): Additional argument to return error message.
	Directly use the code from 'operator_correspondence' instead of calling
	the function. Check for OPTIONAL. Some rearrangements.
	(check_interface1): Call 'gfc_compare_interfaces' without error message.
	(compare_parameter): Call 'gfc_compare_interfaces' with error message.
	* resolve.c (check_generic_tbp_ambiguity): Call 'gfc_compare_interfaces'
	without error message.


2009-06-16  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/36947
	PR fortran/40039
	* gfortran.dg/dummy_procedure_1.f90: Extended test case.
	* gfortran.dg/interface_20.f90: Modified error messages.
	* gfortran.dg/interface_21.f90: Ditto.
	* gfortran.dg/interface_26.f90: Ditto.
	* gfortran.dg/interface_27.f90: Ditto.
	* gfortran.dg/interface_28.f90: Extended test case.
	* gfortran.dg/interface_29.f90: New.
	* gfortran.dg/proc_decl_7.f90: Modified error messages.
	* gfortran.dg/proc_decl_8.f90: Ditto.
	* gfortran.dg/proc_ptr_11.f90: Ditto.
	* gfortran.dg/proc_ptr_15.f90: Ditto.

From-SVN: r148519
2009-06-16 11:06:13 +02:00
Ira Rosen 7c5222ff1a tree-parloops.c (loop_parallel_p): Call vect_is_simple_reduction with additional parameter.
* tree-parloops.c (loop_parallel_p): Call vect_is_simple_reduction
	with additional parameter.
	* tree-vectorizer.h (enum vect_def_type): Add new value 
	vect_nested_cycle.
	(enum vect_relevant): Add comments.
	(vect_is_simple_reduction): Add new argument.
	* tree-vect-loop.c (vect_analyze_scalar_cycles_1): Add comments.
	Detect nested cycles.
	(vect_is_simple_reduction): Update documentation, add an argument to
	distinguish inner-loop reduction from nested cycle, detect nested
	cycles, fix printings and indentation, don't swap operands in case
	of nested cycle.
	(get_initial_def_for_reduction): Handle subtraction.
	(vect_create_epilog_for_reduction): Add new argument to specify
	reduction variable.
	(vect_finalize_reduction): Handle subtraction, fix comments.
	(vectorizable_reduction): Handle nested cycles. In case of nested cycle
	keep track of the reduction variable position. Call 
	vect_is_simple_reduction with additional parameter. Use original 
	statement code in reduction epilogue for nested cycle. Call
	vect_create_epilog_for_reduction with additional parameter.
	* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Assert inner-loop
	vectorization.
	(vect_recog_widen_sum_pattern): Likewise.
	* tree-vect-stmts.c (process_use): Distinguish between nested cycles
	and reductions.
	(vect_mark_stmts_to_be_vectorized): Likewise.
	(vect_get_vec_def_for_operand): Handle nested cycles.

From-SVN: r148518
2009-06-16 07:21:12 +00:00
Tobias Burnus 3ba558dba3 re PR fortran/40383 (incorrect bounds checking with optional character arguments)
2009-06-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40383
        * trans-decl.c (create_function_arglist): Copy formal charlist
        * to
        have a proper passed_length for -fcheck=bounds.

2009-06-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40383
        * gfortran.dg/bounds_check_strlen_8.f90: New test.

From-SVN: r148517
2009-06-16 08:57:09 +02:00
Ralf Wildenhues d376d54576 invoke.texi (Debugging Options): Fix option index entries for -fdump-statistics...
gcc/
	* doc/invoke.texi (Debugging Options): Fix option index entries
	for -fdump-statistics, -frandom-seed add entries for
	-fdump-tree-original, -fdump-tree-optimized, -frandom-seed.
	(FRV Options): Fix entries for -mTLS, -mtls.
	(HPPA Options): Fix entries for -mgnu-ld, -mhp-ld.
	(i386 and x86-64 Options): Fix entry for -mno-red-zone.
	(M68hc1x Options): Fix @itemx for -mnominmax.
	(MCore Options): Fix entry for -mno-lsim.
	(MMIX Options): Fix entry for -mabi=mmixware.
	(PDP-11 Options): Fix entry for -mbcopy-builtin.

From-SVN: r148516
2009-06-16 06:41:44 +00:00
Basile Starynkevitch bd117bb6b4 plugins.texi (Interacting with the GCC Garbage Collector): Mention the plugin mode of gengtype.
2009-06-16  Basile Starynkevitch  <basile@starynkevitch.net>

	* gcc/doc/plugins.texi (Interacting with the GCC Garbage Collector):
	Mention the plugin mode of gengtype.
	* gcc/doc/gty.texi (Source Files Containing Type Information):
	Likewise.
	* gcc/gengtype.c: Updated copyright.
	(plugin_files, nb_plugin_files) Added new static variables.
	(measure_input_list) Care about plugin_files.
	(write_rtx_next): Added early return in plugin mode.
	(create_file): Updated copyright year in generated file. Added
	asserts.
	(oprintf): Added early return if NULL outf.
	(get_output_file_with_visibility): Care of plugin_files.
	(get_output_file_name): May return null.
	(write_local): Added early return.
	(put_mangled_filename): Ditto.
	(finish_root_table): Added check for base_files.
	(write_roots): Care about null when plugins.
	(main): Added plugin mode.

From-SVN: r148515
2009-06-16 05:56:39 +00:00
Ian Lance Taylor e1b7793c8e df-problems.c (df_simulate_one_insn_forwards): Fix braces in switch.
./:	* df-problems.c (df_simulate_one_insn_forwards): Fix braces in
	switch.
	* gcov.c (read_count_file): Add braces around variables declared
	before label.

	* c.opt (Wjump-misses-init): New warning.
	* c-opts.c (c_common_handle_option): Set warn_jump_misses_init for
	-Wall and -Wc++-compat if not already set.
	(c_common_post_options): Clear warn_jump_misses_init if it was not
	set.
	* c-decl.c (struct c_binding): Change type field to a union with
	new label field.  Make it the first field in the struct.  Update
	references to type to use u.type instead.
	(struct c_spot_bindings): Define.
	(struct c_goto_bindings): Define.
	(c_goto_bindings_p): Define, along with VECs.
	(struct c_label_vars): Define.
	(struct c_scope): Add has_label_bindings field.
	(bind_label, set_spot_bindings): New static functions.
	(decl_jump_unsafe, update_spot_bindings): New static functions.
	(update_label_decls): New static function.
	(pop_scope): Call update_label_decls.  Don't call c_end_vm_scope.
	Update binding u.label field to shadowed field.
	(c_binding_start_stmt_expr): New function.
	(c_binding_end_stmt_expr): New function.
	(pushdecl): Don't call c_begin_vm_scope.
	(make_label): Add defining and p_label_vars parameters.  Change
	all callers.
	(lookup_label): Correct test for whether a label has not yet been
	defined.  Call bind_label rather than bind.
	(warn_about_goto): New static function.
	(lookup_label_for_goto): New function.
	(declare_label): Call bind_label rather than bind.
	(check_earlier_gotos): New static function.
	(define_label): Don't give errors about jumping into statement
	expressions or scopes of variably modified types.  Call
	set_spot_bindings and check_earlier_gotos.  Call bind_label
	instead of bind.  Don't set label_context_stack_se or
	label_context_stack_vm.
	(c_get_switch_bindings): New function.
	(c_release_switch_bindings): New function.
	(c_check_switch_jump_warnings): New function.
	(start_function): Don't set label_context_stack_se or
	label_context_stack_vm.
	(finish_function): Likewise.
	* c-typeck.c (label_context_stack_se): Don't define.
	(label_context_stack_vm): Don't define.
	(c_finish_goto_label): Call lookup_label_for_goto rather than
	lookup_label.  Don't give errors about jumping into a statement
	expression or the scope of a variably modified type.  Don't set
	label_context_stack_se or label_context_stack_vm.
	(struct c_switch): Remove blocked_stmt_expr and blocked_vm
	fields.  Add bindings field.
	(c_start_case): Don't set deleted fields.  Set bindings field.
	(do_case): Rework order of tests.  Don't check blocked_stmt_expr
	or blocked_vm.  Call c_check_switch_jump_warnings.
	(c_finish_case): Don't test blocked_stmt_expr field.  Call
	c_release_switch_bindings.
	(c_begin_stmt_expr): Don't increment blocked_stmt_expr in
	c_switch_stack.  Don't walk label_context_stack_se labels.  Don't
	set label_context_stack_se.  Call c_bindings_start_stmt_expr.
	(c_finish_stmt_expr): Don't decrement blocked_stmt_expr in
	c_switch_stack.  Don't walk label_context_stack_se labels.  Don't
	set label_context_stack_se.  Call c_bindings_end_stmt_expr.
	(c_begin_vm_scope, c_end_vm_scope): Don't define.
	* c-tree.h (C_DECL_UNJUMPABLE_STMT_EXPR): Don't define.
	(C_DECL_UNDEFINABLE_STMT_EXPR): Don't define.
	(C_DECL_UNJUMPABLE_VM): Don't define.
	(C_DECL_UNDEFINABLE_VM): Don't define.
	(struct c_label_list): Don't define.
	(struct c_label_context_se): Don't define.
	(struct c_label_context_vm): Don't define.
	(struct c_spot_bindings): Declare.
	(c_bindings_start_stmt_expr): Declare.
	(c_bindings_end_stmt_expr): Declare.
	(lookup_label_for_goto): Declare.
	(c_get_switch_bindings, c_release_switch_bindings): Declare.
	(c_check_switch_jump_warnings): Declare.
	(label_context_stack_se, label_context_stack_vm): Don't declare.
	(c_finish_goto_label): Update declaration.
	(c_begin_vm_scope, c_end_vm_scope): Don't declare.
	* doc/invoke.texi (Option Summary): Mention -Wjump-misses-init.
	(Warning Options): Document -Wjump-misses-init.
cp/:
	* parser.c (cp_parser_direct_declarator): Add braces around
	variables declared before label.
objc/:
	* objc-act.c (objc_start_function): Don't set
	label_context_stack_se or label_context_stack_vm.
testsuite/:
	* gcc.dg/Wjump-misses-init-1.c: New testcase.
	* gcc.dg/Wjump-misses-init-2.c: New testcase.
	* gcc.dg/c99-vla-jump-5.c: Adjust expected error messages.
	Recognize new notes.
	* gcc.dg/stmt-expr-label-2.c: Likewise.
	* gcc.dg/c99-vla-jump-1.c: Recognize new notes.  Fix column
	numbers.
	* gcc.dg/c99-vla-jump-2.c: Recognize new notes.
	* gcc.dg/c99-vla-jump-3.c: Recognize new notes.
	* gcc.dg/c99-vla-jump-4.c: Likewise.
	* gcc.dg/stmt-expr-label-1.c: Likewise.
	* gcc.dg/stmt-expr-label-3.c: Likewise.
	* gcc.dg/vla-8.c: Likewise.  Move error message to different
	line.

From-SVN: r148512
2009-06-16 05:12:15 +00:00
Kaveh R. Ghazi dee6f57529 builtin-math-6.c: Robustify and fix clog cases.
* gcc.dg/torture/builtin-math-6.c: Robustify and fix clog cases.

From-SVN: r148511
2009-06-16 04:30:46 +00:00
GCC Administrator 9a3fb03eb0 Daily bump.
From-SVN: r148510
2009-06-16 00:16:33 +00:00
Tom Tromey ee47095bb4 printers.py (StdMapPrinter.__init__): Don't set self.iter.
* python/libstdcxx/v6/printers.py (StdMapPrinter.__init__): Don't
	set self.iter.
	(StdMapPrinter.to_string): Make a new iterator.
	(StdMapPrinter.children): Likewise.
	(StdSetPrinter.__init__): Don't set self.iter.
	(StdSetPrinter.to_string): Make a new iterator.
	(StdSetPrinter.children): Likewise.

From-SVN: r148506
2009-06-15 20:54:22 +00:00
Jakub Jelinek 98a129b9c4 tree-object-size.c (addr_object_size): Fix a pasto in the last change.
* tree-object-size.c (addr_object_size): Fix a pasto in the last
	change.

	* gcc.dg/builtin-object-size-7.c: New test.

From-SVN: r148503
2009-06-15 20:48:00 +02:00
Andrew Haley 081b044b49 err_bad_typedef.c: xfail everywhere.
2009-06-15  Andrew Haley  <aph@redhat.com>

	* testsuite/libffi.call/err_bad_typedef.c: xfail everywhere.
	* testsuite/libffi.call/err_bad_abi.c: Likewise.

From-SVN: r148499
2009-06-15 17:14:53 +00:00
Andrew Haley b1b1734a7f Fix bad checkin.
From-SVN: r148498
2009-06-15 17:14:29 +00:00
Jakub Jelinek 4250d865a9 re PR testsuite/40426 (Revision 148408 caused many DWARF tests faulures)
PR testsuite/40426
	* lib/gcc-dg.exp (gcc-dg-debug-runtest): For type -gdwarf-2 and
	level != "" use separate -gdwarf-2 -g${level} options instead of
	-gdwarf-2${level}.
	* lib/gfortran-dg.exp (gfortran-dg-debug-runtest): Likewise.
	* gfortran.dg/debug/pr37738.f: Also skip if -gdwarf-2 -g1.
	* gfortran.dg/debug/pr35154-dwarf2.f: Likewise.

From-SVN: r148497
2009-06-15 19:08:02 +02:00
Rafael Avila de Espindola 19751f1ff2 cgraph.c (cgraph_make_node_local): Use DECL_COMDAT_GROUP.
2009-06-15  Rafael Avila de Espindola  <espindola@google.com>

	* cgraph.c (cgraph_make_node_local): Use DECL_COMDAT_GROUP.

From-SVN: r148494
2009-06-15 14:52:41 +00:00
Aldy Hernandez d40eb15883 except.c (init_eh): Use BUILTINS_LOCATION when calling build_decl.
* except.c (init_eh): Use BUILTINS_LOCATION when calling build_decl.
        * tree-eh.c (lower_try_finally_switch): Initialize tf_loc.

From-SVN: r148493
2009-06-15 14:27:18 +00:00
Rafael Avila de Espindola fc26fae3db cgraphunit.c (cgraph_function_versioning,save_inline_function_body): Use DECL_COMDAT_GROUP instead of DECL_ONE_ONLY.
2009-06-15  Rafael Avila de Espindola  <espindola@google.com>

	* cgraphunit.c (cgraph_function_versioning,save_inline_function_body):
	Use DECL_COMDAT_GROUP instead of DECL_ONE_ONLY.
	* cgraph.c (cgraph_create_virtual_clone): Use DECL_COMDAT_GROUP.
	* config/i386/i386.c (ix86_file_end): Compute DECL_COMDAT_GROUP.
	* dwarf2asm.c(dw2_force_const_mem): Update call to make_decl_one_only.
	* langhooks-def.h (lhd_comdat_group, LANG_HOOKS_COMDAT_GROUP): Remove.
	(LANG_HOOKS_DECLS): Remove LANG_HOOKS_COMDAT_GROUP.
	* langhooks.c (lhd_comdat_group): Remove.
	* langhooks.h (lang_hooks_for_decls): Remove comdat_group.
	* tree.h (DECL_COMDAT_GROUP): New.
	(DECL_ONE_ONLY): Use DECL_COMDAT_GROUP.
	(tree_decl_with_vis): Add comdat_group. Remove one_only.
	(make_decl_one_only): Change signature.
	* varasm.c (get_emutls_init_templ_addr, emutls_decl): Update call to
	make_decl_one_only.
	(make_decl_one_only): Change signature.
	(default_elf_asm_named_section): Use DECL_COMDAT_GROUP.

2009-06-15  Rafael Avila de Espindola  <espindola@google.com>

	* cp-objcp-common.h (LANG_HOOKS_COMDAT_GROUP): Remove.
	* cp-tree.h (cxx_comdat_group): Change signature.
	* decl.c (duplicate_decls): Use DECL_COMDAT_GROUP.
	(cxx_comdat_group): Change signature.
	* decl2.c (comdat_linkage, maybe_make_one_only): Update call to
	make_decl_one_only.
	(constrain_visibility, get_guard): Use DECL_COMDAT_GROUP.
	* method.c (use_thunk): Update call to make_decl_one_only.
	* optimize.c (maybe_clone_body): Use DECL_COMDAT_GROUP

2009-06-15  Rafael Avila de Espindola  <espindola@google.com>

	* g++.dg/abi/mangle11.C: Update warning line.
	* g++.dg/abi/mangle12.C: Update warning line.
	* g++.dg/abi/mangle17.C: Update warning line.
	* g++.dg/abi/mangle20-2.C: Update warning line.

From-SVN: r148492
2009-06-15 14:25:50 +00:00
Ryan Mansfield 144c917562 configure.ac: Define is_elf for QNX Neutrino targets.
* configure.ac: Define is_elf for QNX Neutrino targets.
* configure: Regenerate.

From-SVN: r148491
2009-06-15 14:09:43 +00:00
Andreas Krebbel c3d1e92298 optimize-bswap-1.c: Split into these two:
2009-06-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gcc.dg/optimize-bswap-1.c: Split into these two:
	* gcc.dg/optimize-bswapsi-1.c: New testcase.
	* gcc.dg/optimize-bswapdi-1.c: New testcase.

From-SVN: r148487
2009-06-15 10:29:47 +00:00
Richard Guenther 0eb927358f re PR middle-end/40439 (Bootstrap broken on FreeBSD in tree.c)
2009-06-15  Richard Guenther  <rguenther@suse.de>

	PR middle-end/40439
	* tree.c (widest_int_cst_value): Fix bootstrap on 32bit HWI hosts.

From-SVN: r148486
2009-06-15 10:05:29 +00:00
Andreas Krebbel 0ab352d518 tree-ssa-math-opts.c: Remove extra divide.
2009-06-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* tree-ssa-math-opts.c: Remove extra divide.

From-SVN: r148485
2009-06-15 09:28:38 +00:00
Andreas Krebbel 677fbff437 s390.md ("bswap<mode>2"): Only available on z900.
2009-06-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.md ("bswap<mode>2"): Only available on z900.

From-SVN: r148483
2009-06-15 09:24:41 +00:00
GCC Administrator 1d6b0cb977 Daily bump.
From-SVN: r148480
2009-06-15 00:16:58 +00:00
Francois-Xavier Coudert fa10ccb275 fmain.c (main): Don't PREFIX set_args.
* fmain.c (main): Don't PREFIX set_args.
        * libgfortran.h (set_args): Use iexport_proto.
        * runtime/main.c (set_args): Use iexport.

From-SVN: r148472
2009-06-14 16:52:49 +00:00
Andreas Krebbel 03bd2f1af7 passes.c: Add bswap pass.
2009-06-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* passes.c: Add bswap pass.
	* tree-pass.h: Add pass_optimize_bswap declaration.
	* tree-ssa-math-opts.c: Include diagnostics.h for print_gimple_stmt.
	Include rtl.h, expr.h and optabs.h for optab_handler check.
	(struct symbolic_number, pass_optimize_bswap): New definition.
	(do_shift_rotate, verify_symbolic_number_p): New functions.
	(find_bswap_1, find_bswap, execute_optimize_bswap): New functions.
	(gate_optimize_bswap): New function.
	* tree.c (widest_int_cst_value): New function.
	* tree.h (widest_int_cst_value): Prototype added.

2009-06-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gcc.dg/optimize-bswap-1.c: New testcase.

From-SVN: r148471
2009-06-14 14:45:32 +00:00
GCC Administrator a810f82f7b Daily bump.
From-SVN: r148466
2009-06-14 00:16:40 +00:00
Steven Bosscher fb4c464040 cfgcleanup.c (old_insns_match_p): Remove code to substitute REG_EQUAL/REG_EQUIV notes.
* cfgcleanup.c (old_insns_match_p): Remove code to substitute
	REG_EQUAL/REG_EQUIV notes.

From-SVN: r148463
2009-06-13 23:15:48 +00:00
Richard Guenther 1d24fdd92a re PR c++/40389 (optimizer bug (possibly))
2009-06-14  Richard Guenther  <rguenther@suse.de>

	PR middle-end/40389
	* gimple.c (walk_stmt_load_store_addr_ops): The LHS of a call
	has its address taken if NRV was applied and it is addressable.
	* tree-ssa-structalias.c (get_constraint_for_address_of): New
	function split out from ...
	(get_constraint_for_1): ... here.
	(handle_rhs_call): Use it to mark the return slot escaped if
	it is addressable and NRV was applied.

	* g++.dg/torture/pr40389.C: New testcase.

From-SVN: r148462
2009-06-13 22:58:13 +00:00
Aldy Hernandez 4b29c5e543 rs6000-protos.h (altivec_resolve_overloaded_builtin): Change first argument type to location_t.
* config/rs6000/rs6000-protos.h (altivec_resolve_overloaded_builtin):
        Change first argument type to location_t.
        * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Same.
        Do not set input_location.
        Use loc instead of input_location throughout.
objcp/
        * objcp-decl.h (start_struct): Add location argument.
        (finish_struct): Same.
        (finish_decl): New.

From-SVN: r148461
2009-06-13 21:27:56 +00:00
Eric Botcazou cd19075ff9 Fix nits
From-SVN: r148460
2009-06-13 19:18:57 +00:00
Aldy Hernandez c172df28ca utils.c (record_builtin_type): Pass location argument to build_decl.
* gcc-interface/utils.c (record_builtin_type): Pass location
        argument to build_decl.
        (create_type_stub_decl): Same.
        (create_type_decl): Same.
        (create_var_decl_1): Same.
        (create_field_decl): Same.
        (create_param_decl): Same.
        (create_label_decl): Same.
        (build_decl): Same.
        (create_subprog_decl): Same.
        * gcc-interface/decl.c (gnat_to_gnu_entity): Same.
        * gcc-interface/trans.c (Case_Statement_to_gnu): Pass location
        argument to create_artificial_label.
        (Case_Statement_to_gnu): Same.
        (Loop_Statement_to_gnu): Same.
        (Subprogram_Body_to_gnu): Same.
        (gnat_gimplify_stmt): Same.

From-SVN: r148459
2009-06-13 17:12:50 +00:00
Richard Guenther e1e6dc737e re PR tree-optimization/40421 (Revision 148352 failed 416.gamess in SPEC CPU 2006)
2009-06-13  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/40389
	* tree-predcom.c (should_unroll_loop_p): Remove.
	(tree_predictive_commoning_loop): Use can_unroll_loop_p.

	* gfortran.fortran-torture/compile/pr40421.f: New testcase.

From-SVN: r148458
2009-06-13 17:02:17 +00:00
Michael Meissner 8012b92326 Fix powerpc breakage
From-SVN: r148456
2009-06-13 16:13:22 +00:00