- 08 Jul, 2004 40 commits
-
-
* gcc.c-torture/execute/920428-2.x: Delete. * gcc.c-torture/execute/920501-7.x: Likewise. From-SVN: r84309
Eric Botcazou committed -
PR fortran/16291 * libgfortran/io/write.c: (write_float): Added length check. Remove pointless memset calls. From-SVN: r84308
Andreas Krebbel committed -
* c-decl.c (static_ctors, static_dtors): Make static. (pop_file_scope): Call c_common_write_pch and cgraph_finalize_compilation_unit here. (build_cdtor): Moved here from c-objc-common.c; simplify. (c_write_global_declarations_1): Clarify comment. (c_write_global_declarations): Close the external scope before doing anything else. Call build_cdtor, cgraph_optimize, and mudflap_finish_file here. * c-lang.c (finish_file): Don't call c_objc_common_finish_file. Clarify comment. * c-objc-common.c: No need to include cgraph.h. (build_cdtor): Moved to c-decl.c. (c_objc_common_finish_file): Delete. * c-tree.h: Update to match. * objc/objc-act.c (finish_file): Don't call c_objc_common_finish_file. (generate_static_references): Set TREE_USED before calling finish_decl. Eliminate unnecessary dummy declaration. Call rest_of_decl_compilation on the static_instances_decl. From-SVN: r84307
Zack Weinberg committed -
* c-decl.c (pop_scope): Do not set DECL_CONTEXT on file-scope decls when there is only one input translation unit. * langhooks.c (lhd_set_decl_assembler_name): Partially revert change of 2004-07-05; do not treat declarations with DECL_CONTEXT a TRANSLATION_UNIT_DECL specially. * opts.c (cur_in_fname): Delete. * opts.h: Likewise. * tree.c: Revert changes of 2004-07-05; no special treatment for TRANSLATION_UNIT_DECLs. * Makefile.in (tree.o): Update dependencies. From-SVN: r84306
Zack Weinberg committed -
* Makefile.def (host_modules): Set bootstrap=true for flex. * Makefile.tpl (all-gcc): Depend on texinfo and flex. * Makefile.in: Rebuilt. From-SVN: r84305
Alexandre Oliva committed -
* intrinsic.c (add_sym_4s): New function. (add_subroutines): Change gfc_add_sym_? to gfc_add_sym_?s. From-SVN: r84304
Paul Brook committed -
2004-07-08 Frank Ch. Eigler <fche@redhat.com> ANSI C conversion, libmudflap specialization, recursion limiting. * splay-tree.h (splay_tree_{de,}allocate_fn): Remove allocation_data argument and indirection function pointers, update callers. (splay_tree_s): Add statistics and recursion control fields num_keys, max_depth, depth, rebalance_p. * splay-tree.c (splay_tree_splay_helper): Track recursion depth. Back out of search if it exceeds limit. (splay_tree_splay): Manage recursion limiting with rebalancing as needed. (splay_tree_new): More initialization. (splay_tree_rebalance): New function. (splay_tree_foreach): Rewrite using nonrecursive logic. (splay_tree_xmalloc_allocate, splay_tree_xmalloc_deallocate): Remove. Point indirect calls to mf-runtime.c's routines. (splay_tree_compare_ints, splay_tree_compare_pointers): Remove unused functions. (splay_tree_delete, splay_tree_delete_helper): Ditto. * testsuite/heap-scalestress.c: New test based on one from Eyal Lebedinsky <eyal@eyal.emu.id.au>: From-SVN: r84303
Frank Ch. Eigler committed -
* builtins.c (fold_builtin_strcpy): Merge functionality from simplify_builtin_strcpy. Add additional len argument. No longer static. Remove function prototype. (fold_builtin_strncpy): Likewise integrate functionality from simplify_builtin_strncpy. Add additional slen argument. No longer static. Remove function prototype. (simplify_builtin_strcy, simplify_builtin_strncpy): Delete. (simplify_builtin_fputs): Rename to fold_builtin_fputs. Change types of "ignore" and "unlocked" parameters to bool. (fold_builtin_1): Add additional ignore argument. Call renamed fold_builtin_fputs to simplify GCC "fputs" and "fputs_unlocked" builtins. Update arguments to fold_builtin_strncpy and fold_builtin_strcpy. Add function prototype. (fold_builtin): Add additional Boolean ignore argument to pass to fold_builtin_1. (simplify_builtin): Call fold_builtin_fputs, fold_builtin_strcpy and fold_builtin_strncpy instead of simplify_builtin_fputs, simplify_builtin_strcpy and simplify_builtin_strncpy respectively. * expr.h (simplify_builtin_fputs, simplify_builtin_strcpy, simplify_builtin_strncpy): Delete function prototypes. * tree.h (fold_builtin_fputs, fold_builtin_strcpy, fold_builtin_strncpy): Add function prototypes here. (fold_builtin): Update function prototype with new "bool ignore". * tree-ssa-ccp.c (ccp_fold): Update call to fold_builtin. (ccp_fold_builtin): Update call to fold_builtin. Call fold_builtin_fputs, fold_builtin_strcpy and fold_builtin_strncpy instead of simplify_builtin_fputs, simplify_builtin_strcpy and simplify_builtin_strncpy respectively. * fold-const.c (fold): Update call to fold_builtin. From-SVN: r84302
Roger Sayle committed -
* builtins.c (expand_builtin_stpcpy): Un-simplify decay of stpcpy to strcpy. From-SVN: r84301
Alexandre Oliva committed -
* expr.h (FUNCTION_ARG_PARTIAL_NREGS): Default to 0. (FUNCTION_ARG_PASS_BY_REFERENCE): Likewise. (FUNCTION_ARG_CALLEE_COPIES): Likewise. * calls.c: Remove ifdefs of macros above. * functions.c: Likewise. * expr.c: Likewise. From-SVN: r84300
Alexandre Oliva committed -
* config/sparc/sparc.md (UNSPECV_GOTO_V9): Delete. (arch attribute): Delete. (current_function_calls_alloca attribute): Rename into calls_alloca. (calls_eh_return): New attribute. (leaf_function): Likewise. (length attribute): Fix formula for sibcalls. (return insn): Correctly compute the 'length' attribute. (do_builtin_setjmp_setup): Adjust use of current_function_calls_alloca. From-SVN: r84299
Eric Botcazou committed -
* tree-cfg.c (make_exit_edges): Use get_call_expr_in. (remove_useless_stmts_1, is_ctrl_altering_stmt): Likewise. (tree_block_ends_with_call_p, need_fake_edge_p): Likewise. * tree-eh.c (lower_eh_constructs_1): Likewise. * tree-sra.c (sra_walk_modify_expr): Likewise. * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise. (eliminate_unnecessary_stmts): Likewise. * tree-ssa-dse.c (dse_optimize_stmt): Likewise. * tree-tailcall.c (optimize_tail_call): Likewise. * tree-ssa-ccp.c (get_rhs, set_rhs): Reorg to use switch. From-SVN: r84298
Richard Henderson committed -
2004-07-08 Paolo Bonzini <bonzini@gnu.org> Jakub Jelinek <jakub@redhat.com> * config/i386/i386.c (override_options): Enable SSE prefetches with -mtune, as long as we are compiling for i686 or higher. All i686 processors accept SSE prefetches as NOPS, some i586's don't. 2004-07-08 Jakub Jelinek <jakub@redhat.com> * gcc.mist-tests/i386-prefetch.exp (PREFETCH_SSE): Change all -march=i386 into -march=i686. Add -march=i686 -mtune=x and -march=x for pentium3, pentium3m, pentium-m, pentium4m, prescott and c3-2. (PREFETCH_3DNOW): Add -march=c3. From-SVN: r84297
Jakub Jelinek committed -
2004-07-08 Benjamin Kosnik <bkoz@redhat.com> PR c++/16169 * include/bits/basic_string.h (basic_string::operator=): Revert. From-SVN: r84296
Benjamin Kosnik committed -
PR c/16437 * gcc.c-torture/execute/991118-1.x: XFAIL for x86_64. * gcc.c-torture/execute/bf64-1.x: Likewise. From-SVN: r84295
Diego Novillo committed -
PR target/10567 * config/sparc/sparc.md (update_return): Honor flag_delayed_branch. From-SVN: r84293
Eric Botcazou committed -
* tree-ssa-operands.c (get_asm_expr_operands): Fix thinkos in the handling of clobbering ASM_EXPRs. From-SVN: r84292
Diego Novillo committed -
* name-lookup.h (struct cp_binding_level): Update documentation for class_shadowed. From-SVN: r84291
Mark Mitchell committed -
PR target/16430 * config/sparc/sparc.c (function_value): In 64-bit mode, return the aggregates larger than 16 bytes like unions. From-SVN: r84289
Eric Botcazou committed -
PR target/16199 * config/sparc/sparc.c (sparc_emit_set_symbolic_const64): When 'temp' is zero, generate new pseudos as needed and emit the sequence of insns in single-assignment form. Resync comments with code. (sparc_emit_set_const64): Pass zero as 'temp' argument to above function before reload. From-SVN: r84285
Eric Botcazou committed -
PR c++/16169 * typeck.c (check_return_expr): Improve -Weffc++ warning: handle returning CALL_EXPR, and non-reference return type. PR c++/16169 * g++.dg/warn/effc2.C: New test. From-SVN: r84283
Giovanni Bajo committed -
From-SVN: r84282
Nathan Sidwell committed -
.: * vec.c (vec_p_reserve, vec_o_reserve): Allocation is signed. * vec.h (VEC_alloc, VEC_embedded_size, VEC_embedded_init): Allocation is signed. (VEC_reserve): Return flag, allocation is signed. cp: * name-lookup.c (push_binding): Use VEC_reserve. From-SVN: r84281
Nathan Sidwell committed -
* tree-ssa-ccp.c (fold_stmt): Get type directly from OBJ_TYPE_REF_OBJECT. From-SVN: r84280
Richard Henderson committed -
2004-07-08 Joseph S. Myers <jsm@polyomino.org.uk> Neil Booth <neil@daikokuya.co.uk> PR c/2511 PR c/3325 * c-decl.c (finish_struct): Ensure bit-fields are given the correct type. * c-common.c (c_common_signed_or_unsigned_type): For C, require the precision to match as well as the mode. * expr.c (reduce_to_bit_field_precision): New function. (expand_expr_real_1): Reduce expressions of bit-field type to proper precision. * langhooks.h (reduce_bit_field_operations): New hook. * langhooks-def.h (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): Define. * c-lang.c, objc/objc-lang.c (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): Define. * objc/objc-act.c (check_ivars): Convert types to bit-field types before checking. * tree.c (build_nonstandard_integer_type): New function. * tree.h (build_nonstandard_integer_type): New prototype. * tree-ssa.c (tree_ssa_useless_type_conversion_1): Don't treat conversions between integer and boolean types as useless. testsuite: * gcc.c-torture/execute/bitfld-1.x: Remove. * gcc.c-torture/execute/bitfld-3.c: New test. * gcc.dg/bitfld-2.c: Remove XFAILs. Co-Authored-By: Neil Booth <neil@daikokuya.co.uk> From-SVN: r84279
Joseph Myers committed -
2004-07-08 Paolo Bonzini <bonzini@gnu.org> * c-common.c (c_common_nodes_and_builtins): Do not create __builtin_ptrdiff_t and __builtin_size_t. From-SVN: r84278
Paolo Bonzini committed -
2004-07-08 Andrew Pinski <apinski@apple.com> * Makefile.in (libbackend.o): Add -combine to the gcc command line. From-SVN: r84277
Andrew Pinski committed -
From-SVN: r84276
Nick Clifton committed -
* except.c (expand_eh_region_start, expand_eh_region_end, expand_eh_handler, expand_eh_region_end_cleanup, expand_start_all_catch, expand_start_catch, expand_end_catch, expand_end_all_catch, expand_eh_region_end_allowed, expand_eh_region_end_must_not_throw, expand_eh_region_end_throw, expand_eh_region_end_fixup): Remove. * stmt.c (struct nesting): Remove stack_level, innermost_stack_block, cleanups, outer_cleanups, label_chain, exception_region. (struct goto_fixup): Remove stack_level, cleanup_list_list. (struct label_chain): Remove. (struct stmt_status): Remove x_stack_block_stack. (stack_block_stack, expand_goto_internal, expand_fixup, expand_fixups, fixup_gotos, save_stack_pointer, expand_decl_cleanup, expand_decl_cleanup_eh, expand_cleanups, start_cleanup_deferral, end_cleanup_deferral, last_cleanup_this_contour, containing_blocks_have_cleanups_or_stack_level, any_pending_cleanups): Remove. (expand_null_return_1): Take no arguments. (expand_label, expand_naked_return, expand_return, expand_start_bindings_and_block, expand_end_bindings, expand_decl, expand_anon_union_decl, expand_start_case, pushcase, pushcase_range, expand_end_case_type): Don't use any of them. * calls.c (expand_call): Likewise. * dojump.c (do_jump): Likewise. * function.c (expand_function_end): Likewise. * expr.c (store_expr, expand_expr_real_1): Likewise. (safe_from_p): Don't handle WITH_CLEANUP_EXPR, CLEANUP_POINT_EXPR. (expand_expr_real_1): Don't handle WITH_CLEANUP_EXPR, CLEANUP_POINT_EXPR, TARGET_EXPR, TRY_CATCH_EXPR, CATCH_EXPR, EH_FILTER_EXPR, TRY_FINALLY_EXPR, GOTO_SUBROUTINE_EXPR. * fold-const.c (fold_checksum_tree): Use first_rtl_op. * gengtype.c (adjust_field_tree_exp): Remove rtl op handling. * gimplify.c (gimplify_cleanup_point_expr): Renumber operands for WITH_CLEANUP_EXPR. (gimple_push_cleanup): Likewise. * integrate.c (copy_decl_for_inlining): Don't DECL_TOO_LATE. * print-tree.c (print_node): Likewise. * tree-pretty-print.c (dump_generic_node): Remove GOTO_SUBROUTINE_EXPR. * tree.c (first_rtl_op): Always just TREE_CODE_LENGTH. (has_cleanups): Remove GOTO_SUBROUTINE_EXPR. * tree.def (WITH_CLEANUP_EXPR): Remove op1 and op2. (GOTO_SUBROUTINE_EXPR): Remove. * tree.h (WITH_CLEANUP_EXPR_RTL): Remove. (DECL_TOO_LATE): Remove. * except.h, tree.h: Update decls. ada/ * trans.c (gnat_to_gnu <N_Handled_Sequence_Of_Statements>): Update commentary. cp/ * cp-tree.h (expand_eh_spec_block): Remove. java/ * expr.c (case_identity, get_primitive_array_vtable, java_expand_expr, emit_init_test_initialization): Remove. * java-tree.h (java_expand_expr): Remove. * lang.c (LANG_HOOKS_EXPAND_EXPR): Remove. From-SVN: r84275
Richard Henderson committed -
2004-07-08 Paolo Bonzini <bonzini@gnu.org> * explow.c (optimize_save_area_alloca): Do not accept parameters. * passes.c (rest_of_handle_final): Handle symout. (rest_of_handle_new_regalloc, rest_of_handle_old_regalloc): Push timevar here. (rest_of_handle_sched): Break out SMS. Remove ifs for flag_schedule_insns and flag_modulo_sched. (rest_of_handle_addressof, rest_of_handle_cse2): Garbage collect at the end. (rest_of_handle_gcse2): Put under timevar TV_RELOAD_CSE_REGS. (rest_of_handle_partition_blocks, rest_of_handle_sms, rest_of_handle_if_after_reload, rest_of_handle_peephole2, rest_of_handle_mode_switching, rest_of_handle_jump, rest_of_handle_guess_branch_prob, rest_of_handle_eh, rest_of_handle_jump2, rest_of_handle_postreload, rest_of_handle_flow2, rest_of_clean_state, rest_of_handle_shorten_branches, rest_of_handle_prologue_epilogue, rest_of_handle_branch_target_load_optimize): New. (rest_of_compilation): Call the above. Remove ggc_collect calls moved to rest_of_handle_*. * rtl.h (optimize_save_area_alloca): Do not accept parameters. * dwarf2out.c (dwarf2out_begin_prologue): Use TREE_NOTHROW. * except.c (set_nothrow_function_flags): Set TREE_NOTHROW. * except.h (set_nothrow_function_flags): Update comment. * function.c (current_function_nothrow): Remove. * output.h (current_function_nothrow): Remove. * passes.c (rest_of_compilation): Do not set TREE_NOTHROW. * config/arm/arm.c (arm_compute_func_type): Use TREE_NOTHROW. From-SVN: r84274
Paolo Bonzini committed -
PR bootstrap/16326 * reorg.c: Revert 2004-06-30 change. (find_end_label): If HAVE_epilogue and !HAVE_return, return 0 instead of creating a label at the end of the insn chain. (optimize_skip): Account for the failure mode of find_end_label. (fill_simple_delay_slots): Likewise. (fill_slots_from_thread): Likewise. (relax_delay_slots): Likewise. From-SVN: r84273
Eric Botcazou committed -
* tree-flow.h (addressable_vars): Declare. * tree-ssa-alias.c (addressable_vars): Define. (setup_pointers_and_addressables): Add addressable variables to addressable_vars. * tree-ssa-operands.c (get_stmt_operands): Move handling of ASM_EXPRs ... (get_asm_expr_operands): ... here. When the ASM_EXPR clobbers memory, also clobber addressable variables. * tree-ssa.c (init_tree_ssa): Initialize addressable_vars. (delete_tree_ssa): Reset addressable_vars. From-SVN: r84272
Diego Novillo committed -
* varasm.c (assemble_variable): Use assemble_zeros for zero-initialized variables. (categorize_decl_for_section): Honor flag_zero_initialized_in_bss for SECCAT_BSS and SECCAT_TBSS. Co-Authored-By: Richard Henderson <rth@redhat.com> From-SVN: r84271
Jan Beulich committed -
From-SVN: r84269
Jan Beulich committed -
* expmed.c (emit_store_flag): Also special-case double-word (in-)equality comparison against -1. From-SVN: r84268
Jan Beulich committed -
calls.c (emit_library_call_value_1): Use mode of function parameter rather than that of argument since constants... * calls.c (emit_library_call_value_1): Use mode of function parameter rather than that of argument since constants have none. From-SVN: r84267
Jan Beulich committed -
i386.c (ix86_gimplify_va_arg): Don't need temporary for passing arguments the containers for which are registers. * config/i386/i386.c (ix86_gimplify_va_arg): Don't need temporary for passing arguments the containers for which are registers. From-SVN: r84266
Jan Beulich committed -
2004-07-07 Benjamin Kosnik <bkoz@redhat.com> * configure.ac (libtool_VERSION): To 6:2:0. * configure: Regenerated. * testsuite/testsuite_abi.cc (check_version): Add 3.4.2. 2004-07-07 Aaron W. LaFramboise <aaronraolete36@aaronwl.com> PR libstdc++/16411 * config/linker-map.gnu: Add stdio_sync_filebuf::file exports. From-SVN: r84264
Benjamin Kosnik committed -
2004-07-07 H.J. Lu <hongjiu.lu@intel.com> PR c++/16276 * g++.dg/rtti/tinfo1.C: New file. From-SVN: r84261
H.J. Lu committed -
* cp-tree.h (saved_scope): Remove x_previous_class_type and x_previous_class_values; add x_previous_class_level. (previous_class_type): Remove. (previous_class_values): Remove. (previous_class_level): New macro. * class.c (pushclass): Restore the identifier cache more expeditiously. (invalidate_class_lookup_cache): Use vector for class_shadowed and previous_class_values. * decl.c (poplevel): Likewise. * name-lookup.c (cxx_binding_init): New function. (cxx_binding_make): Use it. (push_binding): For a binding in a class level, use a vector of cp_class_binding nodes. (push_binding_level): New function. (begin_scope): Use it. (leave_scope): Do not put class binding levels on the free list. (print_binding_level): Adjust for the fact that class_shadowed is a vector. (poplevel_class): Likewise. (clear_identifier_class_values): Likewise. (push_class_level_binding): Likewise. (set_class_shadows): Remove. (store_binding): New function. (store_class_bindings): New function. (push_to_top_level): Use store_class_bindings as appropriate. (pop_from_top_level): Use previous_class_level, not previous_class_type. * name-lookup.h (cp_class_binding): New type. (cp_binding_level): Use a vector object for class_shadowed. (push_binding_level): Declare. (set_class_shadows): Remove. From-SVN: r84259
Mark Mitchell committed
-