aboutsummaryrefslogtreecommitdiff
path: root/gcc/system.h
AgeCommit message (Collapse)AuthorFilesLines
2004-12-22system.h (IN_RANGE): Restore HOST_WIDE_INT cast.Nathan Sidwell1-1/+1
* system.h (IN_RANGE): Restore HOST_WIDE_INT cast. * tree.h (IS_EXPR_CODE_CLASS): Do not use IN_RANGE. From-SVN: r92511
2004-12-21system.c (IN_RANGE): Use plain unsigned, not unsigned HOST_WIDE_INT.Nathan Sidwell1-1/+1
* system.c (IN_RANGE): Use plain unsigned, not unsigned HOST_WIDE_INT. * tree.def (VOID_TYPE, INTEGER_TYPE, REAL_TYPE, COMPLEX_TYPE, VECTOR_TYPE, OFFSET_TYPE, ENUMERAL_TYPE, BOOLEAN_TYPE, CHAR_TYPE, POINTER_TYPE, REFERENCE_TYPE, METHOD_TYPE, FUNCTION_TYPE, FILE_TYPE, ARRAY_TYPE, RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE): Reorder for better code efficiency. (CONST_DECL, TYPE_DECL, VAR_DECL, FIELD_DECL, PARM_DECL): Likewise. (INDIRECT_REF, ALIGN_INDIRECT_REF, MISALIGNED_INDIRECT_REF): Likewise. * tree.h (INDIRECT_REF_P): Reorder checks for better optimization. (IS_EXPR_CODE_CLASS): Use IN_RANGE. (INTEGRAL_TYPE_P, FLOAT_TYPE_P): Reorder checks for better optimization. * cp/cp-tree.def (TEMPLATE_TYPE_PARM, BOUND_TEMPLATE_TEMPLATE_PARM, TYPE_OF_TYPE, TYPENAME_TYPE): Reorder for better code efficiency. * cp/cp-tree.h (CLASS_TYPE_P): Short circuit IS_AGGR_TYPE check. (CAN_HAVE_FULL_LANG_DECL_P): Reorder for better optimization. (INTEGRAL_CODE_P, CP_INTEGRAL_TYPE_P, INTEGRAL_OR_ENUMERATION_TYPE_P, SCALAR_TYPE_P, CP_AGGREGATE_TYPE_P, TYPE_PTROB_P, TYPE_REF_OBJ_P, TYPE_PTROBV_P): Likewise. From-SVN: r92463
2004-12-20defaults.h (ASM_OUTPUT_INTERNAL_LABEL): New macro.Mark Mitchell1-1/+1
* defaults.h (ASM_OUTPUT_INTERNAL_LABEL): New macro. * output.h (assemble_name_raw): Declare it. * system.h (ASM_OUTPUT_INTERNAL_LABEL): Do not poison it. * varasm.c (assemble_name_raw): New function. (assemble_name): Use it. (default_internal_label): Likewise. * config/darwin.c (darwin_asm_output_dwarf_delta): Likewise. * doc/tm.texi (ASM_OUTPUT_INTERNAL_LABEL): Document. From-SVN: r92401
2004-11-29cfgcleanup.c (outgoing_edges_match, [...]): Remove CASE_DROPS_THROUGH ↵Steven Bosscher1-1/+2
checks, it is never defined. * cfgcleanup.c (outgoing_edges_match, try_crossjump_to_edge): Remove CASE_DROPS_THROUGH checks, it is never defined. * cfglyout.c (fixup_reorder_chain): Likewise. * cfgrtl.c (rtl_verify_flow_info): Likewise. * stmt.c (expand_case): Likewise. * cfgbuild.c (make_edges): Likewise. Also remove force_fallthru, it is now always 0. * system.h (CASE_DROPS_THROUGH): Poison. * doc/md.texi (casesi): Remove documentation of CASE_DROPS_THROUGH. * doc/tm.texi (casesi): Remove documentation of CASE_DROPS_THROUGH. * config/v850/v850.h: Remove commented out CASE_DROPS_THROUGH. From-SVN: r91488
2004-11-24target.h (late_rtl_prologue_epilogue): Remove.Eric Botcazou1-1/+1
* target.h (late_rtl_prologue_epilogue): Remove. * target-def.h (TARGET_LATE_RTL_PROLOGUE_EPILOGUE): Remove. * system.h: Poison TARGET_LATE_RTL_PROLOGUE_EPILOGUE. * passes.c (rest_of_handle_prologue_epilogue): Remove and move remaining bits to... (rest_of_handle_flow2): ...here. (rest_of_compilation): Remove call to rest_of_handle_prologue_epilogue. * doc/tm.texi (TARGET_LATE_RTL_PROLOGUE_EPILOGUE): Remove. From-SVN: r91140
2004-11-23function.h (struct function): Remove calls_longjmp.Zack Weinberg1-1/+2
* function.h (struct function): Remove calls_longjmp. (current_function_calls_longjmp): Delete. * tree.h (ECF_LONGJMP): Delete. (ECF_SIBCALL, ECF_PURE, ECF_SP_DEPRESSED, ECF_ALWAYS_RETURN) (ECF_LIBCALL_BLOCK): Everybody slide down one. (ECF_CONST, ECF_NORETURN, ECF_SIBCALL): Clarify comments. * builtins.c (expand_builtin_longjmp): Don't set current_function_calls_longjmp. * calls.c (special_function_p): Mark longjmp and siglongjmp with ECF_NORETURN, not ECF_LONGJMP. (emit_call_1, expand_call, emit_library_call_value_1): Don't check for ECF_LONGJMP. * tree-cfg.c (make_exit_edges, is_ctrl_altering_stmt) (need_fake_edge_p): Likewise. * config/avr/avr.h, config/ip2k/ip2k.h: Don't define NON_SAVING_SETJMP. * system.h: Poison NON_SAVING_SETJMP. * function.c (use_register_for_decl) * gcse.c (compute_hash_table_work, compute_store_table) * postreload-gcse.c (record_opr_changes) * reload.c (find_equiv_reg) * reload1.c (reload) * config/i386/i386.c (ix86_can_use_return_insn_p): Remove code conditional on NON_SAVING_SETJMP. * doc/tm.texi: Delete documentation of NON_SAVING_SETJMP. * config/i386/sysv3.h: Delete file. * config/i386/i386.c (ix86_svr3_asm_out_constructor): Delete. From-SVN: r91101
2004-11-18defaults.h, darwin.h: Don't define TARGET_SUPPORTS_HIDDEN.Zack Weinberg1-1/+1
* defaults.h, config/darwin.h: Don't define TARGET_SUPPORTS_HIDDEN. * system.h: Poison it. * doc/tm.texi: Delete its documentation. From-SVN: r90840
2004-11-04sdbout.c (SDB_GENERATE_FAKE): Remove.Kazu Hirata1-1/+1
* sdbout.c (SDB_GENERATE_FAKE): Remove. (gen_fake_label): Don't use SDB_GENERATE_FAKE. * system.h: Poison SDB_GENERATE_FAKE. * doc/tm.texi (SDB_GENERATE_FAKE): Remove. From-SVN: r90061
2004-10-27dbxout.c: Include obstack.h.Zack Weinberg1-1/+2
* dbxout.c: Include obstack.h. (ASM_STABS_OP): Take XCOFF_DEBUGGING_INFO into account in default definition. (ASM_STABD_OP, NO_DBX_MAIN_SOURCE_DIRECTORY, DBX_CONTIN_CHAR): Default-define here. (DBX_CONTIN_LENGTH): Move definition with others. (DBX_FINISH_STABS): New target macro. (current_sym_code, current_sym_value, current_sym_addr) (current_sym_nchars, CHARS, dbxout_continue) (print_int_cst_octal, print_octal, print_wide_int) (dbxout_prepare_symbol, dbxout_finish_symbol): Delete. (stabstr_ob, stabstr_last_contin_point): New variables. (NUMBER_FMT_LOOP): New improper macro. (dbxout_int, dbxout_stab_value_zero, dbxout_stab_value_label) (dbxout_stab_value_label_diff, dbxout_stab_value_internal_label) (dbxout_stab_value_internal_label_diff, dbxout_stabd) (dbxout_begin_stabn, dbxout_begin_stabn_sline) (dbxout_begin_simple_stabs, dbxout_begin_simple_stabs_desc) (dbxout_begin_complex_stabs, dbxout_finish_complex_stabs) (stabstr_C, stabstr_S, stabstr_I, stabstr_D, stabstr_U, stabstr_O) (stabstr_continue, DECL_ACCESSIBILITY_CHAR) New functions and/or proper function-like macros. (CONTIN): Use stabstr_continue, unconditionally. (get_lang_number): Define unconditionally, with ATTRIBUTE_UNUSED. (dbxout_init): Initialize stabstr_ob. Check NO_DBX_MAIN_SOURCE_DIRECTORY. Only write out the Ltext label if it was used. Use the new interfaces. (dbxout_source_file): Remove file argument; always write to asm_out_file. Use the new interfaces. (dbxout_type_method_1): Remove second argument which is always DECL_ASSEMBLER_NAME of the first argument. Use the new interfaces. (dbxout_type_methods): Remove write-only variables. Use the new interfaces. (dbxout_parms): Refactor to remove code duplicated in each of several successive if-else-if blocks. Use the new interfaces. (dbxout_function_end, emit_bincl_stab, dbxout_end_source_file) (dbxout_source_line, dbxout_finish, dbxout_type_index) (dbxout_type_fields, dbxout_range_type, dbxout_type, dbxout_type_name) (dbxout_class_name_qualifiers, dbxout_symbol, dbxout_symbol_location) (dbxout_symbol_name, dbxout_reg_parms, dbxout_args) (dbx_output_lbrac, dbx_output_rbrac, dbxout_block): Use the new interfaces. * Makefile.in (dbxout.o): Update dependencies. * defaults.h: Don't define ASM_STABD_OP. * output.h: Prototype new dbxout_* interfaces. * system.h: Poison DBX_OUTPUT_GCC_MARKER and DBX_FINISH_SYMBOL. * varasm.c: Don't define ASM_STABS_OP. (default_stabs_asm_out_constructor, default_stabs_asm_out_destructor): Use the new dbxout.c interfaces. Call sorry if neither DBX_DEBUGGING_INFO nor XCOFF_DEBUGGING_INFO is defined. * xcoffout.h: Don't define ASM_STABS_OP. (DBX_FINISH_SYMBOL): Rewrite and rename DBX_FINISH_STABS. (DBX_OUTPUT_MAIN_SOURCE_DIRECTORY, DBX_OUTPUT_GCC_MARKER): Delete. (NO_DBX_MAIN_SOURCE_DIRECTORY, NO_DBX_GCC_MARKER): Define. (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Change bare block to do { ... } while (0) idiom. * config/alpha/alpha.c (num_source_filenames): Export. * config/alpha/alpha.h (num_source_filenames): Declare. (DBX_OUTPUT_SOURCE_LINE): Use new interfaces. (SDB_OUTPUT_SOURCE_LINE): Add missing newline. * config/m32r/m32r.h (DBX_OUTPUT_SOURCE_LINE): Use new interfaces. Always use .debugsym. Update commentary. * config/mips/mips.h (DBX_OUTPUT_SOURCE_LINE): Use new interfaces. (SDB_OUTPUT_SOURCE_LINE): Add missing newline. * config/rs6000/linux64.h (DBX_OUTPUT_SOURCE_LINE, DBX_OUTPUT_BRAC): Use new interfaces. * config/rs6000/rs6000.c: If TARGET_MACHO, include gstab.h. (macho_branch_islands): Use new interfaces. * doc/tm.texi: Update. From-SVN: r89623
2004-10-23dbxout.c (dbxout_function_decl): Don't use DBX_OUTPUT_FUNCTION_END.Kazu Hirata1-1/+1
* dbxout.c (dbxout_function_decl): Don't use DBX_OUTPUT_FUNCTION_END. * system.h: Poison DBX_OUTPUT_FUNCTION_END. * doc/tm.texi (DBX_OUTPUT_FUNCTION_END): Remove. From-SVN: r89496
2004-10-21dbxout.c: Remove unnecessary #undefs.Zack Weinberg1-1/+4
* dbxout.c: Remove unnecessary #undefs. (GDB_INV_REF_REGPARM_STABS_LETTER, DBX_MEMPARM_STABS_LETTER) (FILE_NAME_JOINER, STABS_GCC_MARKER): Remove; fold sole definition into use sites. (cwd): Make local to dbxout_init. (dbxout_init): Restructure cwd-using logic for clarity. Use IS_DIR_SEPARATOR. * xcoffout.h (DBX_OUTPUT_GCC_MARKER): Definition of STABS_GCC_MARKER folded in here. * system.h: Poison now-unused macros. * doc/tm.texi: Remove documentation of now-unused macros. From-SVN: r89387
2004-10-06defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): Remove.Kazu Hirata1-1/+1
* defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): Remove. * dwarf2out.c (dwarf2out_init): Remove references to DWARF2_GENERATE_TEXT_SECTION_LABEL. * system.h: Poison DWARF2_GENERATE_TEXT_SECTION_LABEL. * doc/tm.texi (DWARF2_GENERATE_TEXT_SECTION_LABEL): Remove. From-SVN: r88631
2004-10-01collect2.c (COLLECT_PARSE_FLAG): Remove.Kazu Hirata1-1/+2
* collect2.c (COLLECT_PARSE_FLAG): Remove. (main): Remove a reference to COLLECT_PARSE_FLAG * system.h: Poison COLLECT_PARSE_FLAG. * doc/tm.texi (COLLECT_PARSE_FLAG): Remove. From-SVN: r88406
2004-09-27* system.h (getpagesize): Return 'int' instead of 'long'.Eric Botcazou1-2/+2
From-SVN: r88204
2004-08-28system.h (gcc_assert): Remove __builtin_expect.Nathan Sidwell1-3/+3
* system.h (gcc_assert): Remove __builtin_expect. Evaluate EXPR even when not checking. From-SVN: r86692
2004-08-27configure.ac: Add ENABLE_ASSERT_CHECKING control.Nathan Sidwell1-0/+13
* configure.ac: Add ENABLE_ASSERT_CHECKING control. Add is_release variable, use it for --enable-werror and --enable-checking defaults. * system.h (gcc_assert, gcc_unreachable): New. * doc/install.texi (--enable-checking): Update. * configure, config.in: Rebuilt. From-SVN: r86666
2004-08-24defaults.h (VECTOR_MODE_SUPPORTED_P): Remove macro.Eric Christopher1-2/+3
2004-08-23 Eric Christopher <echristo@redhat.com> * defaults.h (VECTOR_MODE_SUPPORTED_P): Remove macro. * system.h (VECTOR_MODE_SUPPORTED_P): Poison. * target-def.h (TARGET_VECTOR_MODE_SUPPORTED_P): Define. * target.h: Ditto. * hooks.h: Include machmode.h. (hook_bool_mode_false): Declare. * hooks.c (hook_bool_mode_false): Define. * expr.c (vector_mode_valid_p): Use targetm.vector_mode_supported_p. * stor-layout.c (layout_type): Ditto. * config/alpha/alpha.c (alpha_vector_mode_supported_p): New function. Define to target macro. * config/alpha/alpha.h (VECTOR_MODE_SUPPORTED_P): Delete. * config/arm/arm.c: Ditto. Use. * config/arm/arm.h: Ditto. * config/arm/arm-protos.h: Ditto. * config/i386/i386.c: Ditto. * config/i386/i386.h: Ditto. * config/rs6000/rs6000.c: Ditto. * config/rs6000/rs6000.h: Ditto. * config/sh/sh.c: Ditto. * config/sh/sh.h: Ditto. * config/sh/sh-protos.h: Ditto. * config/sh/sh.md: Use. * doc/tm.texi: Move documentation for VECTOR_MODE_SUPPORTED_P to TARGET_VECTOR_MODE_SUPPORTED_P. 2004-08-23 Eric Christopher <echristo@redhat.com> * trans-types.c (gfc_type_for_mode): Remove VECTOR_TYPE_SUPPORTED_P usage. Use build_vector_type_for_mode for vector types. From-SVN: r86453
2004-08-23Makefile.in (BUILD_ERRORS): Set to build-errors.Nathan Sidwell1-0/+5
* Makefile.in (BUILD_ERRORS): Set to build-errors. (errors.o): New target for host. (build-errors.o): New target for build. (genobjs): Replace errors.o with build-errors. (gengenrtl$(buildexeext)): Add $(BUILD_ERRORS). (GCOV_OBJS, GCOV_DUMP_OBJS): Add errors.o. (fix-headers$(build_exeext)): Add $(BUILD_ERRORS). (fix-header.o): Add errors.h * collect2.c (fancy_abort): Add parameters. * collect2.h (fancy_abort): Don't declare. * errors.h (fancy_abort): Don't declare. * errors.c: Include either bconfig.h or config.h. (fancy_abort): Trim filename. * fix-header.c (v_fatal, fatal): Remove. (progname): Remove definition. (main): Set progname here. * gcc.c (fancy_abort): Add parameters. * gcc.h (fancy_abort): Remove declaration. * gcov.c (fancy_abort): Remove. * rtl.h (fancy_abort): Don't declare. (abort): Don't define. * tree.h (fancy_abort): Don't declare. (abort): Don't define. * system.h (fancy_abort): Declare. (abort): Define to fancy_abort. * fixinc/Makefile.in (ALLOBJ): Add ../build-errors.o * java/jv-scan.c (fancy_abort): Add. From-SVN: r86424
2004-07-25system.h (bool, [...]): Don't redefine as preprocessor macros in C++.Bernardo Innocenti1-8/+18
* system.h (bool, true, false): Don't redefine as preprocessor macros in C++. From-SVN: r85135
2004-07-16builtins.c (std_expand_builtin_va_arg): Remove.Richard Henderson1-1/+1
* builtins.c (std_expand_builtin_va_arg): Remove. (expand_builtin_va_arg): Remove. * expr.h: Don't declare them. * gimplify.c (mark_decls_volatile_r): Remove. (copy_if_shared_r): Don't call it. * target-def.h: Don't test EXPAND_BUILTIN_VA_ARG. * expr.c (expand_expr_real_1): Don't handle VA_ARG_EXPR. * gimple-low.c (lower_stmt): Likewise. * tree-cfg.c (cfg_remove_useless_stmts_bb): Likewise. * tree-gimple.c (is_gimple_tmp_rhs, is_gimple_stmt): Likewise. * tree-ssa-operands.c (get_expr_operands): Likewise. * doc/tm.texi (TARGET_GIMPLIFY_VA_ARG_EXPR): Don't mention EXPAND_BUILTIN_VA_ARG. * system.h (EXPAND_BUILTIN_VA_ARG): Poison. * config/alpha/alpha.h, config/alpha/unicosmk.h, config/i386/i386.h, config/ia64/ia64.h, config/rs6000/rs6000.h, config/s390/s390.h, config/sparc/sparc.h (EXPAND_BUILTIN_VA_ARG): Remove. From-SVN: r84842
2004-07-13target.h (struct gcc_target): Add calls.pass_by_reference.Richard Henderson1-1/+1
* target.h (struct gcc_target): Add calls.pass_by_reference. * target-def.h (TARGET_PASS_BY_REFERENCE): New. * function.c (pass_by_reference): Use the hook. * system.h (FUNCTION_ARG_PASS_BY_REFERENCE): Poison. * targhooks.c, targhooks.h (hook_pass_by_reference_false): New. (hook_pass_by_reference_must_pass_in_stack): New. * config/alpha/alpha.c (function_arg): Don't query pass-by-ref. (alpha_pass_by_reference): New. (TARGET_PASS_BY_REFERENCE): New. * config/alpha/alpha.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/arc/arc.c (arc_pass_by_reference): New. (TARGET_PASS_BY_REFERENCE): New. * config/arc/arc.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. (FUNCTION_ARG_CALLEE_COPIES): True. * config/arm/arm-protos.h (arm_function_arg_pass_by_reference): Remove. * config/arm/arm.c (TARGET_PASS_BY_REFERENCE): New. (arm_pass_by_reference): Rename from arm_function_arg_pass_by_reference. * config/arm/arm.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/c4x/c4x.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/cris/cris.c (cris_pass_by_reference): New. (TARGET_PASS_BY_REFERENCE): New. * config/cris/cris.h (FUNCTION_ARG): Don't query pass-by-ref. (FUNCTION_INCOMING_ARG, FUNCTION_ARG_ADVANCE): Likewise. (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/fr30/fr30.c (TARGET_PASS_BY_REFERENCE): New. * config/fr30/fr30.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/frv/frv-protos.h (frv_function_arg_pass_by_reference): Kill. * config/frv/frv.c (TARGET_PASS_BY_REFERENCE): New. (frv_function_arg_pass_by_reference): Remove. * config/frv/frv.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/i386/i386-protos.h (function_arg_pass_by_reference): Remove. * config/i386/i386.c (TARGET_PASS_BY_REFERENCE): New. (ix86_pass_by_reference): Rename from function_arg_pass_by_reference. * config/i386/i386.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/ia64/ia64-protos.h (ia64_function_arg_pass_by_reference): Kill. * config/ia64/ia64.c (TARGET_PASS_BY_REFERENCE): New. (ia64_pass_by_reference): Rename from ia64_function_arg_pass_by_reference. * config/ia64/ia64.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/ip2k/ip2k.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/iq2000/iq2000-protos.h (function_arg_pass_by_reference): Kill. * config/iq2000/iq2000.c (TARGET_PASS_BY_REFERENCE): New. (iq2000_pass_by_reference): Rename from function_arg_pass_by_reference. * config/iq2000/iq2000.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. (FUNCTION_ARG_CALLEE_COPIES): Don't reference pass-by-ref. * config/m32r/m32r-protos.h (m32r_pass_by_reference): Remove. * config/m32r/m32r.c (TARGET_PASS_BY_REFERENCE): New. (m32r_pass_by_reference): Adjust prototype. Make static. Handle mode sizes correctly. * config/m32r/m32r.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c (m68hc11_function_arg_pass_by_reference): Remove. * config/m68hc11/m68hc11.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. (FUNCTION_ARG_CALLEE_COPIES): Don't reference pass-by-ref. * config/mcore/mcore.c (TARGET_PASS_BY_REFERENCE): New. * config/mcore/mcore.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/mips/mips-protos.h (function_arg_pass_by_reference): Remove. * config/mips/mips.c (TARGET_PASS_BY_REFERENCE): New. (mips_va_arg): Use pass_by_reference. (mips_pass_by_reference): Rename from function_arg_pass_by_reference. Handle mode sizes correctly. * config/mips/mips.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. (FUNCTION_ARG_CALLEE_COPIES): Don't reference pass-by-ref. * config/mmix/mmix-protos.h (mmix_function_arg_pass_by_reference): Kill. * config/mmix/mmix.c (TARGET_PASS_BY_REFERENCE): New. (mmix_pass_by_reference): Rename from mmix_function_arg_pass_by_reference. * config/mmix/mmix.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. (FUNCTION_ARG_CALLEE_COPIES): True. * config/mn10300/mn10300.c (TARGET_PASS_BY_REFERENCE): New. (mn10300_pass_by_reference): New. * config/mn10300/mn10300.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. (FUNCTION_ARG_CALLEE_COPIES): True. * config/pa/pa.c (pa_pass_by_reference): New. (TARGET_PASS_BY_REFERENCE): New. * config/pa/pa.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. (FUNCTION_ARG_CALLEE_COPIES): True. * config/rs6000/rs6000-protos.h (function_arg_pass_by_reference): Kill. * config/rs6000/rs6000.c (TARGET_PASS_BY_REFERENCE): New. (rs6000_pass_by_reference): Rename from function_arg_pass_by_reference. * config/rs6000/rs6000.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/s390/s390-protos.h (s390_function_arg_pass_by_reference): Kill. * config/s390/s390.c (TARGET_PASS_BY_REFERENCE): New. (s390_pass_by_reference): Rename from s390_function_arg_pass_by_reference. (s390_function_arg_advance): Don't query pass-by-ref. (s390_function_arg): Likewise. (s390_gimplify_va_arg): Use pass_by_reference. (s390_call_saved_register_used): Likewise. * config/s390/s390.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/sh/sh.c (TARGET_PASS_BY_REFERENCE): New. (shcompact_byref, sh_pass_by_reference): New. * config/sh/sh.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. (SHCOMPACT_BYREF): Remove. * config/sparc/sparc-protos.h (function_arg_pass_by_reference): Kill. * config/sparc/sparc.c (TARGET_PASS_BY_REFERENCE): New. (sparc_pass_by_reference): Rename from function_arg_pass_by_reference. (sparc_gimplify_va_arg): Use pass_by_reference. * config/sparc/sparc.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/stormy16/stormy16.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. * config/v850/v850.c (TARGET_PASS_BY_REFERENCE): New. (v850_pass_by_reference): New. * config/v850/v850.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove. (FUNCTION_ARG_CALLEE_COPIES): True. * doc/tm.texi (TARGET_PASS_BY_REFERENCE): Update from FUNCTION_ARG_PASS_BY_REFERENCE docs. From-SVN: r84672
2004-07-13target-def.h (TARGET_MUST_PASS_IN_STACK): New.Richard Henderson1-1/+2
* target-def.h (TARGET_MUST_PASS_IN_STACK): New. * target.h (struct gcc_target): Add calls.must_pass_in_stack. * expr.h (MUST_PASS_IN_STACK): Remove. * system.h (MUST_PASS_IN_STACK): Poison. * tree.h (must_pass_in_stack_var_size): Declare. (must_pass_in_stack_var_size_or_pad): Declare. * calls.c (must_pass_in_stack_var_size): New. (must_pass_in_stack_var_size_or_pad): Rename from default_must_pass_in_stack. * config/alpha/alpha.c (unicosmk_must_pass_in_stack): New. (TARGET_MUST_PASS_IN_STACK): New. * config/alpha/unicosmk.h (MUST_PASS_IN_STACK): Remove. * config/fr30/fr30.c (fr30_must_pass_in_stack): New. (TARGET_MUST_PASS_IN_STACK): New. * config/fr30/fr30.h (MUST_PASS_IN_STACK): Remove. * config/frv/frv.c (frv_must_pass_in_stack): New. (TARGET_MUST_PASS_IN_STACK): New. * config/frv/frv.h (MUST_PASS_IN_STACK): Remove. * config/i386/i386-protos.h (ix86_must_pass_in_stack): Remove. * config/i386/i386.c (TARGET_MUST_PASS_IN_STACK): New. (ix86_must_pass_in_stack): Make static. * config/i386/i386.h (MUST_PASS_IN_STACK): Remove. * config/ia64/ia64.c (TARGET_MUST_PASS_IN_STACK): New. * config/ia64/ia64.h (MUST_PASS_IN_STACK): Remove. * config/m32r/m32r.c (TARGET_MUST_PASS_IN_STACK): New. * config/m32r/m32r.h (MUST_PASS_IN_STACK): Remove. * config/mcore/mcore-protos.h (mcore_must_pass_on_stack): Remove. * config/mcore/mcore.c (TARGET_MUST_PASS_IN_STACK): New. (mcore_must_pass_on_stack): Remove. * config/mcore/mcore.h (MUST_PASS_IN_STACK): Remove. * config/mips/mips.c (TARGET_MUST_PASS_IN_STACK): New. * config/mips/mips.h (MUST_PASS_IN_STACK): Remove. * config/pa/pa.c (TARGET_MUST_PASS_IN_STACK): New. * config/pa/pa.h (MUST_PASS_IN_STACK): Remove. * config/rs6000/aix.h (MUST_PASS_IN_STACK): Remove. * config/rs6000/linux64.h (MUST_PASS_IN_STACK): Remove. * config/rs6000/rs6000.c (rs6000_must_pass_in_stack): New. (TARGET_MUST_PASS_IN_STACK): New. * config/sh/sh.c (TARGET_MUST_PASS_IN_STACK): New. * config/sh/sh.h (MUST_PASS_IN_STACK): Remove. * config/sparc/sparc.c (TARGET_MUST_PASS_IN_STACK): New. * config/sparc/sparc.h (MUST_PASS_IN_STACK): Remove. * config/xtensa/xtensa.c (TARGET_MUST_PASS_IN_STACK): New. * config/xtensa/xtensa.h (MUST_PASS_IN_STACK): Remove. * doc/tm.texi (TARGET_MUST_PASS_IN_STACK): Update from MUST_PASS_IN_STACK. * calls.c, function.c, config/alpha/alpha.c, config/alpha/alpha.h, config/alpha/unicosmk.h, config/alpha/vms.h, config/c4x/c4x.c, config/cris/cris.h, config/fr30/fr30.c, config/fr30/fr30.h, config/frv/frv.c, config/i386/i386.c, config/iq2000/iq2000.c, config/mcore/mcore.c, config/mcore/mcore.h, config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h, config/rs6000/rs6000.c, config/sh/sh.c, config/sh/sh.h, config/stormy16/stormy16.c, config/xtensa/xtensa.c: Use target hook. From-SVN: r84606
2004-07-11langhooks.h (estimate_num_insns, [...]): Remove hooks.Joseph Myers1-1/+5
* langhooks.h (estimate_num_insns, pushlevel, poplevel, set_block, maybe_build_cleanup, update_decl_after_saving): Remove hooks. * langhooks.c (lhd_clear_binding_stack): Remove. * langhooks-def.h (lhd_clear_binding_stack, LANG_HOOKS_MAYBE_BUILD_CLEANUP, LANG_HOOKS_UPDATE_DECL_AFTER_SAVING, LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS, LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove. (LANG_HOOKS_CLEAR_BINDING_STACK): Define to lhd_do_nothing. * system.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS, LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_SET_BLOCK, LANG_HOOKS_MAYBE_BUILD_CLEANUP, LANG_HOOKS_UPDATE_DECL_AFTER_SAVING, LANG_HOOKS_POPLEVEL): Poison. * tree.h (poplevel): Don't declare. * c-lang.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove. * objc/objc-lang.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove. ada: * misc.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove. cp: * cp-lang.c (LANG_HOOKS_MAYBE_BUILD_CLEANUP, LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_UPDATE_DECL_AFTER_SAVING): Remove. * cp-tree.h (poplevel): Declare. (set_block): Remove. * decl.c (set_block): Remove. fortran: * f95-lang.c (set_block): Remove. (gfc_clear_binding_stack): New. (LANG_HOOKS_CLEAR_BINDING_STACK): Define. (struct binding_level): Remove block_created_by_back_end. (clear_binding_level): Likewise. (poplevel): Don't handle block_created_by_back_end. java: * java-tree.h (set_block): Remove. * lang.c (java_clear_binding_stack): New. (LANG_HOOKS_CLEAR_BINDING_STACK): Define. * decl.c (struct binding_level): Remove this_block. (clear_binding_level): Likewise. (poplevel): Don't handle this_block. (set_block): Remove. treelang: * treetree.c (set_block): Remove. (struct binding_level): Remove block_created_by_back_end. (clear_binding_level): Likewise. (tree_code_create_function_initial, tree_code_create_function_wrapup): Call pushlevel and poplevel directly rather than through hooks. (poplevel): Don't handle block_created_by_back_end. From-SVN: r84499
2004-07-08system.h: Prototype getpagesize if missing.Aaron W. LaFramboise1-0/+4
* system.h: Prototype getpagesize if missing. * configure.ac: Add getpagesize to gcc_AC_CHECK_DECLS. * configure: Regenerate. * config.in: Regenerate. From-SVN: r84323
2004-07-05c-decl.c, [...]: Don't check TARGET_MEM_FUNCTIONS.Joseph Myers1-1/+1
* c-decl.c, config/m32r/m32r.c, expr.c, optabs.c: Don't check TARGET_MEM_FUNCTIONS. * system.h: Poison TARGET_MEM_FUNCTIONS. * libfuncs.h (LTI_bcopy, LTI_bcmp, LTI_bzero, bcopy_libfunc, bcmp_libfunc, bzero_libfunc): Remove. * optabs.c (init_obtabs): Don't set bcopy_libfunc, bcmp_libfunc or bzero_libfunc. * doc/tm.texi (TARGET_MEM_FUNCTIONS): Remove. * doc/standards.texi: Don't mention calling BSD string functions. * doc/invoke.texi: Likewise. Mention that memmove may be called. * config/vax/t-memfuncs: New. * config/memcmp.c, config/memcpy.c, config/memmove.c, config/memset.c: New. * config/pdp11/t-pdp11 (LIB2FUNCS_EXTRA): Use these files. * config.gcc (vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*): Use vax/t-memfuncs. * config/alpha/alpha.h, config/arc/arc.h, config/arm/arm.h, config/avr/avr.h, config/c4x/c4x.h, config/cris/aout.h, config/elfos.h, config/gnu.h, config/h8300/h8300.h, config/i386/gas.h, config/ia64/ia64.h, config/interix.h, config/ip2k/ip2k.h, config/lynx-ng.h, config/m32r/m32r.h, config/mcore/mcore.h, config/mips/mips.h, config/mmix/mmix.h, config/netbsd.h, config/openbsd.h, config/pa/pa.h, config/rs6000/rs6000.h, config/rtems.h, config/s390/s390.h, config/sh/sh.h, config/sparc/sparc.h, config/stormy16/stormy16.h, config/svr3.h: Don't define TARGET_MEM_FUNCTIONS. From-SVN: r84130
2004-06-24c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.Ulrich Weigand1-1/+2
* 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-20c-common.h (has_c_linkage): New interface.Zack Weinberg1-1/+2
* c-common.h (has_c_linkage): New interface. * c-cppbuiltin.c: Include target.h. (c_cpp_builtins): Define __PRAGMA_REDEFINE_EXTNAME and __PRAGMA_EXTERN_PREFIX when appropriate. * c-pragma.c: Include target.h. Document clarified semantics of symbol-renaming #pragmas. (handle_pragma_redefine_extname, handle_pragma_extern_prefix) (maybe_apply_renaming_pragma): Rewrite according to clarified semantics. Always recognize, but do not necessarily execute. (init_pragma): Unconditionally register symbol-renaming pragmas. * system.h: Poison HANDLE_PRAGMA_REDEFINE_EXTNAME and HANDLE_PRAGMA_EXTERN_PREFIX. * target.h (struct gcc_target): Add handle_pragma_redefine_extname and handle_pragma_extern_prefix flags. * target-def.h: Add defaults for TARGET_HANDLE_PRAGMA_REDEFINE_EXTNAME and TARGET_HANDLE_PRAGMA_EXTERN_PREFIX. * Makefile.in (c-pragma.o, c-cppbuiltin.o): Update dependencies. * config/sol2.h: Define TARGET_HANDLE_PRAGMA_REDEFINE_EXTNAME, not HANDLE_PRAGMA_REDEFINE_EXTNAME. (TARGET_OS_CPP_BUILTINS): No need to define __PRAGMA_REDEFINE_EXTNAME. (TRANSFER_FROM_TRAMPOLINE): Prototype mprotect. * config/alpha/osf.h: Define TARGET_HANDLE_PRAGMA_EXTERN_PREFIX, not HANDLE_PRAGMA_EXTERN_PREFIX. (TARGET_OS_CPP_BUILTINS): No need to define __PRAGMA_EXTERN_PREFIX. * doc/extend.texi (Solaris Pragmas, Tru64 Pragmas): Combine into one section "Symbol-Renaming Pragmas"; clarify; document adjusted semantics. * builtins.c (expand_builtin): Do not issue error for a builtin with no special case code and no DECL_ASSEMBLER_NAME; just do the library call. * c-decl.c (builtin_function): Don't call make_decl_rtl. * c-objc-common.c (has_c_linkage): Stub implementation. * cgraphunit.c (cgraph_expand_function) (cgraph_remove_unreachable_nodes): Don't clear DECL_ARGUMENTS. cp: * cp-lang.c (has_c_linkage): Implement. * cp-tree.h (set_mangled_name_for_decl): Don't prototype. * decl.c (duplicate_decls): Use COPY_DECL_RTL. (builtin_function_1): Don't call make_decl_rtl. (build_cp_library_fn): Don't call set_mangled_name_for_decl. (grokvardecl): Don't call mangle_decl. * except.c (nothrow_libfn_p): Look at DECL_NAME, not DECL_ASSEMBLER_NAME. * method.c (set_mangled_name_for_decl): Delete. * name-lookup.c (pushdecl): When a local extern shadows a file-scope declaration of the same object, give both DECLs the same DECL_UID. * typeck.c (cxx_mark_addressable): Don't set TREE_ADDRESSABLE on DECL_ASSEMBLER_NAME. testsuite: * g++.dg/expr/enum1.C, g++.dg/opt/const3.C: Declare abort with extern "C". * g++.dg/other/pragma-re-1.C: Add comments. From-SVN: r83405
2004-06-12configure.ac: Don't invoke ACX_HEADER_STDBOOL.Zack Weinberg1-28/+11
gcc: * configure.ac: Don't invoke ACX_HEADER_STDBOOL. * configure, config.in: Regenerate. * system.h: Unconditionally define bool as unsigned char, BOOL_BITFIELD as unsigned int. * domwalk.h: Use BOOL_BITFIELD. libcpp: * configure.ac: Don't invoke ACX_HEADER_STDBOOL. * configure, config.in: Regenerate. * system.h: Unconditionally define bool as unsigned char, BOOL_BITFIELD as unsigned int. * .cvsignore: New file. From-SVN: r83020
2004-05-24Makefile.def (host_modules): add libcpp.Paolo Bonzini1-10/+0
ChangeLog: 2004-05-23 Paolo Bonzini <bonzini@gnu.org> * Makefile.def (host_modules): add libcpp. * Makefile.tpl: Add dependencies on and for libcpp. * Makefile.in: Regenerate. * configure.in: Add libcpp host module. * configure: Regenerate. config/ChangeLog: 2004-05-23 Paolo Bonzini <bonzini@gnu.org> * acx.m4 (ACX_HEADER_STDBOOL, ACX_HEADER_STRING): From gcc. gcc/ChangeLog: 2004-05-23 Paolo Bonzini <bonzini@gnu.org> Move libcpp to the toplevel. * Makefile.in: Remove references to libcpp files, use CPPLIBS instead of libcpp.a. Define SYMTAB_H and change hashtable.h to that. * aclocal.m4 (gcc_AC_HEADER_STDBOOL, gcc_AC_HEADER_STRING, gcc_AC_C__BOOL): Remove. * configure.ac (gcc_AC_C__BOOL, HAVE_UCHAR): Remove tests. * configure: Regenerate. * config.in: Regenerate. * c-ppoutput.c: Include ../libcpp/internal.h instead of cpphash.h. * cppcharset.c: Removed. * cpperror.c: Removed. * cppexp.c: Removed. * cppfiles.c: Removed. * cpphash.c: Removed. * cpphash.h: Removed. * cppinit.c: Removed. * cpplex.c: Removed. * cpplib.c: Removed. * cpplib.h: Removed. * cppmacro.c: Removed. * cpppch.c: Removed. * cpptrad.c: Removed. * cppucnid.h: Removed. * cppucnid.pl: Removed. * cppucnid.tab: Removed. * hashtable.c: Removed. * hashtable.h: Removed. * line-map.c: Removed. * line-map.h: Removed. * mkdeps.c: Removed. * mkdeps.h: Removed. * stringpool.h: Include symtab.h instead of hashtable.h. * tree.h: Include symtab.h instead of hashtable.h. * system.h (O_NONBLOCK, O_NOCTTY): Do not define. gcc/cp/ChangeLog: 2004-05-23 Paolo Bonzini <bonzini@gnu.org> * Make-lang.in: No need to specify $(LIBCPP). gcc/java/ChangeLog: 2004-05-23 Paolo Bonzini <bonzini@gnu.org> * Make-lang.in: Link in $(LIBCPP) instead of mkdeps.o. libcpp/ChangeLog: 2004-05-23 Paolo Bonzini <bonzini@gnu.org> Moved libcpp from the gcc subdirectory to the toplevel. * Makefile.am: New file. * Makefile.in: Regenerate. * configure.ac: New file. * configure: Regenerate. * config.in: Regenerate. * charset.c: Moved from gcc/cppcharset.c. Add note about brokenness of input charset detection. Adjust for change in name of cppucnid.h. * errors.c: Moved from gcc/cpperror.c. Do not include intl.h. * expr.c: Moved from gcc/cppexp.c. * files.c: Moved from gcc/cppfiles.c. Do not include intl.h. Remove #define of O_BINARY, it is in system.h. * identifiers.c: Moved from gcc/cpphash.c. * internal.h: Moved from gcc/cpphash.h. Change header guard name. All other files adjusted to match name change. * init.c: Moved from gcc/cppinit.c. (init_library) [ENABLE_NLS]: Call bindtextdomain. * lex.c: Moved from gcc/cpplex.c. * directives.c: Moved from gcc/cpplib.c. * macro.c: Moved from gcc/cppmacro.c. * pch.c: Moved from gcc/cpppch.c. Do not include intl.h. * traditional.c: Moved from gcc/cpptrad.c. * ucnid.h: Moved from gcc/cppucnid.h. Change header guard name. * ucnid.pl: Moved from gcc/cppucnid.pl. * ucnid.tab: Moved from gcc/cppucnid.tab. Change header guard name. * symtab.c: Moved from gcc/hashtable.c. * line-map.c: Moved from gcc. Do not include intl.h. * mkdeps.c: Moved from gcc. * system.h: New file. libcpp/include/ChangeLog: 2004-05-23 Paolo Bonzini <bonzini@gnu.org> * cpplib.h: Moved from gcc. Change header guard name. * line-map.h: Moved from gcc. Change header guard name. * mkdeps.h: Moved from gcc. Change header guard name. * symtab.h: Moved from gcc/hashtable.h. Change header guard name. libcpp/po/ChangeLog: 2004-05-23 Paolo Bonzini <bonzini@gnu.org> * be.po: Extracted from gcc/po/be.po. * ca.po: Extracted from gcc/po/ca.po. * da.po: Extracted from gcc/po/da.po. * de.po: Extracted from gcc/po/de.po. * el.po: Extracted from gcc/po/el.po. * es.po: Extracted from gcc/po/es.po. * fr.po: Extracted from gcc/po/fr.po. * ja.po: Extracted from gcc/po/ja.po. * nl.po: Extracted from gcc/po/nl.po. * sv.po: Extracted from gcc/po/sv.po. * tr.po: Extracted from gcc/po/tr.po. From-SVN: r82199
2004-05-24gcc.c (struct prefix_list): Add forward declaration.Paolo Bonzini1-1/+1
2004-05-23 Paolo Bonzini <bonzini@gnu.org> * gcc.c (struct prefix_list): Add forward declaration. (do_spec_path): New function, extracted from... (do_spec_1) <'D'>: ... here. Drop support for SPACE_AFTER_L_OPTION. (do_spec_1) <'I'>: Use do_spec_path. (process_command): Do not store the 'include' suffix in include_prefixes. * system.h: Poison SPACE_AFTER_L_OPTION. From-SVN: r82197
2004-05-21system.h: Poison NO_RECURSIVE_FUNCTION_CSE.Ian Lance Taylor1-1/+2
* system.h: Poison NO_RECURSIVE_FUNCTION_CSE. * calls.c (prepare_call_address): Don't test NO_RECURSIVE_FUNCTION_CSE. * config/arc/arc.h (NO_RECURSIVE_FUNCTION_CSE): Don't define. * config/arm/arm.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/avr/avr.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/frv/frv.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/i386/i386.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/ip2k/ip2k.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/iq2000/iq2000.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/m32r/m32r.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/m68k/m68k.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/mcore/mcore.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/mips/mips.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/stormy16/stormy16.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/xtensa/xtensa.h (NO_RECURSIVE_FUNCTION_CSE): Likewise. * config/sh/sh.h: Remove NO_RECURSIVE_FUNCTION_CSE comment. * doc/tm.texi (Costs): Remove documentation for NO_RECURSIVE_FUNCTION_CSE. From-SVN: r82084
2004-05-13Merge tree-ssa-20020619-branch into mainline.Diego Novillo1-0/+1
From-SVN: r81764
2004-04-28calls.c (precompute_arguments): Remove PROMOTE_FOR_CALL_ONLY.Paul Brook1-1/+1
* calls.c (precompute_arguments): Remove PROMOTE_FOR_CALL_ONLY. * function.c (assign_temp): Ditto. * system.h (PROMOTE_FOR_CALL_ONLY): Poison. From-SVN: r81247
2004-03-19system.h (MD_ASM_CLOBBERS): Move to "Old target macros that have moved to ↵Kazu Hirata1-2/+2
the target hooks structure". * system.h (MD_ASM_CLOBBERS): Move to "Old target macros that have moved to the target hooks structure". From-SVN: r79656
2004-03-12re PR target/14547 (Passing _Complex long double does not follow the ABI)Richard Henderson1-1/+1
PR target/14547 * target.h (struct gcc_target): Move calls substructure before booleans. Add split_complex_arg. * function.c (assign_parms, split_complex_args): Use it. * calls.c (expand_call): Likewise. (split_complex_values): Likewise. Check for splittable types before allocating memory. (split_complex_types): Likewise. * system.h (SPLIT_COMPLEX_ARGS): Poison. * expr.h (SPLIT_COMPLEX_ARGS): Remove. * target-def.h (TARGET_SPLIT_COMPLEX_ARG): New. * config/alpha/alpha.c (alpha_split_complex_arg): New. (TARGET_SPLIT_COMPLEX_ARG): New. * config/alpha/alpha.h (SPLIT_COMPLEX_ARGS): Remove. * config/rs6000/rs6000.c (TARGET_SPLIT_COMPLEX_ARG): New. (rs6000_override_options): Zap it for non-AIX. (rs6000_function_value): Use targetm.calls.split_complex_arg. * config/rs6000/rs6000.h (SPLIT_COMPLEX_ARGS): Remove. * config/xtensa/xtensa.c (TARGET_SPLIT_COMPLEX_ARG): New. * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Remove. * doc/tm.texi (TARGET_SPLIT_COMPLEX_ARG): Modify from old SPLIT_COMPLEX_ARGS entry. From-SVN: r79376
2004-03-10system.h (SUNOS4_SHARED_LIBRARIES): Poison.Ian Lance Taylor1-1/+1
* system.h (SUNOS4_SHARED_LIBRARIES): Poison. * collect2.c: Remove SUNOS4_SHARED_LIBRARIES code. * config/sparc/aout.h (TARGET_ASM_SELECT_SECTION): Don't define. * config/sparc/sparc.c (sparc_aout_select_section): Remove. (sparc_aout_select_rtx_section): Don't check SUNOS4_SHARED_LIBRARIES. * config/sparc/sparc.h (SUNOS4_SHARED_LIBRARIES): Don't define. From-SVN: r79216
2004-03-03hooks.c (hook_tree_tree_identity): New.Kazu Hirata1-1/+2
* hooks.c (hook_tree_tree_identity): New. * hooks.h: Add a prototype for hook_tree_tree_identity. * stmt.c (expand_asm_operands): Use targetm.md_asm_clobbers instead of MD_ASM_CLOBBERS. * system.h (MD_ASM_CLOBBERS): Poison. * target-def.h (TARGET_MD_ASM_CLOBBERS): New. (TARGET_INITIALIZER): Add TARGET_MD_ASM_CLOBBERS. * target.h (gcc_target): Add md_asm_clobbers. * config/i386/i386.c (TARGET_MD_ASM_CLOBBERS): New. (ix86_md_asm_clobbers): New. * config/i386/i386.h (MD_ASM_CLOBBERS): Remove. * doc/tm.texi (MD_ASM_CLOBBERS): Change to TARGET_MD_ASM_CLOBBERS. From-SVN: r78868
2004-03-02builtins.c (BUILTIN_SETJMP_FRAME_VALUE): Remove.Kazu Hirata1-1/+1
* builtins.c (BUILTIN_SETJMP_FRAME_VALUE): Remove. (expand_builtin_setjmp_setup): Use targetm.builtin_setjmp_frame_value instead of BUILTIN_SETJMP_FRAME_VALUE. * system.h (BUILTIN_SETJMP_FRAME_VALUE): Poison. * target-def.h (TARGET_BUILTIN_SETJMP_FRAME_VALUE): New. (TARGET_INITIALIZER): Add TARGET_BUILTIN_SETJMP_FRAME_VALUE. * target.h (gcc_target): Add builtin_setjmp_frame_value. * targhooks.c (default_builtin_setjmp_frame_value): New. * targhooks.h: Add a prototype for default_builtin_setjmp_frame_value. * doc/tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Change to TARGET_BUILTIN_SETJMP_FRAME_VALUE. From-SVN: r78789
2004-03-02system.h (DBX_OUTPUT_STANDARD_TYPES): Poison.Kazu Hirata1-1/+2
* system.h (DBX_OUTPUT_STANDARD_TYPES): Poison. * doc/tm.texi (DBX_OUTPUT_STANDARD_TYPES): Remove. From-SVN: r78744
2004-02-28genattr.c (main): Don't define TRADITIONAL_PIPELINE_INTERFACE or ↵Kazu Hirata1-1/+2
DFA_PIPELINE_INTERFACE. * genattr.c (main): Don't define TRADITIONAL_PIPELINE_INTERFACE or DFA_PIPELINE_INTERFACE. * system.h (TRADITIONAL_PIPELINE_INTERFACE): Poison. (DFA_PIPELINE_INTERFACE): Likewise. * doc/tm.texi (TRADITIONAL_PIPELINE_INTERFACE): Remove. (DFA_PIPELINE_INTERFACE): Likewise. From-SVN: r78628
2004-02-26calls.c: Don't reference FINAL_REG_PARM_STACK_SPACE or ↵Kazu Hirata1-1/+2
MAYBE_REG_PARM_STACK_SPACE. * calls.c: Don't reference FINAL_REG_PARM_STACK_SPACE or MAYBE_REG_PARM_STACK_SPACE. * function.c: Likewise. * system.h (FINAL_REG_PARM_STACK_SPACE): Poison. (MAYBE_REG_PARM_STACK_SPACE): Likewise. * doc/tm.texi (FINAL_REG_PARM_STACK_SPACE): Remove. (MAYBE_REG_PARM_STACK_SPACE): Likewise. From-SVN: r78530
2004-02-23Makefile.in (opts.o): Depend on target.h.Kazu Hirata1-1/+2
* Makefile.in (opts.o): Depend on target.h. * opts.c (decode_options): Use targetm.default_short_enums instead of DEFAULT_SHORT_ENUMS. * system.h (DEFAULT_SHORT_ENUMS): Poison. * target-def.h (TARGET_DEFAULT_SHORT_ENUMS): New. (TARGET_INITIALIZER): Add TARGET_DEFAULT_SHORT_ENUMS. * target.h (gcc_target): Add default_short_enums. * config/cris/cris.h: Remove a comment about DEFAULT_SHORT_ENUMS. * config/ip2k/ip2k.h: Likewise. * doc/tm.texi (DEFAULT_SHORT_ENUMS): Change to TARGET_DEFAULT_SHORT_ENUMS. Update the description. From-SVN: r78303
2004-02-20revert: opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS.Kazu Hirata1-2/+1
Revert: 2004-02-19 Kazu Hirata <kazu@cs.umass.edu> * opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS. * system.h (DEFAULT_SHORT_ENUMS): Poison. * config/cris/cris.h: Remove a comment about DEFAULT_SHORT_ENUMS. * config/ip2k/ip2k.h: Likewise. * doc/tm.texi (DEFAULT_SHORT_ENUMS): Remove. From-SVN: r78168
2004-02-19opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS.Kazu Hirata1-1/+2
* opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS. * system.h (DEFAULT_SHORT_ENUMS): Poison. * config/cris/cris.h: Remove a comment about DEFAULT_SHORT_ENUMS. * config/ip2k/ip2k.h: Likewise. * doc/tm.texi (DEFAULT_SHORT_ENUMS): Remove. From-SVN: r78122
2004-02-08default.h (PROMOTE_PROTOTYPES): Remove.Kazu Hirata1-1/+3
* default.h (PROMOTE_PROTOTYPES): Remove. * system.h (PROMOTE_FUNCTION_RETURN, PROMOTE_PROTOTYPES, STRUCT_VALUE_REGNUM, SETUP_INCOMING_VARARGS, EXPAND_BUILTIN_SAVEREGS): Poison. * target-def.h (TARGET_PROMOTE_FUNCTION_RETURN): Define as hook_bool_tree_false. (TARGET_PROMOTE_PROTOTYPES): Likewise. * target.h: Replace SETUP_INCOMING_VARARGS with targetm.calls.setup_incoming_varargs(). * targhooks.c (default_promote_function_return): Remove. (default_promote_prototypes): Likewise. (default_struct_value_rtx): Always abort(). (default_expand_builtin_saveregs): Always print an error message. (default_setup_incoming_varargs): Do nothing. (default_pretend_outgoing_varargs_named): Don't depend on SETUP_INCOMING_VARARGS. * targhooks.h: Remove the prototype for default_promote_function_return and default_promote_prototypes. From-SVN: r77477
2004-02-08system.h (SHARED_SECTION_ASM_OP): Poison.Kazu Hirata1-1/+1
* system.h (SHARED_SECTION_ASM_OP): Poison. * varasm.c (data_section): Don't use SHARED_SECTION_ASM_OP. * doc/tm.texi (SHARED_SECTION_ASM_OP): Remove. From-SVN: r77476
2004-02-07config.gcc: Don't mention MAX_LONG_TYPE_SIZE.Kazu Hirata1-1/+2
* config.gcc: Don't mention MAX_LONG_TYPE_SIZE. * system.h (MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE, GCOV_TYPE_SIZE): Poison. * config/avr/avr.h, config/h8300/h8300.h, config/i386/i386.h, config/ia64/ia64.h, config/ip2k/ip2k.h, config/iq2000/iq2000.h, config/mips/iris5.h, config/mips/mips.h, config/pa/pa-64.h, config/pa/pa.h, config/rs6000/aix51.h, config/rs6000/aix52.h, config/rs6000/darwin.h, config/rs6000/rs6000.h, config/s390/s390.h, config/sh/sh.h, config/sparc/freebsd.h, config/sparc/linux.h, config/sparc/linux64.h, config/sparc/netbsd-elf.h, config/sparc/sparc.h, config/xtensa/xtensa.h: Remove the definitions of MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, and/or MAX_WCHAR_TYPE_SIZE. * doc/tm.texi (MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE, GCOV_TYPE_SIZE): Remove. From-SVN: r77460
2004-02-03system.h (GIV_SORT_CRITERION): Poison.Kazu Hirata1-1/+2
* system.h (GIV_SORT_CRITERION): Poison. * config/avr/avr.h (GIV_SORT_CRITERION): Remove. * config/ip2k/ip2k.h (GIV_SORT_CRITERION): Likewise. From-SVN: r77194
2004-02-03system.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Poison.Kazu Hirata1-1/+1
* system.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Poison. * config/frv/frv-protos.h: Remove the prototype for frv_function_arg_keep_as_reference. * config/frv/frv.c (frv_function_arg_keep_as_reference): Remove. * config/frv/frv.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Likewise. * config/stormy16/stormy16.h: Remove the commented-out definition of FUNCTION_ARG_KEEP_AS_REFERENCE. From-SVN: r77148
2004-01-31system.h (PROMOTE_FUNCTION_ARGS, [...]): Poison.Kazu Hirata1-1/+2
* system.h (PROMOTE_FUNCTION_ARGS, STRUCT_VALUE_INCOMING, and STRICT_ARGUMENT_NAMING): Poison. * target-def.h (TARGET_PROMOTE_FUNCTION_ARGS): Define as hook_bool_tree_false. * targhooks.c (default_promote_function_args): Remove. (default_struct_value_rtx): Don't use STRUCT_VALUE_INCOMING. Don't check incoming. (default_strict_argument_naming): Don't use STRICT_ARGUMENT_NAMING. * targhooks.h: Remove the prototype for default_promote_function_args. From-SVN: r77047