aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2004-06-25Daily bump.GCC Administrator1-1/+1
[[Split portion of a mixed commit.]] From-SVN: r83622.2
2004-06-24c-decl.c (c_in_iteration_stmt, [...]): Remove.Richard Henderson11-405/+450
* c-decl.c (c_in_iteration_stmt, c_in_case_stmt): Remove. (c_break_label, c_cont_label): New. (start_function): Update initializations. (c_push_function_context): Update saves. (c_pop_function_context): Update restores. * c-parse.in: Update expected conflicts. (stmt_count, compstmt_count): Remove. Remove all updates. (if_prefix, simple_if, do_stmt_start): Remove. (lineno_labeled_stmt): Remove. (lineno_labels): New. (c99_block_lineno_labeled_stmt): Use it. (lineno_stmt, lineno_label): Don't clear EXPR_LOCUS before calling annotate_with_locus. (select_or_iter_stmt): Replace by ... (condition, if_statement_1, if_statement_2, if_statement, start_break, start_continue, while_statement, do_statement, for_cond_expr, for_incr_expr, for_statement, switch_statement): New. (stmt): Split out ... (stmt_nocomp): ... this. Use c_finish_bc_stmt, c_finish_goto_label, c_finish_goto_ptr. * c-semantics.c (add_stmt): Don't add line numbers to labels. * c-tree.h: Update prototypes. (struct language_function): Remove x_in_iteration_stmt, x_in_case_stmt; add x_break_label, x_cont_label, x_switch_stack. (c_switch_stack): Declare. * c-typeck.c (c_finish_goto_label, c_finish_goto_ptr): New. (c_finish_return): Return the statement. (c_switch_stack): Rename from switch_stack; export. (if_elt, if_stack, if_stack_space, if_stack_pointer): Remove. (c_begin_if_stmt, c_finish_if_cond, c_finish_then, c_begin_else, c_finish_else): Remove. (c_finish_if_stmt): Rewrite to perform the entire operation. (c_begin_while_stmt, c_finish_while_stmt_cond, c_finish_while_stmt, c_begin_for_stmt, c_finish_for_stmt_init, c_finish_for_stmt_cond, c_finish_for_stmt_incr, c_finish_for_stmt): Remove. (c_finish_loop): New. (c_finish_bc_stmt): New. (c_finish_expr_stmt): Return the statement. Split out... (c_process_expr_stmt): ... this. Don't add locus to error marks. * gimplify.c (gimplify_cond_expr): Accept NULL type statements. * tree-gimple.c (is_gimple_stmt): Likewise. * tree-pretty-print.c (dump_generic_node <COND_EXPR>): Likewise. (print_struct_decl): Delete empty compound statement. * objc/objc-act.c (objc_build_throw_stmt): Return the statement. * objc/objc-act.h: Update decl. From-SVN: r83620
2004-06-24tree-pretty-print.c (dump_generic_node, [...]): Don't look at TYPE_METHODS ↵Richard Kenner2-1/+8
unless RECORD_TYPE or UNION_TYPE. * tree-pretty-print.c (dump_generic_node, case TYPE_DECL): Don't look at TYPE_METHODS unless RECORD_TYPE or UNION_TYPE. From-SVN: r83619
2004-06-24objc-act.c (build_objc_method_call): Save the lookup_object so we do not ↵Andrew Pinski2-3/+10
call it twice. 2004-06-24 Andrew Pinski <apinski@apple.com> * objc-act.c (build_objc_method_call): Save the lookup_object so we do not call it twice. From-SVN: r83618
2004-06-24Minor comment and whitespace changesRichard Kenner1-3/+4
From-SVN: r83617
2004-06-24tree-ssa-dom.c (real_avail_expr_hash): New.Richard Henderson2-1/+12
* tree-ssa-dom.c (real_avail_expr_hash): New. (tree_ssa_dominator_optimize): Use it in the htab. From-SVN: r83616
2004-06-24Minor updating of comments.Richard Kenner1-2/+1
From-SVN: r83615
2004-06-24Minor whitespace changesRichard Kenner1-4/+6
From-SVN: r83613
2004-06-24tree-mudflap.c (mx_register_decls): Add third (type) argument to synthesized ↵Frank Ch. Eigler2-3/+12
__mf_unregister call. 2004-06-24 Frank Ch. Eigler <fche@redhat.com> * tree-mudflap.c (mx_register_decls): Add third (type) argument to synthesized __mf_unregister call. From-SVN: r83612
2004-06-24re PR middle-end/15239 (suboptimal mult-by-const expansion cost limit)Roger Sayle2-1/+6
PR middle-end/15239 * expmed.c (expand_mult): Remove artificial restriction on the maximum cost of a synthetic multiplication sequence. From-SVN: r83610
2004-06-24re PR tree-optimization/16115 (double-destruction problem with argument ↵Jason Merrill3-1/+49
passing via temporary (breaks auto_ptr)) PR c++/16115 * decl.c (grokparms): Give the PARM_DECL reference type if the parameter is passed by invisible reference. From-SVN: r83609
2004-06-24combine.c (distribute_notes): Don't delete sets to global register variables.Eric Christopher2-2/+9
2004-06-24 Eric Christopher <echristo@redhat.com> * combine.c (distribute_notes): Don't delete sets to global register variables. From-SVN: r83606
2004-06-24i386.md (ffsdi2, clzdi2): New expanders.Jakub Jelinek2-0/+73
* config/i386/i386.md (ffsdi2, clzdi2): New expanders. (ffs_rex64): New splitter. (ffsdi_1, ctzdi2, bsr_rex64): New instructions. From-SVN: r83604
2004-06-24darwin7.h (MATH_LIBRARY): Remove.Andrew Pinski3-12/+17
gcc/ChangeLog: * config/darwin7.h (MATH_LIBRARY): Remove. (LIB_SPEC): Define. * config/darwin.h (MATH_LIBRARY): Define always to empty. (LIB_SPEC): Only define if not already defined. libstdc++/ChangeLog: * linkage.m4: Remove check for libmx. * configure: Regenerate. libgfortran/ChangeLog: * configure.ac: Remove check for libmx. * configure: Regenerate. From-SVN: r83603
2004-06-24loop-iv.c (iv_analyze, [...]): Support for identifying shifts of induction ↵Revital Eres2-1/+49
variable. 2004-06-24 Revital Eres <eres@il.ibm.com> * loop-iv.c (iv_analyze, simple_set_p): Support for identifying shifts of induction variable. (iv_shift): New function. From-SVN: r83599
2004-06-24* gimplify.c (gimplify_body): Watch for body vanishing.Richard Henderson2-1/+7
From-SVN: r83598
2004-06-24tree-ssa-dom.c (record_dominating_conditions): New function.Jeff Law4-0/+207
* tree-ssa-dom.c (record_dominating_conditions): New function. (dom_opt_finalize_block, get_eq_expr_value): Use it. * gcc.dg/tree-ssa/20040624-1.c: New test. From-SVN: r83597
2004-06-24parse.y (set_nested_class_simple_name_value): Removed.Bryce McKinlay2-17/+6
* parse.y (set_nested_class_simple_name_value): Removed. (java_complete_expand_class): Remove calls to set_nested_class_simple_name_value. From-SVN: r83596
2004-06-24calls.c (shift_returned_value): Fix handling of non-integer TYPE_MODEs.Richard Sandiford4-1/+21
* calls.c (shift_returned_value): Fix handling of non-integer TYPE_MODEs. From-SVN: r83595
2004-06-24reformat, remove '^M'sNathan Sidwell2-3/+4
From-SVN: r83594
2004-06-24Add a blank.Richard Kenner1-1/+1
From-SVN: r83593
2004-06-24c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.Ulrich Weigand4-16/+8
* c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN. * system.h (DEFAULT_MAIN_RETURN): Poison. * doc/tm.texi (DEFAULT_MAIN_RETURN): Remove documentation. From-SVN: r83592
2004-06-24* doc/cfg.texi (Edges): Fix typo.Ben Elliston2-2/+6
From-SVN: r83591
2004-06-24* config/arm/arm.c (arm_output_epilogue): Remove excess checks.Paul Brook2-4/+5
From-SVN: r83589
2004-06-24tree-ssa.exp: Remove.Giovanni Bajo2-36/+5
* g++.dg/tree-ssa/tree-ssa.exp: Remove. dg.exp already handles this directory. From-SVN: r83588
2004-06-24* cp-tree.h (enum cp_storage_class): Remove trailing comma.Andreas Schwab2-1/+5
From-SVN: r83587
2004-06-23re PR middle-end/15988 (ICE in fold_convert with pointer-to-member-function)Andrew Pinski4-1/+24
2004-06-23 Andrew Pinski <apinski@apple.com> PR middle-end/15988 * fold-const.c (fold_convert): Types which are compatible can be converted with only a NOP_EXPR. 2004-06-23 Andrew Pinski <apinski@apple.com> PR middle-end/15988 * g++.dg/opt/ptrmem4.C: New test. From-SVN: r83585
2004-06-24Make-lang.in (cp/lex.o): Do not depend on cp/lex.h.Mark Mitchell13-826/+768
* Make-lang.in (cp/lex.o): Do not depend on cp/lex.h. (cp/decl.o): Likewise. (cp/decl2.o): Likewise. (cp/pt.o): Likewise. (cp/semantics.o): Likewise. * config-lang.in (gtfiles): Do not reference cp/lex.h. * class.c: Do not include lex.h. (add_implicitly_declared_members): Do not use adding_implicit_members. (check_bases_and_members): Do not talk about grok_x_components. * cp/cp-tree.h (adding_implicit_members): Remove. (cp_storage_class): New type. (cp_decl_spec): Likewise. (cp_decl_specifier_seq): Likewise. (cp_parameter_declarator): Use it for the decl_specifiers field. (check_tag_decl): Adjust prototype. (shadow_tag): Likewise. (groktypename): Likewise. (start_decl): Likewise. (start_function): Likewise. (start_method): Likewise. (grok_x_components): Remove. (grokfield): Adjust prototype. (grokbitfield): Likewise. (finish_member_class_template): Remove. * decl.c: Do not include lex.h. (adding_implicit_members): Do not define. (check_tag_decl): Do not use trees to represent decl-specifiers. (shadow_tag): Likewise. (groktypename): Likewise. (start_decl): Likewise. (grokvardecl): Likewise. (grokdeclarator): Likewise. (grokparms): Likewise. (start_function): Likewise. (start_method): Likewise. * decl.h (grokdeclarator): Adjust prototype. * decl2.c: Do not include lex.h. (grok_x_components): Remove. (grokfield): Do not use trees to represent decl-specifiers. (grokbitfield): Likewise. * lex.c: Do not include lex.h. * lex.h: Remove. * parser.c: Include target.h. (clear_decl_specs): New function. (cp_parser_translation_unit): Do not use trees to represent decl-specifiers. (cp_parser_postfix_expression): Likewise. (cp_parser_new_type_id): Likewise. (cp_parser_condition): Likewise. (cp_parser_simple_declaration): Likewise. (cp_parser_decl_specifier_seq): Likewise. (cp_parser_function_specifier_opt): Likewise. (cp_parser_conversion_type_id): Likewise. (cp_parser_template_parameter): Likewise. (cp_parser_explicit_instantiation): Likewise. (cp_parser_type_specifier): Likewise. (cp_parser_simple_type_specifier): Likewise. (cp_parser_init_declarator): Likewise. (cp_parser_type_id): Likewise. (cp_parser_type_specifier_seq): Likewise. (cp_parser_parameter_declaration): Likewise. (cp_parser_member_declaration): Likewise. (cp_parser_exception_declaration): Likewise. (cp_parser_function_definition_from_specifiers_and_declarator): Likewise. (cp_parser_single_declaration): Likewise. (cp_parser_save_member_function_body): Likewise. (cp_parser_friend_p): Likewise. (cp_parser_set_storage_class): New function. (cp_parser_set_decl_spec_type): Likewise. * pt.c: Do not include lex.h. * semantics.c: Likewise. (finish_member_class_template): Remove. From-SVN: r83584
2004-06-24calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and pass raw ↵Alan Modra3-21/+39
n_named_args to it. * calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and pass raw n_named_args to it. * targhooks.c: Formatting. (hook_bool_CUMULATIVE_ARGS_false): Correct comment. From-SVN: r83583
2004-06-23c-gimplify.c (gimplify_decl_stmt): Push gimplify_one_sizepos inside ↵Richard Henderson2-12/+18
non-constant size check. * c-gimplify.c (gimplify_decl_stmt): Push gimplify_one_sizepos inside non-constant size check. Gimplify the type too. Tidy building BUILT_IN_STACK_ALLOC call From-SVN: r83582
2004-06-24c-common.c (expand_unordered_cmp): Delete.Roger Sayle9-204/+29
* c-common.c (expand_unordered_cmp): Delete. (expand_tree_builtin): Delete. * c-common.h (expand_tree_builtin): Delete function prototype. * c-typeck.c (build_function_call): Don't call expand_tree_builtin. * call.c (build_cxx_call): Don't call expand_tree_builtin. No longer take both "args" and "convert_args" as arguments. (build_op_delete_call): Update call to build_cxx_call. (build_over_call): Likewise, update call to build_cxx_call. * cp-tree.h (build_cxx_call): Update funtion prototype. * typeck.c (build_function_call): Don't call expand_tree_builtin. * rtti.c (throw_bad_cast): Update call to build_cxx_call. (throw_bad_typeid): Likewise. (build_dynamic_cast_1): Likewise. From-SVN: r83579
2004-06-23gimplify.c (gimplify_compound_lval): Don't set ARRAY_REF or COMPONENT_REF ↵Richard Henderson2-6/+12
variable fields unless they're non-constant. * gimplify.c (gimplify_compound_lval): Don't set ARRAY_REF or COMPONENT_REF variable fields unless they're non-constant. From-SVN: r83578
2004-06-23Patch from Robert Millan.Robert Millan9-113/+148
* config.gcc: Merge kfreebsd*-gnu with linux* and add knetbsd*-gnu. * config/i386/linux.h: Allow overriding of LINK_EMULATION, DYNAMIC_LINKER and register names in sc_ structure. * config/kfreebsd-gnu.h: New. kfreebsd-gnu followup for linux.h. * config/i386/kfreebsd-gnu.h: New. Ditto for i386-kfreebsd-gnu. * config/knetbsd-gnu.h: New. Ditto for knetbsd-gnu. * config/i386/knetbsd-gnu.h: New. Ditto for i386-knetbsd-gnu. * config/kfreebsdgnu.h: Remove. * config/t-kfreebsd-gnu: Likewise. * config/i386/kfreebsdgnu.h: Likewise. From-SVN: r83577
2004-06-24fold-const.c (make_range): Cleanup type checking through function.Eric Christopher2-62/+69
2004-06-23 Eric Christopher <echristo@redhat.com> * fold-const.c (make_range): Cleanup type checking through function. Remove orig_type. Replace with checks to exp_type and arg0_type. Clarify comment when converting from unsigned to signed. From-SVN: r83576
2004-06-24mips.c (mips_use_dfa_pipeline_interface): Add R3000.Eric Christopher4-21/+98
2004-06-23 Eric Christopher <echristo@redhat.com> * config/mips/mips.c (mips_use_dfa_pipeline_interface): Add R3000. * config/mips/mips.md: Remove R3000 scheduling description. * config/mips/3000.md: New file. From-SVN: r83575
2004-06-24s390-protos.h (s390_emit_compare): Add prototype.Ulrich Weigand4-229/+288
* config/s390/s390-protos.h (s390_emit_compare): Add prototype. (s390_emit_jump): Likewise. * config/s390/s390.c (s390_emit_compare): New function. (s390_emit_jump): Likewise. * config/s390/s390.md ("beq", "bne", "bgt", "bgtu", "blt", "bltu", "bge", "bgeu", "ble", "bleu", "bunordered", "bordered", "buneq", "bungt", "bunlt", "bunge", "bunle", "bltgt"): Use s390_emit_compare and s390_emit_jump. ("cjump"): Remove, replace by ... ("*cjump_64", "*cjump_31"): ... these insns. Improve length default. ("icjump", "*icjump_64", "*icjump_31"): Likewise. ("trap"): Fix type attribute. ("conditional_trap"): Use s390_emit_compare. ("doloop_si"): Remove, replace by ... ("doloop_si64", "doloop_si31"): ... these new insn_and_split. Merge existing splitter into insn_and_split. Improve length default. ("doloop_di"): Merge with existing splitter into insn_and_split. ("doloop"): Adapt. ("jump"): Convert to expander. Use s390_emit_jump. ("*jump_64", "*jump_31"): New insns. Improve length default. From-SVN: r83574
2004-06-24Daily bump.GCC Administrator1-1/+1
[[Split portion of a mixed commit.]] From-SVN: r83571.2
2004-06-23gthr-win32.h (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust.Wu Yongwei3-14/+57
2004-06-23 Wu Yongwei <adah@sh163.net> * gthr-win32.h (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust. (__gthr_i486_lock_cmp_xchg): New inline assembly function. (__GTHR_W32_InterlockedCompareExchange): New macro to choose a suitable function for interlocked compare-and-exchange. (__gthread_mutex_trylock): Use __GTHR_W32_InterlockedCompareExchange. (__gthread_mutex_init_function, __gthread_mutex_lock, __gthread_mutex_trylock, __gthread_mutex_unlock): Adjust the initial counter value to work correctly under Windows 95. * config/i386/gthr-win32.c: Adjust include order. Define __GTHREAD_I486_INLINE_LOCK_PRIMITIVES before including gthr-win32.h. (__gthr_win32_mutex_init_function, __gthr_win32_mutex_lock, __gthr_win32_mutex_trylock, __gthr_win32_mutex_unlock): Adjust to match inline versions in gthr-win32.h. From-SVN: r83569
2004-06-23rs6000.c (rs6000_use_dfa_pipeline_interface): Delete.David Edelsohn4-17/+82
* config/rs6000/rs6000.c (rs6000_use_dfa_pipeline_interface): Delete. (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Redefine a hook_int_void_1. (insvdi_rshift_rlwimi_p): New function. * config/rs6000/rs6000.md (insvdi_internal2/3): New patterns. (extendsfdf2): Convert to define_insn_and_split. * config/rs6000/rs6000-protos.h (insvdi_rshift_rlwimi_p): Prototype. From-SVN: r83568
2004-06-23c-typeck.c (composite_type, [...]): Abort if we have type qualifiers at all.Andrew Pinski4-2/+28
2004-06-23 Andrew Pinski <apinski@apple.com> * c-typeck.c (composite_type, <case ARRAY_TYPE>): Abort if we have type qualifiers at all. If both of the type domains are null and the new element type is the same as one of the, return the one which the element type. matches. Do not call qualify_type on the new type. 2004-06-23 Andrew Pinski <apinski@apple.com> * gcc.dg/c90-array-quals-2.c: New test. From-SVN: r83567
2004-06-23* config/s390/s390.h (DEFAULT_MAIN_RETURN): Remove.Ulrich Weigand2-3/+4
From-SVN: r83566
2004-06-23convert.c (strip_float_extension): Skip both NOP_EXPR and CONVERT_EXPR ↵Roger Sayle2-1/+7
floating point extensions. * convert.c (strip_float_extension): Skip both NOP_EXPR and CONVERT_EXPR floating point extensions. From-SVN: r83565
2004-06-23Makefile.in (tree-vn.o): New.Diego Novillo12-279/+435
* Makefile.in (tree-vn.o): New. (tree-ssa-pre.o): Don't depend on RTL_H. * tree-dfa.c (find_referenced_vars): Don't call init_tree_ssa. * tree-flow.h (struct var_ann_d): Remove field expr_set. (add_to_value, expressions_equal_p, get_value_handle, vn_compute, vn_lookup_or_add, vn_add, vn_lookup, vn_init, vn_delete): Declare. * tree-optimize.c (execute_init_datastructures): New local function. (pass_init_datastructures): New local variable. (init_tree_optimization_passes): Sequence pass_init_datastructures. * tree-pretty-print.c (MASK_POINTER): Remove. (dump_generic_node): Handle VALUE_HANDLE. * tree-ssa-pre.c: Move all value numbering routines to tree-vn.c. Update callers to use new function names. Use VALUE_HANDLE_ID and VALUE_HANDLE_EXPR_SET instead of variable annotations. * tree-ssa.c (init_tree_ssa): Call vn_init. (delete_tree_ssa): Call vn_delete. * tree-vn.c: New file. * tree.c (tree_size): Handle VALUE_HANDLE. (tree_node_structure): Likewise. (iterative_hash_expr): Likewise. * tree.def (VALUE_HANDLE): New code. * tree.h (struct tree_value_handle): New. (VALUE_HANDLE_ID): Define. (VALUE_HANDLE_EXPR_SET): Define. (enum tree_node_structure_enum): Add TS_VALUE_HANDLE. (union tree_node): Add struct tree_value_handle. From-SVN: r83564
2004-06-23* gcc.dg/kpice1.c: New test.Nitin Yewale2-0/+10
From-SVN: r83563
2004-06-23[multiple changes]Andrew Pinski4-5/+25
2004-06-23 Andrew Pinski <apinski@apple.com> * c-typeck.c (composite_type): <case POINTER_TYPE>: Build a qualified type of the new type. <case ARRAY_TYPE>: Likewise. <case FUNCTION_TYPE>: Likewise. 2006-06-23 Andrew Pinski <apinski@apple.com> * gcc.dg/c90-array-quals.c: New test. From-SVN: r83557
2004-06-23re PR rtl-optimization/15633 (Failure to propagate FDO counters by vpt ↵Pat Haugen2-20/+74
results in performance regression) 2004-06-23 Pat Haugen <pthaugen@us.ibm.com> PR optimization/15633 * value-prof.c (divmod_fixed_value_transform): Compute probability of taking optimal path and pass along to gen_ routine. (mod_pow2_value_transform): Same. (mod_subtract_transform): Same. (gen_divmod_fixed_value): Add new probability parameter. Add probability to newly created jump. (gen_mod_pow2): Same. (gen_mod_subtract): Same. From-SVN: r83555
2004-06-23re PR target/15948 (THUMB: ICE with non-commutative cbranch)Richard Earnshaw2-5/+13
* PR target/15948 * arm.md (bicsi3_cbranch): Add alternative to handle tying operands one and two. From-SVN: r83549
2004-06-23re PR target/15927 (THUMB -O2: strength-reduced iteration variable ends up ↵Richard Earnshaw2-1/+7
off by 1) PR target/15927 * arm.h (THUMB_SECONDARY_OUTPUT_RELOAD_CLASS): Don't need a secondary reload if CLASS is BASE_REGS. From-SVN: r83548
2004-06-23gengtype-yacc.y (option): Avoid use of non-constant struct initializer.Richard Sandiford2-2/+10
* gengtype-yacc.y (option): Avoid use of non-constant struct initializer. From-SVN: r83546
2004-06-23remove stray conflict markerNathan Sidwell1-1/+0
From-SVN: r83544