Kaveh R. Ghazi
0d667716cb
configure.ac (fixincludes_UNLOCKED_FUNCS): New.
...
fixincludes:
* configure.ac (fixincludes_UNLOCKED_FUNCS): New.
(AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for fixincludes_UNLOCKED_FUNCS.
* system.h (putchar, getc, getchar, clearerr, feof, fileno,
fflush, fgetc, fgets, ferror, fread): Redefine to the associated
_unlocked function.
(fwrite_unlocked): Fix prototype.
* configure, config.h.in: Regenerate.
gcc:
PR/17092
* configure.ac (gcc_UNLOCKED_FUNCS): New.
(AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for gcc_UNLOCKED_FUNCS.
* system.h (putchar, getc, getchar, clearerr, feof, fileno,
fflush, fgetc, fgets, ferror, fread): Redefine to the associated
_unlocked function.
(fwrite_unlocked): Fix prototype.
* configure, config.in: Regenerate.
libcpp:
* configure.ac (libcpp_UNLOCKED_FUNCS): New.
(AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for libcpp_UNLOCKED_FUNCS.
* system.h (putchar, getc, getchar, clearerr, feof, fileno,
fflush, fgetc, fgets, ferror, fread): Redefine to the associated
_unlocked function.
(fwrite_unlocked): Fix prototype.
* configure, config.in: Regenerate.
From-SVN: r97986
2005-04-11 21:46:59 +00:00
Kaveh R. Ghazi
627aa08ae9
* system.h: Revert last change.
...
From-SVN: r97826
2005-04-08 11:23:32 +00:00
Kaveh R. Ghazi
d502f210b9
system.h: Poison PARAMS.
...
* system.h: Poison PARAMS.
java:
* java-tree.h: Don't use PARAMS().
From-SVN: r97816
2005-04-08 01:02:59 +00:00
Paolo Bonzini
9e9126f355
system.h: Fix typo.
...
2005-04-05 Paolo Bonzini <bonzini@gnu.org>
* system.h: Fix typo.
From-SVN: r97624
2005-04-05 12:10:59 +00:00
Richard Sandiford
251e2ff23f
system.h (GCOV_SIZE_TYPE): Unposion.
...
* system.h (GCOV_SIZE_TYPE): Unposion.
* gcov-io.h (GCOV_TYPE_NODE): Delete, replacing with...
(GCOV_TYPE_SIZE): ...this new macro.
* coverage.h (get_gcov_type, GCOV_TYPE_NODE): Declare.
* coverage.c (get_gcov_type, get_gcov_unsigned_t): New functions.
(rtl_coverage_counter_ref): Use GCOV_TYPE_SIZE.
(build_fn_info_type, build_fn_info_value, build_ctr_info_type)
(build_ctr_info_value, build_gcov_info): Use get_gcov_unsigned_t
instead of unsigned_intSI_type_node.
* rtl-profile.c (rtl_gen_interval_profiler, rtl_gen_pow2_profiler)
(rtl_gen_one_value_profiler_no_edge_manipulation)
(rtl_gen_const_delta_profiler): Use GCOV_TYPE_SIZE.
* value-prof.c: Include coverage.h.
From-SVN: r97570
2005-04-04 19:41:14 +00:00
Joseph Myers
d101034cd8
langhooks.h (truthvalue_conversion): Remove.
...
* langhooks.h (truthvalue_conversion): Remove.
* langhooks-def.h (LANG_HOOKS_INITIALIZER): Remove
LANG_HOOKS_TRUTHVALUE_CONVERSION.
* system.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Poison.
* gimplify.c (gimple_boolify): Don't use truthvalue_conversion.
* c-objc-common.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.
ada:
* misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.
cp:
* cp-objcp-common.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.
fortran:
* f95-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.
java:
* lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.
treelang:
* treetree.c (LANG_HOOKS_TRUTHVALUE_CONVERSION,
tree_lang_truthvalue_conversion): Remove.
* tree-convert.c: Don't call truthvalue_conversion.
From-SVN: r96947
2005-03-23 19:47:09 +00:00
Daniel Jacobowitz
57642751f5
tm.texi (LINK_LIBGCC_SPECIAL): Remove.
...
* doc/tm.texi (LINK_LIBGCC_SPECIAL): Remove.
(LINK_LIBGCC_SPECIAL_1): Don't mention it.
* gcc.c: Don't check for LINK_LIBGCC_SPECIAL.
* system.h: Poison LINK_LIBGCC_SPECIAL.
From-SVN: r95476
2005-02-23 23:11:08 +00:00
Kazu Hirata
a4de48bc6c
c-objc-common.h, [...]: Update copyright.
...
* c-objc-common.h, c-pretty-print.c, cgraphunit.c, except.c,
genautomata.c, langhooks.c, langhooks.h, system.h,
config/arm/lib1funcs.asm: Update copyright.
From-SVN: r95331
2005-02-21 14:39:52 +00:00
Zack Weinberg
c5ff069dc4
re PR middle-end/18785 (isdigit builtin function fails with EBCDIC character sets)
...
PR 18785
libcpp:
* charset.c (LAST_POSSIBLY_BASIC_SOURCE_CHAR): New helper macro.
(cpp_host_to_exec_charset): New function.
* include/cpplib.h: Declare cpp_host_to_exec_charset.
gcc:
* langhooks.h (struct lang_hooks): Add to_target_charset.
* langhooks.c (lhd_to_target_charset): New function.
* langhooks-def.h: Declare lhd_to_target_charset.
(LANG_HOOKS_TO_TARGET_CHARSET): New macro.
(LANG_HOOKS_INITIALIZER): Update.
* c-common.c (c_common_to_target_charset): New function.
* c-common.h: Declare it.
* c-objc-common.h (LANG_HOOKS_TO_TARGET_CHARSET): Set to
c_common_to_target_charset.
* defaults.c (TARGET_BELL, TARGET_BS, TARGET_CR, TARGET_DIGIT0)
(TARGET_ESC, TARGET_FF, TARGET_NEWLINE, TARGET_TAB, TARGET_VT):
Delete definitions.
* system.h: Poison them.
* doc/tm.texi: Don't discuss them.
* builtins.c (fold_builtin_isdigit): Use lang_hooks.to_target_charset.
* c-pretty-print.c (pp_c_integer_constant): Don't use pp_c_char.
(pp_c_char): Do not attempt to generate letter escapes for
newline, tab, etc.
* config/arm/arm.c (output_ascii_pseudo_op): Likewise.
* config/mips/mips.c (mips_output_ascii): Likewise.
gcc/cp:
* cp-objcp-common.h (LANG_HOOKS_TO_TARGET_CHARSET): Set to
c_common_to_target_charset. Delete bogus comment.
gcc/testsuite:
* gcc.dg/charset/builtin1.c: New test.
From-SVN: r95304
2005-02-20 17:01:32 +00:00
Richard Henderson
78a52f1158
target.h (targetm.calls.arg_partial_bytes): New.
...
* target.h (targetm.calls.arg_partial_bytes): New.
* target-def.h (TARGET_ARG_PARTIAL_BYTES): New.
* calls.c (store_unaligned_arguments_into_pseudos): Update for
partial in bytes.
(load_register_parameters): Likewise.
(store_one_arg): Likewise.
(initialize_argument_information): Use targetm.calls.arg_partial_bytes.
(emit_library_call_value_1): Likewise.
* expr.c (block_move_libcall_safe_for_call_parm): Likewise.
(emit_push_insn): Update for partial in bytes.
* expr.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* function.c (assign_parm_find_entry_rtl): Use
targetm.calls.arg_partial_bytes. Update for result in bytes.
(locate_and_pad_parm): Update for partial in bytes.
* system.h (FUNCTION_ARG_PARTIAL_NREGS): Poison.
* targhooks.c (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): New.
* targhooks.h (hook_int_CUMULATIVE_ARGS_mode_tree_bool_0): Declare.
* doc/tm.texi (TARGET_ARG_PARTIAL_BYTES): Rename and update from
FUNCTION_ARG_PARTIAL_NREGS.
* config/arc/arc.h, config/c4x/c4x.h, config/i386/i386.h,
config/i860/i860.h, config/m68hc11/m68hc11.h, config/m68k/m68k.h,
config/pdp11/pdp11.h, config/s390/s390.h, config/stormy16/stormy16.h,
config/xtensa/xtensa.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/alpha/alpha.c (alpha_arg_partial_bytes): New.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/alpha/alpha.h, config/alpha/unicosmk.h,
config/alpha/vms.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/arm/arm.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
* config/arm/arm.c (arm_arg_partial_bytes): ... here.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/cris/cris.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
* config/cris/cris.c (cris_arg_partial_bytes): ... here.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/fr30/fr30.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/fr30/fr30.c (fr30_arg_partial_bytes): Rename from
fr30_function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/fr30/fr30-protos.h: Update.
* config/frv/frv.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/frv/frv.c (frv_arg_partial_bytes): Rename from
frv_function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/frv/frv-protos.h: Update.
* config/ia64/ia64.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/ia64/ia64.c (ia64_arg_partial_bytes): Rename from
ia64_function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/ia64/ia64-protos.h: Update.
* config/iq2000/iq2000.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/iq2000/iq2000.c (iq2000_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/iq2000/iq2000-protos.h: Update.
* config/m32r/m32r.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/m32r/m32r.c (m32r_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/m32r/m32r-protos.h: Update.
* config/mcore/mcore.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/mcore/mcore.c (mcore_arg_partial_bytes): Rename from
mcore_function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/mcore/mcore-protos.h: Update.
* config/mips/mips.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/mips/mips.c (mips_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/mips/mips-protos.h: Update.
* config/mn10300/mn10300.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/mn10300/mn10300.c (mn10300_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/mn10300/mn10300-protos.h: Update.
* config/ns32k/ns32k.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
* config/ns32k/ns32k.c (ns32k_arg_partial_bytes): ... here.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/pa/pa.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/pa/pa.c (pa_arg_partial_bytes): Rename from
function_arg_partial_nregs. Handle 32-bit. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/pa/pa-protos.h: Update.
* config/rs6000/rs6000.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/rs6000/rs6000.c (rs6000_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/rs6000/rs6000-protos.h: Update.
* config/sh/sh.h (FUNCTION_ARG_PARTIAL_NREGS): Move ...
* config/sh/sh.c (sh_arg_partial_bytes): ... here.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/sparc/sparc.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/sparc/sparc.c (sparc_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/sparc/sparc-protos.h: Update.
* config/v850/v850.h (FUNCTION_ARG_PARTIAL_NREGS): Remove.
* config/v850/v850.c (v850_arg_partial_bytes): Rename from
function_arg_partial_nregs. Adjust to return bytes.
(TARGET_ARG_PARTIAL_BYTES): New.
* config/v850/v850-protos.h: Update.
From-SVN: r92726
2004-12-29 19:08:18 -08:00
Nathan Sidwell
938802033e
system.h (IN_RANGE): Restore HOST_WIDE_INT cast.
...
* 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-22 22:06:35 +00:00
Nathan Sidwell
38b3627d6f
system.c (IN_RANGE): Use plain unsigned, not unsigned HOST_WIDE_INT.
...
* 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-21 17:43:27 +00:00
Mark Mitchell
57829bc4f0
defaults.h (ASM_OUTPUT_INTERNAL_LABEL): New macro.
...
* 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-12-20 02:08:57 +00:00
Steven Bosscher
6be85b25c2
cfgcleanup.c (outgoing_edges_match, [...]): Remove CASE_DROPS_THROUGH 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-29 20:46:14 +00:00
Eric Botcazou
033797e23c
target.h (late_rtl_prologue_epilogue): Remove.
...
* 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-24 08:39:34 +00:00
Zack Weinberg
6e14af161c
function.h (struct function): Remove calls_longjmp.
...
* 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-23 19:55:24 +00:00
Zack Weinberg
cf249358ea
defaults.h, darwin.h: Don't define TARGET_SUPPORTS_HIDDEN.
...
* 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-18 01:10:12 +00:00
Kazu Hirata
37bf6443fe
sdbout.c (SDB_GENERATE_FAKE): Remove.
...
* 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-11-04 13:23:23 +00:00
Zack Weinberg
93a27b7bad
dbxout.c: Include obstack.h.
...
* 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-27 01:29:42 +00:00
Kazu Hirata
d0ed471f09
dbxout.c (dbxout_function_decl): Don't use DBX_OUTPUT_FUNCTION_END.
...
* 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-23 20:31:24 +00:00
Zack Weinberg
ac746f1dbb
dbxout.c: Remove unnecessary #undefs.
...
* 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-21 17:22:01 +00:00
Kazu Hirata
9e749a8b42
defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): Remove.
...
* 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-06 22:20:31 +00:00
Kazu Hirata
b89dc911b3
collect2.c (COLLECT_PARSE_FLAG): Remove.
...
* 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-10-01 18:45:28 +00:00
Eric Botcazou
f6260033c9
* system.h (getpagesize): Return 'int' instead of 'long'.
...
From-SVN: r88204
2004-09-27 22:38:08 +00:00
Nathan Sidwell
2c46a62f29
system.h (gcc_assert): Remove __builtin_expect.
...
* system.h (gcc_assert): Remove __builtin_expect. Evaluate EXPR
even when not checking.
From-SVN: r86692
2004-08-28 14:23:07 +00:00
Nathan Sidwell
06c37c965a
configure.ac: Add ENABLE_ASSERT_CHECKING control.
...
* 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-27 16:20:45 +00:00
Eric Christopher
f676971a92
defaults.h (VECTOR_MODE_SUPPORTED_P): Remove macro.
...
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-24 00:30:52 +00:00
Nathan Sidwell
b3d1f5b404
Makefile.in (BUILD_ERRORS): Set to build-errors.
...
* 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-08-23 11:57:02 +00:00
Bernardo Innocenti
ca79179c0a
system.h (bool, [...]): Don't redefine as preprocessor macros in C++.
...
* system.h (bool, true, false): Don't redefine as preprocessor macros
in C++.
From-SVN: r85135
2004-07-25 02:32:22 +02:00
Richard Henderson
77c9db7751
builtins.c (std_expand_builtin_va_arg): Remove.
...
* 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-16 16:25:51 -07:00
Richard Henderson
8cd5a4e07d
target.h (struct gcc_target): Add calls.pass_by_reference.
...
* 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-13 23:24:27 -07:00
Richard Henderson
fe9841365e
target-def.h (TARGET_MUST_PASS_IN_STACK): New.
...
* 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-13 00:45:09 -07:00
Joseph Myers
9dcf6e7366
langhooks.h (estimate_num_insns, [...]): Remove hooks.
...
* 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-11 10:53:06 +01:00
Aaron W. LaFramboise
6a25777816
system.h: Prototype getpagesize if missing.
...
* 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-08 16:05:29 -07:00
Joseph Myers
8f99553ff6
c-decl.c, [...]: Don't check TARGET_MEM_FUNCTIONS.
...
* 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-07-05 20:49:20 +01:00
Ulrich Weigand
bb2d400f61
c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.
...
* 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 12:09:44 +00:00
Zack Weinberg
84b8b0e04d
c-common.h (has_c_linkage): New interface.
...
* 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-20 08:34:54 +00:00
Zack Weinberg
2fac9c017f
configure.ac: Don't invoke ACX_HEADER_STDBOOL.
...
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-06-12 05:53:54 +00:00
Paolo Bonzini
4f4e53dd85
Makefile.def (host_modules): add libcpp.
...
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-24 10:50:45 +00:00
Paolo Bonzini
76391e5a04
gcc.c (struct prefix_list): Add forward declaration.
...
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-24 07:19:22 +00:00
Ian Lance Taylor
082a099ce4
system.h: Poison NO_RECURSIVE_FUNCTION_CSE.
...
* 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-21 01:03:20 +00:00
Diego Novillo
6de9cd9a88
Merge tree-ssa-20020619-branch into mainline.
...
From-SVN: r81764
2004-05-13 02:41:07 -04:00
Paul Brook
9e1622ed25
calls.c (precompute_arguments): Remove PROMOTE_FOR_CALL_ONLY.
...
* 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-04-28 13:25:59 +00:00
Kazu Hirata
c3690d79a8
system.h (MD_ASM_CLOBBERS): Move to "Old target macros that have moved to 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-19 00:52:24 +00:00
Richard Henderson
42ba513004
re PR target/14547 (Passing _Complex long double does not follow the ABI)
...
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-12 02:03:32 -08:00
Ian Lance Taylor
9acd4a03dd
system.h (SUNOS4_SHARED_LIBRARIES): Poison.
...
* 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-10 00:17:36 +00:00
Kazu Hirata
67dfe1108e
hooks.c (hook_tree_tree_identity): New.
...
* 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-03 23:55:52 +00:00
Kazu Hirata
d6da68b9d4
builtins.c (BUILTIN_SETJMP_FRAME_VALUE): Remove.
...
* 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-02 22:32:27 +00:00
Kazu Hirata
fdf89bf57c
system.h (DBX_OUTPUT_STANDARD_TYPES): Poison.
...
* system.h (DBX_OUTPUT_STANDARD_TYPES): Poison.
* doc/tm.texi (DBX_OUTPUT_STANDARD_TYPES): Remove.
From-SVN: r78744
2004-03-02 04:55:00 +00:00
Kazu Hirata
c1a41c2fa8
genattr.c (main): Don't define TRADITIONAL_PIPELINE_INTERFACE or 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-28 21:44:22 +00:00