aboutsummaryrefslogtreecommitdiff
path: root/gcc/defaults.h
AgeCommit message (Collapse)AuthorFilesLines
2006-01-03varasm.c (assemble_variable): Handle thread-local COMMON data.Jakub Jelinek1-0/+12
* varasm.c (assemble_variable): Handle thread-local COMMON data. * defaults.h (ASM_OUTPUT_TLS_COMMON): Define. Co-Authored-By: Richard Henderson <rth@redhat.com> From-SVN: r109282
2005-12-16target-def.h (TARGET_DECIMAL_FLOAT_SUPPORTED_P): New.Jon Grimm1-0/+16
2005-12-16 Jon Grimm <jgrimm2@us.ibm.com> Janis Johnson <janis187@us.ibm.com> Ben Elliston <bje@au.ibm.com> * target-def.h (TARGET_DECIMAL_FLOAT_SUPPORTED_P): New. (TARGET_INITIALIZER): Add TARGET_DECIMAL_FLOAT_P. * target.h (struct gcc_target): Add decimal_float_supported_p. * targhooks.c (default_scalar_mode_supported_p): Handle MODE_DECIMAL_FLOAT. * builtins.def: Add new builtins for 32, 64 and 128 bit variants of inf, nan, finite, isinf and isnan. * builtin-types.def (BT_DFLOAT32, BT_DFLOAT64, BT_DFLOAT128, BT_DFLOAT32_PTR, BT_DFLOAT64_PTR, BT_DFLOAT128_PTR, BT_FN_DFLOAT32, BT_FN_DFLOAT64, BT_FN_DFLOAT128, BT_FN_INT_DFLOAT32, BT_FN_INT_DFLOAT64, BT_FN_INT_DFLOAT128, BT_FN_DFLOAT32_CONST_STRING, BT_FN_DFLOAT64_CONST_STRING, BT_FN_DFLOAT32_CONST_STRING, BT_FN_DFLOAT32_DFLOAT32, BT_FN_DFLOAT64_DFLOAT64, BT_FN_DFLOAT128_DFLOAT128): New. * c-decl.c (declspecs_add_type): Verify combos on type qualifiers. Pedwarn if decimal floating point types are used. Error if decimal floating point is not supported by the target. (finish_declspecs): Return type from DFP typespec_word. * c-typeck.c (c_common_type): Choose the decimal floating point type with the greater precision when determining a common type. (convert_arguments): Warn if there is a mismatch between argument and prototype for decimal float types. Warn of conversions with binary float types and of precision narrowing due to prototype. * c-parser.c (reswords): Add _Decimal32, _Decimal64, _Decimal128. (c_token_starts_typename): Handle RID_DFLOAT32/64/128. (c_token_starts_declspecs): Likewise. (c_parser_attributes): Likewise. * c-common.h (enum rid): Add new enumeration values RID_DFLOAT32, RID_DFLOAT64, RID_DFLOAT128. (T_D32, TEX_D32, T_D64, TEX_D64, T_D128, TEX_D128): New macros. * c-common.c (c_common_type_for_mode): Handle decimal float modes. (shorten_compare): Convert DFP/BFP operands to a common type. (c_common_modes_and_builtins): Register built-in decimal float types if the target supports them. (handle_mode_addtribute): Handle MODE_DECIMAL_FLOAT. * builtins.c (fold_builtin_1): Handle 32, 64 and 128 bit cases of inf, nan, finite, isinf and isnan builtins. * c-cppbuiltin.c (builtin_define_decimal_float_constants): New. (builtin_define_float_constants): Assert non-decimal radix. (c_cpp_builtins): Register built-in __DEC_EVAL_METHOD__ define. Call builtin_define_decimal_float_constants for each type. * c-lex.c (interpret_float): Decode decimal float types from CPP_N flags. Use real_from_string3, which can handle binary or decimal floats. * c-tree.h (enum c_typespec_keyword): Add cts_dfloat32, cts_dfloat64, cts_dfloat128. * tree.c (build_common_tree_nodes_2): Add decimal float types. * tree.h (enum tree_index): Add new enumeration values TI_DFLOAT32_TYPE, TI_DFLOAT64_TYPE, TI_DFLOAT128_TYPE, TI_DFLOAT32_PTR_TYPE, TI_DFLOAT64_PTR_TYPE, TI_DFLOAT128_PTR_TYPE. (dfloat32_type_node): New macro. (dfloat64_type_node, dfloat128_type_node): Likewise. (dfloat32_ptr_type_node, dfloat64_ptr_type_node): Likewise. (dfloat128_ptr_type_node): Likewise. * c-pretty-print.c (pp_c_floating_constant): Append 32, 64 and 128 bit decimal floating point types with "df", "dd" and "dl". * c-format.h (enum format_lengths): Add new enumeration values FMT_LEN_H, FMT_LEN_D and FMT_LEN_DD. * c-format.c (printf_length_specs, scanf_length_specs): Add entries for H, D, DD. (print_char_table, scan_char_table): Use new entries. (asm_fprintf_char_table, gcc_diag_char_table, gcc_cdiag_char_table, gcc_cxxdiag_char_table): Adjust for longer length arrays. * defaults.h (DECIMAL32_TYPE_SIZE): Define. (DECIMAL64_TYPE_SIZE): Likewise. (DECIMAL128_TYPE_SIZE): Likewise. (TARGET_DEC_EVAL_METHOD): Likewise. * doc/extend.texi (Decimal Float): New node. (Constructing Calls): Document decimal float built-ins. * doc/tm.texi: Document TARGET_DECIMAL_FLOAT_SUPPORTED_P hook. * Makefile.in (USER_H): Add $(srcdir)/ginclude/decfloat.h. * ginclude/decfloat.h: New file. Co-Authored-By: Ben Elliston <bje@au.ibm.com> Co-Authored-By: Janis Johnson <janis187@us.ibm.com> From-SVN: r108629
2005-11-18rs6000.h (ASM_OUTPUT_WEAKREF): Define.Alexandre Oliva1-1/+1
* config/rs6000/rs6000.h (ASM_OUTPUT_WEAKREF): Define. * defaults.h (ASM_OUTPUT_WEAKREF): Add decl argument. * varasm.c (do_assemble_alias): Adjust call. (weak_finish): Don't use ASM_WEAKEN_LABEL if ASM_WEAKEN_DECL is defined. * doc/tm.texi (ASM_OUTPUT_WEAKREF): Document it. From-SVN: r107156
2005-11-09re PR other/4372 (#pragma weak pthread* inclusion causes applications to ↵Alexandre Oliva1-0/+21
crash without a linker error when one forgets to link with -lpthread) PR other/4372 * tree.h (IDENTIFIER_TRANSPARENT_ALIAS): New. (TREE_DEPRECATED): Adjust comment. Check for a DECL. * c-common.c (handle_weakref_attribute): New. (c_common_attribute_table): Add weakref. * configure.ac (HAVE_GAS_WEAKREF): Check for weakref support in the assembler. * configure, config.in: Rebuilt. * defaults.h (ASM_OUTPUT_WEAKREF): Define if HAVE_GAS_WEAKREF. * doc/extend.texi: Document weakref attribute. * varasm.c (ultimate_transparent_alias_target): New (assemble_name): Use it. (weak_finish_1): Split out of... (weak_finish): ... and deal with weakrefs in... (weakref_targets): ... new list. (globalize_decl): Clean up weakref_targets. (do_assemble_alias): Handle weakrefs. (finish_aliases_1): Do not reject weakrefs to external symbols. (assemble_alias): Handle weakrefs. From-SVN: r106703
2005-09-07function.c (ARG_POINTER_CFA_OFFSET): Move ...Richard Henderson1-0/+11
* function.c (ARG_POINTER_CFA_OFFSET): Move ... * defaults.h (ARG_POINTER_CFA_OFFSET): ... here. (INCOMING_FRAME_SP_OFFSET): Move from dwarf2out.c. * dwarf2out.c (struct cfa_loc): Change reg to unsigned int, rearrange for better packing. (INCOMING_FRAME_SP_OFFSET): Move to defaults.h. (lookup_cfa_1): Remove inline marker. (cfa_equal_p): Split out of ... (def_cfa_1): ... here. Use INVALID_REGNUM. (build_cfa_loc): Handle !cfa->indirect. (frame_pointer_cfa_offset): New. (dbx_reg_number): Assert register elimination performed; do leaf register remapping. (reg_loc_descriptor): Avoid calling dbx_reg_number when unused. (eliminate_reg_to_offset): New. (based_loc_descr): Remove can_use_fbreg argument. Use fbreg only for verifiably local stack frame addresses; re-base to CFA. (mem_loc_descriptor): Remove can_use_fbreg argument. (concat_loc_descriptor, loc_descriptor): Likewise. (containing_function_has_frame_base): Remove. (rtl_for_decl_location): Don't do register elimination or leaf register remapping here. (secname_for_decl): Split out from .. (add_location_or_const_value_attribute): ... here. (convert_cfa_to_loc_list): New. (compute_frame_pointer_to_cfa_displacement): New. (gen_subprogram_die): Use them. * tree.h (frame_base_decl): Remove. * var-tracking.c (frame_base_decl, frame_stack_adjust): Remove. (prologue_stack_adjust): Remove. (vt_stack_adjustments): Use INCOMING_FRAME_SP_OFFSET. (adjust_stack_reference): Re-base memories to arg_pointer_rtx. (set_frame_base_location): Remove. (compute_bb_dataflow, emit_notes_in_bb): Don't call it. (dump_attrs_list, dump_dataflow_set): Use string concatenation. (vt_add_function_parameters): Don't eliminate_regs. (vt_initialize): Don't create frame_base_decl. From-SVN: r103983
2005-08-10Fix problem reported by Mike Stump on the gcc list, useless default defintion.James E Wilson1-11/+0
* defaults.h, config/alpha/alpha.h, config/ia64/ia64.h (ASM_OUTPUT_ADDR_VEC_ELT): Delete. * config/alpha/alpha.c (alpha_arg_partial_bytes): Change "(CUM)." to "cum->". From-SVN: r102970
2005-06-26defaults.h (FRAME_GROWS_DOWNWARD): Define to 0 if not defined.Jakub Jelinek1-0/+4
* defaults.h (FRAME_GROWS_DOWNWARD): Define to 0 if not defined. * function.c (get_func_frame_size): Use if (FRAME_GROWS_DOWNWARD) instead of preprocessor conditionals. (assign_stack_local_1, assign_stack_temp_for_type): Likewise. * cfgexpand.c (FRAME_GROWS_DOWNWARD): Don't redefine to 1 or 0 depending on if it was or was not defined previously. * doc/rtl.texi (VIRTUAL_STACK_VARS_REGNUM): Mention that only non-zero definition of FRAME_GROWS_DOWNWARD means frame grows downward. * doc/tm.texi (FRAME_GROWS_DOWNWARD): Likewise. * config/m68hc11/m68hc11.h (FRAME_GROWS_DOWNWARD): Define to 0. Update comment. * config/pa/pa.h (FRAME_GROWS_DOWNWARD): Likewise. * config/rs6000/rs6000.h (FRAME_GROWS_DOWNWARD): Likewise. * config/stormy16/stormy16.h (FRAME_GROWS_DOWNWARD): Define to 0. * config/c4x/c4x.h (FRAME_GROWS_DOWNWARD): Likewise. * config/sh/sh.h (FRAME_GROWS_DOWNWARD): Likewise. * config/ia64/ia64.h (FRAME_GROWS_DOWNWARD): Likewise. * config/iq2000/iq2000.h (FRAME_GROWS_DOWNWARD): Likewise. * config/pdp11/pdp11.h (FRAME_GROWS_DOWNWARD): Define to 1. Update comment. * config/i860/i860.h (FRAME_GROWS_DOWNWARD): Likewise. * config/h8300/h8300.h (FRAME_GROWS_DOWNWARD): Likewise. * config/arc/arc.h (FRAME_GROWS_DOWNWARD): Likewise. * config/vax/vax.h (FRAME_GROWS_DOWNWARD): Likewise. * config/sparc/sparc.h (FRAME_GROWS_DOWNWARD): Likewise. * config/i386/i386.h (FRAME_GROWS_DOWNWARD): Likewise. * config/fr30/fr30.h (FRAME_GROWS_DOWNWARD): Likewise. * config/frv/frv.h (FRAME_GROWS_DOWNWARD): Likewise. * config/mn10300/mn10300.h (FRAME_GROWS_DOWNWARD): Likewise. * config/bfin/bfin.h (FRAME_GROWS_DOWNWARD): Likewise. * config/ns32k/ns32k.h (FRAME_GROWS_DOWNWARD): Likewise. * config/v850/v850.h (FRAME_GROWS_DOWNWARD): Likewise. * config/alpha/alpha.h (FRAME_GROWS_DOWNWARD): Update comment. * config/s390/s390.h (FRAME_GROWS_DOWNWARD): Likewise. * config/arm/arm.h (FRAME_GROWS_DOWNWARD): Likewise. * config/alpha/unicosmk.h (FRAME_GROWS_DOWNWARD): Define to 1. * config/cris/cris.h (FRAME_GROWS_DOWNWARD): Likewise. * config/m68k/m68k.h (FRAME_GROWS_DOWNWARD): Likewise. * config/mmix/mmix.h (FRAME_GROWS_DOWNWARD): Likewise. From-SVN: r101329
2005-06-25Update FSF address.Kelley Cook1-2/+2
From-SVN: r101317
2005-04-27tree-complex.c (expand_vector_operation): New, extracted from ↵Paolo Bonzini1-1/+3
expand_vector_operations_1. gcc: 2004-04-27 Paolo Bonzini <bonzini@gnu.org> * tree-complex.c (expand_vector_operation): New, extracted from expand_vector_operations_1. (tree_vec_extract): Build a NOP_EXPR. (expand_vec_parallel): Do not care about returning the correct type. (expand_vector_operations_1): Call expand_vector_operation. Build the VIEW_CONVERT_EXPR on the left side of MODIFY_EXPRs. * tree-complex.c (gate_expand_vector_operations): New. (pass_lower_vector_ssa): Use it. * tree-optimize.c (init_tree_optimization_passes): Include pass_lower_vector_ssa. * tree-vect-transform.c (vect_min_worthwhile_factor): New. (vectorizable_operation): Use it. * tree-vectorizer.c (get_vectype_for_scalar_type): Accept integer modes for the vector type. * defaults.h (UNITS_PER_SIMD_WORD): Default to UNITS_PER_WORD. * tree-vect-analyze.c (vect_enhance_data_refs_alignment): Do not cope with UNITS_PER_SIMD_WORD == 0. * tree-vectorizer.c (get_vectype_for_scalar_type): Check if the scalar type is not bigger than UNITS_PER_SIMD_WORD. (vectorize_loops): Do not check that UNITS_PER_SIMD_WORD > 0. * config/i386/i386.h (UNITS_PER_SIMD_WORD): Default to UNITS_PER_WORD. * config/mips/mips.h (UNITS_PER_SIMD_WORD): Likewise. * config/rs6000/rs6000.h (UNITS_PER_SIMD_WORD): Likewise. * config/sparc/sparc.h (UNITS_PER_SIMD_WORD): Likewise. * config/alpha/alpha.h (UNITS_PER_SIMD_WORD): Remove. * config/bfin/bfin.h (UNITS_PER_SIMD_WORD): Remove. * config/ia64/ia64.h (UNITS_PER_SIMD_WORD): Remove. * doc/tm.texi (UNITS_PER_WORD): Rephrase more accurately. (UNITS_PER_SIMD_WORD): New. gcc/testsuite: 2004-04-27 Paolo Bonzini <bonzini@gnu.org> * gcc.dg/tree-ssa/gen-vect-11.c, gcc.dg/tree-ssa/gen-vect-11a.c, gcc.dg/tree-ssa/gen-vect-11b.c, gcc.dg/tree-ssa/gen-vect-11c.c, gcc.dg/tree-ssa/gen-vect-2.c, gcc.dg/tree-ssa/gen-vect-25.c, gcc.dg/tree-ssa/gen-vect-26.c, gcc.dg/tree-ssa/gen-vect-28.c, gcc.dg/tree-ssa/gen-vect-32.c: New. * gcc.dg/vect/vect-82.c, gcc.dg/vect/vect-83.c: Fix dg-final. * gcc.dg/vect/vect-82_64.c, gcc.dg/vect/vect-83_64.c: Remove xfail, don't run on PPC32. CVS: Enter Log. Lines beginning with `CVS:' are removed automatically CVS: CVS: Committing in . CVS: CVS: Modified Files: CVS: tree-complex.c tree-optimize.c tree-vect-analyze.c defaults.h CVS: tree-vect-transform.c tree-vectorizer.c ChangeLog CVS: testsuite/ChangeLog config/alpha/alpha.h config/bfin/bfin.h CVS: config/i386/i386.h config/ia64/ia64.h config/mips/mips.h CVS: config/rs6000/rs6000.h CVS: config/sparc/sparc.h doc/tm.texi CVS: testsuite/gcc.dg/vect/vect-82.c CVS: testsuite/gcc.dg/vect/vect-82_64.c CVS: testsuite/gcc.dg/vect/vect-83.c CVS: testsuite/gcc.dg/vect/vect-83_64.c CVS: Added Files: CVS: testsuite/gcc.dg/tree-ssa/gen-vect-11.c CVS: testsuite/gcc.dg/tree-ssa/gen-vect-11a.c CVS: testsuite/gcc.dg/tree-ssa/gen-vect-11b.c CVS: testsuite/gcc.dg/tree-ssa/gen-vect-11c.c CVS: testsuite/gcc.dg/tree-ssa/gen-vect-2.c CVS: testsuite/gcc.dg/tree-ssa/gen-vect-25.c CVS: testsuite/gcc.dg/tree-ssa/gen-vect-26.c CVS: testsuite/gcc.dg/tree-ssa/gen-vect-28.c CVS: testsuite/gcc.dg/tree-ssa/gen-vect-32.c CVS: ---------------------------------------------------------------------- From-SVN: r98818
2005-02-24ChangeLog.5: Fix log message typo(s).Volker Reichelt1-1/+1
* ChangeLog.5: Fix log message typo(s). * ChangeLog.7: Likewise. * ChangeLog.tree-ssa: Likewise. * cfgexpand.c: Fix comment typo(s). * conflict.c: Likewise. * defaults.h: Likewise. * dwarf2out.c: Likewise. * gcse.c: Likewise. * ggc-page.c: Likewise. * tree-eh.c: Likewise. * tree-ssa-dom.c: Likewise. From-SVN: r95516
2005-02-20re PR middle-end/18785 (isdigit builtin function fails with EBCDIC character ↵Zack Weinberg1-13/+0
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-01-18basic-block.h, [...]: Update copyright.Kazu Hirata1-1/+2
* basic-block.h, c-common.c, c-cppbuiltin.c, c-lang.c, c-tree.h, cfgbuild.c, cgraph.c, cgraph.h, collect2.c, combine.c, config.gcc, coverage.h, cse.c, cselib.c, defaults.h, df.c, dwarf2asm.c, dwarf2out.c, explow.c, expr.c, flow.c, fold-const.c, gcse.c, ggc-page.c, gimple-low.c, gimplify.c, ifcvt.c, langhooks-def.h, lcm.c, optabs.h, output.h, postreload-gcse.c, postreload.c, recog.c, resource.c, rtl.def, rtlanal.c, sched-deps.c, sched-rgn.c, targhooks.h, toplev.c, tree-data-ref.c, tree-eh.c, tree-flow.h, tree-loop-linear.c, tree-mudflap.h, tree-nrv.c, tree-optimize.c, tree-outof-ssa.c, tree-pass.h, tree-scalar-evolution.c, tree-ssa-copy.c, tree-ssa-dce.c, tree-ssa-dse.c, tree-ssa-loop-ivopts.c, tree-ssa-operands.c, tree-ssa-pre.c, tree-ssa.c, tree-vectorizer.c, tree.def, unwind-dw2-fde-darwin.c, var-tracking.c: Update copyright. From-SVN: r93827
2005-01-16re PR target/16304 (bootstrap failure on AIX 4.3.3: cannot build strstream ↵John David Anglin1-0/+6
in libstdc++) PR target/16304 * defaults.h (TARGET_DEFERRED_OUTPUT_DEFS): Provide default. * toplev.c (compile_file): Call process_pending_assemble_output_defs just before targetm.asm_out.file_end. * tree.h (process_pending_assemble_output_defs): Declare. * varasm.c (assemble_output_def, process_pending_assemble_output_defs): New functions. (assemble_alias): Defer generation of assembly code for defines when TARGET_DEFERRED_OUTPUT_DEFS is true. * config/rs6000/aix41.h (TARGET_DEFERRED_OUTPUT_DEFS): Define. * config/rs6000/aix43.h (TARGET_DEFERRED_OUTPUT_DEFS): Define. * doc/tm.texi (TARGET_DEFERRED_OUTPUT_DEFS): document. From-SVN: r93726
2004-12-20defaults.h (ASM_OUTPUT_INTERNAL_LABEL): New macro.Mark Mitchell1-0/+9
* 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-13defaults.h, [...]: Fix comment typos.Kazu Hirata1-1/+1
* defaults.h, stmt.c, tree-cfg.c, tree-ssa-dce.c: Fix comment typos. From-SVN: r92092
2004-12-13defaults.h (TARGET_USE_JCR_SECTION): New macro.Danny Smith1-0/+12
gcc PR/18549 * defaults.h (TARGET_USE_JCR_SECTION): New macro. * doc/tm.texi (TARGET_USE_JCR_SECTION): Document it. * config/i386/cygming.h (TARGET_USE_JCR_SECTION): Override default. gcc/java PR/18549 * class.c (emit_register_classes): Use TARGET_USE_JCR_SECTION. Update comment. From-SVN: r92078
2004-11-24crtstuff.c (IN_LIBGCC2): Define it.Mark Mitchell1-0/+20
2004-11-24 Mark Mitchell <mark@codesourcery.com> Joseph Myers <joseph@codesourcery.com> * crtstuff.c (IN_LIBGCC2): Define it. (EH_FRAME_SECTION_CONST): Check EH_TABLES_CAN_BE_READ_ONLY instead of HAVE_LD_RO_RW_SECTION_MIXING. * defaults.h (EH_TABLES_CAN_BE_READ_ONLY): New macro. * dwarf2out.c (named_section_eh_frame_section): Check EH_TABLES_CAN_BE_READ_ONLY. * except.c (default_exception_section): Likewise. * config/i386/sol2.h (EH_TABLES_CAN_BE_READ_ONLY): Define. * doc/tm.texi (EH_TABLES_CAN_BE_READ_ONLY): Document. Co-Authored-By: Joseph Myers <joseph@codesourcery.com> From-SVN: r91160
2004-11-18defaults.h, darwin.h: Don't define TARGET_SUPPORTS_HIDDEN.Zack Weinberg1-11/+0
* 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-10-27dbxout.c: Include obstack.h.Zack Weinberg1-4/+0
* 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-12* defaults.h (REGNO_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P)Daniel Jacobowitz1-0/+27
(MODE_BASE_REG_REG_CLASS, REGNO_MODE_OK_FOR_REG_BASE_P) (REG_MODE_OK_FOR_REG_BASE_P): Provide default definitions. * regclass.c (record_address_regs): Remove ifdef. Use REG_MODE_OK_FOR_REG_BASE_P and MODE_BASE_REG_REG_CLASS. * regrename.c (REG_MODE_OK_FOR_BASE_P): Remove unnecessary definition. (scan_rtx_address, replace_oldest_value_addr): Use REG_MODE_OK_FOR_REG_BASE_P and MODE_BASE_REG_REG_CLASS. * reload.c (REGNO_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P): Remove unnecessary definitions. (find_reloads_address_1): Support REG_MODE_OK_FOR_REG_BASE_P and MODE_BASE_REG_REG_CLASS. * config/arm/arm.h (MODE_BASE_REG_CLASS): Don't check reload_completed. (MODE_BASE_REG_REG_CLASS): Define. (REGNO_MODE_OK_FOR_REG_BASE_P): Define. (REG_MODE_OK_FOR_REG_BASE_P): Define. * doc/tm.texi (Register Classes): Document MODE_BASE_REG_REG_CLASS, REG_MODE_OK_FOR_REG_BASE_P, and REGNO_MODE_OK_FOR_REG_BASE_P. From-SVN: r88948
2004-10-06defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): Remove.Kazu Hirata1-10/+0
* 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-09-25c-typeck.c, [...]: Fix comment formatting.Kazu Hirata1-1/+1
* c-typeck.c, defaults.h, dwarf.h, dwarf2out.c, fold-const.c, gthr-dce.h, gthr-posix.h, gthr-solaris.h, gthr-win32.h, lambda-code.c, lambda-mat.c, libgcc2.c, stmt.c, tree-ssa-pre.c, tree-vn.c, tree.h: Fix comment formatting. From-SVN: r88102
2004-09-10c-common.c, [...]: Fix comment typos.Kazu Hirata1-1/+1
* c-common.c, c-pch.c, defaults.h, lambda-code.c, passes.c, tree-data-ref.c, tree-flow.h, tree-ssa-operands.c, tree-ssa-threadupdate.c, tree-vectorizer.c, tree-vectorizer.h, value-prof.c: Fix comment typos. Follow spelling conventions. From-SVN: r87288
2004-09-09defaults.h (MULTIPLE_SYMBOL_SPACES): Provide default.Zack Weinberg1-0/+5
* defaults.h (MULTIPLE_SYMBOL_SPACES): Provide default. * config/arm/pecoff.h, config/i386/beos-elf.h * config/i386/cygming.h, config/i386/i386-interix.h: Define MULTIPLE_SYMBOL_SPACES to 1, not nothing. Remove comment cloned from manual. * doc/tm.texi: Update description of MULTIPLE_SYMBOL_SPACES. cp: * decl2.c (import_export_class) * lex.c (handle_pragma_interface): Test MULTIPLE_SYMBOL_SPACES with if, not #ifdef. From-SVN: r87243
2004-09-05c-common.c, [...]: Fix comment formatting.Kazu Hirata1-1/+1
* c-common.c, c-decl.c, combine.c, defaults.h, fold-const.c, gimplify.c, gthr-nks.h, hooks.c, lambda-code.c, lambda-mat.c, stor-layout.c, target.h, tree-cfg.c, tree-chrec.c, tree-if-conv.c, tree-inline.c, tree-into-ssa.c, tree-mudflap.c, tree-optimize.c, tree-scalar-evolution.c, tree-ssa-alias.c, tree-ssa-ccp.c, tree-ssa-dce.c, tree-ssa-pre.c, tree-vectorizer.c, tree-vectorizer.h, tree.h, vec.h: Fix comment formatting. From-SVN: r87105
2004-09-05c-common.c, [...]: Fix comment typos.Kazu Hirata1-1/+1
* c-common.c, cfgexpand.c, cgraphunit.c, defaults.h, et-forest.c, expr.c, gimplify.c, global.c, gthr-lynx.h, hard-reg-set.h, modulo-sched.c, optabs.c, postreload-gcse.c, tree-data-ref.c, tree-flow.h, tree-if-conv.c, tree-inline.c, tree-sra.c, tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c, tree-ssa-loop-niter.c, tree-ssa-operands.c, tree-ssa-operands.h, tree-ssa-propagate.c, tree-ssa-propagate.h, tree-ssa-threadupdate.c, value-prof.c, vec.c, vec.h: Fix comment typos. Follow spelling conventions. From-SVN: r87104
2004-09-03re PR c/7054 (#pragma pack handled incorrectly)Jan Beulich1-0/+4
PR c/7054 * defaults.h (TARGET_DEFAULT_PACK_STRUCT): Provide default. * tree.h (initial_max_fld_align): Declare * stor-layout.c (initial_max_fld_align): Define and initialize. (maximum_field_alignment): Initialize to the same value. * common.opt: Add -fpack-struct= variant of switch. * opts.c: Handle -fpack-struct= variant of switch. * c-pragma.c: Change #pragma pack() handling so that it becomes compatible to other compilers: accept individual 'push' argument, make final pop restore (command line) default, correct interaction of push/pop and sole specification of a new alignment (so that the sequence #pragma pack(push) - #pragma pack(<n>) becomes identical to #pragma pack(push, <n>). * doc/extend.texi: New node "Structure-Packing Pragmas" under "Pragmas", describing #pragma pack. * doc/invoke.texi: Document -fpack-struct=<n> variant of switch. * doc/tm.texi: Adjust description for HANDLE_PRAGMA_PACK_PUSH_POP. Document new TARGET_DEFAULT_PACK_STRUCT. testsuite: * gcc.dg/pack-test-2.c: Adjust to permit and check #pragma pack(push). * gcc.dg/c99-flex-array-4.c: Add -fpack-struct=8 to provide a deterministic starting point for the alignment of structure fields. * gcc.dg/Wpadded.c: Dito. * g++.dg/abi/vbase10.C: Dito. From-SVN: r87037
2004-08-25flags.h (enum debug_info_type): Remove DWARF_DEBUG.Zack Weinberg1-23/+19
* flags.h (enum debug_info_type): Remove DWARF_DEBUG. * defaults.h (PREFERRED_DEBUGGING_TYPE): Remove check for DWARF_DEBUGGING_INFO from choice-of-definition chain; restructure using C89 features (#elif, #error). * c-lex.c, final.c, opts.c, config/cris/cris.c, config/frv/frv.c * config/sh/sh.h: Remove references to DWARF_DEBUG. * doc/invoke.texi: Remove references to DWARF version 1; clarify why -gdwarf-2<n> doesn't work. cp: * class.c, search.c: Remove references to DWARF_DEBUG. From-SVN: r86540
2004-08-24defaults.h (VECTOR_MODE_SUPPORTED_P): Remove macro.Eric Christopher1-10/+6
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-19defaults.h (TARGET_LIBGCC_LIBFUNCS): Remove.Mark Mitchell1-6/+0
* defaults.h (TARGET_LIBGCC_LIBFUNCS): Remove. * optabs.c (init_optabs): Don't check it. * config/arm/bpabi.h (TARGET_LIBGCC_LIBFUNCS): Do not define. * doc/tm.texi (TARGET_LIBGCC_FUNCS): Remove. From-SVN: r86285
2004-08-18Hot/cold partitioning update patch.Caroline Tice1-4/+0
Hot/cold partitioning update patch. The problems that this patch attemptd to address/fix are: - Fix places where adding in_unlikely_executed_text to the enum data type "in_section" threw off switch case statements. - Make it work correctly (by turning it off) for functions where user specifies "__attribute__ section" - Make it work correctly (by turning it off) for linkonce sections - Make it work correctly with -ffunction-sections flag - Make it output correct cold section labels - Undo some changes to original assembly code generation - Turn off hot/cold partitioning in the presence of DWARF debugging (for the moment) - Turn off hot/cold partitioning for architectures that do not support named sections - Use variables rather than constants for cold section labels and names (to work correctly with -ffunction-sections, among other things) 2004-08-18 Caroline Tice <ctice@apple.com> * Makefile.in (STAGEFEEDBACK_FLAGS_TO_PASS) Add "-freorder-blocks-and-partition" to the flags used in second stage of profiledbootstrap. * bb-reorder.c (push_to_next_round_p): Add new variable, next_round_is_last; set and use variable to make sure, when partitioning, that the last trace construction round consists of all (and only) cold basic blocks. (rotate_loop): Don't copy blocks that end in a section crossing jump. (copy_bb): Correctly initialize "partition" of duplicated bb. (add_unlikely_executed_notes): Add a comment. (find_rarely_executed_basic_blocks_and_crossing_edges): Modify to make sure, if function contains hot blocks, that the successors of ENTRY_BLOCK_PTR are hot; also, only look for crossing edges if the architecture supports named sections. (mark_bb_for_unlikely_executed_section): Modify to always insert the NOTE_INSN_UNLIKELY_EXECUTED_CODE immediately after the basic block note insn. (fix_crossing_unconditional_branches): Remove extra space. (fix_edges_for_rarely_executed_code): Modify to only do partitioning work if the architecture supports named sections. (reorder_basic_blocks): Modify to only add NOTE_INSN_UNLIKELY_EXECUTED_CODE notes if the architecture supports named sections. * c-common.c (handle_section_attribute): Initialize new global variable, user_defined_section_attribute, to true if user has specified one. * cfgcleanup.c (try_forward_edges): Modify to not attempt to forward edges that cross section boundaries. * cfglayout.c (fixup_reorder_chain): Modify to only fix up partitioning information if the architecture supports named sections. * cfgrtl.c (target.h): Add statement to include this. (rtl_split_block): Make sure newly created bb gets correct partition. (try_redirect_by_replacing_jump): Make sure redirection isn't attempting to cross section boundaries. (force_nonfallthru_and_redirect): Only do partition fix up if architecture supports named sections. (rtl_split_edge): Make sure newly created bb ends up in correct partition. (commit_one_edge_insertion): Remove code that incorrectly updated basic block partition; Make sure partition fix up only happens if architecture supports named sections and it's not already done. (rtl_verify_flow_info_1): Fix if-condition on test/error condition that fallthru edges are not allowed to cross section boundaries. * defaults.h (NORMAL_TEXT_SECTION_NAME): Remove this. * final.c (final_scan_insn): Remove redundant test from if-statement; change calls to text_section into calls to function_section; add code to only to partitioning fix up if architecture supports named sections. * ifcvt.c (find_if_case_1): Make sure newly created bb has correct partition. (if_convert): Add targetm.have_named_sections to test. * output.h (unlikely_section_label): Extern declaration for new global variable. (unlikely_text_section_name): Likewise. * opts.c (decode_options): If both partitioning and DWARF debugging are turned on, issue a warning that this doesn't work, and change partitiong to basic block reordering (without hot/cold partitions). * passes.c (rest_of_handle_final): Re-set new global variable, user_defined_section_attribute, to false. (rest_of_compilation): Change options for calling partitioning function: Don't call if the user defined the section attribute, and don't call if DECL_ONE_ONLY is true for the current function. * predict.c (choose_function_section): Return immediately if we are doing hot/cold partitioning (i.e. let the basic block partitioning determine where the function belongs). * reg-stack.c (emit_swap_insn): Add condition to step over NOTE_INSN_UNLIKELY_EXECUTED_CODE notes. * toplev.c (user_defined_section_attribute): New global variable. * toplev.h (user_defined_section_attribute): Extern declaration for new global variable. * varasm.c (unlikely_section_label): New global variable. (unlikely_text_section_name): New global variable. (unlikely_text_section): Add code to initialize unlikely_text_section_name if necessary; modify to use unlikely_text_section_name and unlikely_section_label; also to use named_section properly. (in_unlikely_text_section): Modify to work correctly with named_section and to use unlikely_text_section_name. (named_section): Add code to work properly with cold section. (function_section): Clean up if-statement. * config/darwin.c (darwin_asm_named_section): Return to original code, removing use of SECTION_FORMAT_STRING. * config/arm/pe.h (switch_to_section): Add case for in_unlikely_executed_text to switch statement. * config/i386/cygming.h (switch_to_section): Likewise. * config/i386/darwin.h (NORMAL_TEXT_SECTION_NAME): Remove. (SECTION_FORMAT_STRING): Likewise. * config/mcore/mcore.h (switch_to_section): Likewise. * config/rs6000/darwin.h (NORMAL_TEXT_SECTION_NAME): Remove. From-SVN: r86189
2004-08-17varasm.c (MAX_OFILE_ALIGNMENT): Move ...David Edelsohn1-0/+5
* varasm.c (MAX_OFILE_ALIGNMENT): Move ... * defaults.h (MAX_OFILE_ALIGNMENT): ... here. From-SVN: r86168
2004-08-17tree-vectorizer.c: New File: loop vectorization on SSAed GIMPLE trees.Dorit Naishlos1-0/+4
* tree-vectorizer.c: New File: loop vectorization on SSAed GIMPLE trees. * tree-vectorizer.h: New File: Same. * Makefile.in (tree-vectorizer.c, tree-vectorizer.h): Add new files. * common.opt (ftree-vectorize): New flag to enable vectorization. * timevar.def (TV_TREE_VECTORIZATION): New dump file for vectorization pass. * tree-data-ref.h (init_data_ref): Additional argument. (array_base_name_differ_p): Moved to tree-data-ref.c. * tree-data-ref.c (array_base_name_differ_p): Revised. (initialize_data_dependence_relation): Call array_base_name_differ_p with an extra argument. (analyze_all_data_dependences): Same. (init_data_ref): Additional argument is_read to set DR_IS_READ. * tree-ssa-phiopt.c (empty_block_p): Expose for usage out of this file. * tree-flow.h (vectorize_loops, empty_block_p): Add declaration. * tree-optimize.c (pass_vectorize): Schedule the vectorization pass. * tree-pass.h (tree_opt_pass pass_vectorize): Declare the new vectorization pass. * tree-ssa-loop.c (tree_ssa_loop_init): Call scev_initialize. (tree_ssa_loop_done): Call scev_finalize. (tree_vectorize): Define the new vectorization pass. * defaults.h (UNITS_PER_SIMD_WORD): Allow targets to specify the size of the vector they support (until support for multiple vector sizes is added to the vectorizer). * config/i386/i386.h (UNITS_PER_SIMD_WORD): Define. * config/rs6000/rs6000.h (UNITS_PER_SIMD_WORD): Define. * invoke.texi (fdump-tree-vect, ftree-vectorize): Add documentation. From-SVN: r86131
2004-08-11configure.in (arm*-*-eabi*): New target.Mark Mitchell1-0/+13
* configure.in (arm*-*-eabi*): New target. * configure: Regenerate. * configure.ac (arm*-*-eabi*): New target. (arm*-*-symbianelf*): Likewise. * configure: Regenerated. * config.gcc (arm*-*-eabi*): New target. * defaults.h (TARGET_LIBGCC_FUNCS): New macro. (TARGET_LIB_INT_CMP_BIASED): Likewise. * expmed.c (expand_divmod): Try a two-valued divmod function as a last resort. * gthr.h: Remove bogus tokens at end of #pragma. * optabs.c (expand_twoval_binop_libfunc): New function. (prepare_cmp_insn): Handle the !TARGET_LIB_INT_CMP_BIASED case. (prepare_float_lib_cmp): Try reversing the condition. (debug_optab_libfuncs): New function. * optabs.h (expand_twoval_binop_libfunc): Declare. * config/arm/arm.c (arm_init_libfuncs): New function. (arm_compute_initial_eliminatino_offset): Return HOST_WIDE_INT. (TARGET_INIT_LIBFUNCS): Define it. * config/arm/arm.h (TARGET_BPABI): New macro. * config/arm/arm-protos.h (arm_compute_initial_elimination_offset): Return HOST_WIDE_INT. * config/arm/bpabi.S: New file. * config/arm/bpabi.c: Likewise. * config/arm/bpabi.h: Likewise. * config/arm/ieee754-df.S (__aeabi_dneg): New function or alias. (__aeabi_drsub): Likewise. (__aeabi_dsub): Likewise. (__aeabi_dadd): Likewise. (__aeabi_ui2d): Likewise. (__aeabi_i2d): Likewise. (__aeabi_f2d): Likewise. (__aeabi_dmul): Likewise. (__aeabi_ddiv): Likewise. (__aeabi_cdrcmple): Likewise. (__aeabi_cdcmpeq): Likewise. (__aeabi_cdcmple): Likewise. (__aeabi_dcmpeq): Likewise. (__aeabi_dcmplt): Likewise. (__aeabi_dcmple): Likewise. (__aeabi_dcmpge): Likewise. (__aeabi_dcmpgt): Likewise. (__aeabi_dcmpun): Likewise. (__aeabi_d2iz): Likewise. (__aeabi_d2uiz): Likewise. (__aeabi_d2f): Likewise. * config/arm/ieee754-sf.S (__aeabi_fneg): New function or alias. (__aeabi_frsub): Likewise. (__aeabi_fsub): Likewise. (__aeabi_fadd): Likewise. (__aeabi_ui2f): Likewise. (__aeabi_i2f): Likewise. (__aeabi_fmul): Likewise. (__aeabi_fdiv): Likewise. (__aeabi_cfrcmple): Likewise. (__aeabi_cfcmpeq): Likewise. (__aeabi_cfcmple): Likewise. (__aeabi_fcmpeq): Likewise. (__aeabi_fcmplt): Likewise. (__aeabi_fcmple): Likewise. (__aeabi_fcmpge): Likewise. (__aeabi_fcmpgt): Likewise. (__aeabi_fcmpun): Likewise. (__aeabi_f2iz): Likewise. (__aeabi_f2uiz): Likewise. * config/arm/lib1funcs.asm (ARM_CALL): New macro. (__aeabi_uidivmod): New function or alias. (__aeabi_idivmod): Likewise. (__aeabi_idiv0): Likewise. (__aeabi_ldiv0): Likewise. (__aeabi_llsr): Likewise. (__aeabi_lasr): Likewise. (__aeabi_llsl): Likewise. (bpabi.S): Include it. * config/arm/libgcc-bpabi.ver: New file. * config/arm/symbian.h (ARM_DEFAULT_ABI): Remove. (LINK_SPEC): Remove. * config/arm/t-arm-elf (LIB1ASMFUNCS): Add __aeabi_lcmp and __aeabi_ulcmp. * config/arm/t-bpabi: New file. * doc/tm.texi (TARGET_LIBGCC_FUNCS): New entry. (TARGET_LIB_INT_CMP_BIASED): Likewise. * gcc.dg/testsuite/gcc.dg/arm-eabi1.c: New test. * gcc.dg/dll-2.c: Fix dg-require syntax. * gcc.misc-tests/arm-isr.c (abort): Declare. (exit): Likewise. From-SVN: r85788
2004-08-06tree.c (handle_dll_attribute): Move here from i383/winnt.c.Mark Mitchell1-1/+5
* tree.c (handle_dll_attribute): Move here from i383/winnt.c. Replace use of DECL_INLINE with DECL_DECLARED_INLINE_P. Set DECL_VISIBLITY. Test TARGET_DLLIMPORT_DECL_ATTRIBUTES with #if. * tree.h (handle_dll_attribute): Declare. Test TARGET_DLLIMPORT_DECL_ATTRIBUTES with #if. * c-common.h (c_determine_visibility): Declare. * c-common.c (c_determine_visibility): New function. * c-decl.c (finish_decl): Use it. (finish_function): Likewise. * defaults.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define it to zero, by default. Use #if, not #ifdef, to test it. * config/arm/arm.c (arm_attribute_table): Use handle_dll_attribute. Test TARGET_DLLIMPORT_DECL_ATTRIBUTES with #if. * config/arm/pe.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define to 1. * config/i386/cygming.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define to 1. * config/i386/i386-protos.h (ix86_handle_dll_attribute): Remove. * config/i386/i386.c (ix86_attribute_table): Use handle_dll_attribute for dllimport/dllexport. Test TARGET_DLLIMPORT_DECL_ATTRIBUTES with #if. * config/i386/winnt.c (ix86_handle_dll_attribute): Remove. * config/mcore/mcore.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define it to 1. * config/mcore/mcore.c (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Test it with #if. * config/sh/symbian-pre.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define it to 1. * doc/extend.texi (dllexport): Clarify and correct documentation. (dllimport): Likewise. * doc/tm.texi (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Mention handle_dll_attribute. * decl.c (start_preparsed_function): Move determine_visibility call. * decl2.c (determine_visibility): Incorporate dllexport testing. * g++.dg/ext/visibility/assign1.C: Use scan-hidden and dg-require-visiblity. * g++.dg/ext/visibility/fvisibility-inlines-hidden.C: Likewise. * g++.dg/ext/visibility/fvisibility.C: Likewise. * g++.dg/ext/visibility/memfuncts.C: Likewise. * g++.dg/ext/visibility/new1.C: Likewise. * g++.dg/ext/visibility/pragma.C: Likewise. * g++.dg/ext/visibility/staticmemfuncts.C: Likewise. * g++.dg/ext/visibility/virtual.C: Likewise. * g++/dg/ext/visibility/visibility-1.C: Likewise. * g++/dg/ext/visibility/visibility-2.C: Likewise. * g++/dg/ext/visibility/visibility-3.C: Likewise. * g++/dg/ext/visibility/visibility-4.C: Likewise. * g++/dg/ext/visibility/visibility-5.C: Likewise. * g++/dg/ext/visibility/visibility-6.C: Likewise. * g++/dg/ext/visibility/visibility-7.C: Likewise. * g++/dg/ext/visibility/visibility-8.C: New test. * gcc.c-torture/compile/dll.x: Remove. * gcc.dg/dll-2.c: Use dg-require-dll * gcc.dg/visibility-10.c: New test. * lib/gcc-dg.exp (dg-require-dll): Add Symbian to list of targets supporting DLLs. * testsuite/lib/scanasm.exp (scan_hidden): New function. (scan_not_hidden): Likewise. From-SVN: r85621
2004-08-04defaults.h (TARGET_DECLSPEC): New macro.Mark Mitchell1-0/+10
* defaults.h (TARGET_DECLSPEC): New macro. * c-cppbuiltin.c (c_cpp_builtins): Handle TARGET_DECLSPEC. * config/arm/pe.h (SUBTARGET_CPP_SPEC): Remove __declspec support. * config/arm/symbian. (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define. * config/i386/beof-elf.h (TARGET_OS_CPP_BUILTINS): Remove __declspec support. (TARGET_DECLSPEC): Define. * config/i386/cygming.h (TARGET_OS_CPP_BUILTINS): Remove __declspec support. * config/i386/i386-interix.h (TARGET_OS_CPP_BUILTINS): Remove __declspec support. (TARGET_DECLSPEC): Define. * config/mcore/mcore.h (TARGET_CPU_CPP_BUILTINS): Remove __declspec support. * config/sh/symbian-pre.h (SUBTARGET_CPP_SPEC): Remove __declspec support. * doc/tm.texi (TARGET_DECLSPEC): Document. * doc/extend.texi: Fix typo in comment. From-SVN: r85571
2004-08-03defaults.h (LEGITIMATE_PIC_OPERAND_P): Provide default definition.Zack Weinberg1-0/+4
* defaults.h (LEGITIMATE_PIC_OPERAND_P): Provide default definition. * recog.c (general_operand, immediate_operand, nonmemory_operand) (asm_operand_ok): Remove #ifdefs on LEGITIMATE_PICOPERAND_P. * regclass.c (record_reg_classes): Likewise. * reload.c (find_reloads): Likewise. * reload1.c (reload): Likewise. From-SVN: r85512
2004-07-26basic-block.h (reorder_block_def): Rename to reorder_block_def_p.Bernardo Innocenti1-1/+2
* basic-block.h (reorder_block_def): Rename to reorder_block_def_p. * c-common.c: Add missing casts from void * to other types. * c-decl.c: Likewise. * c-format.c: Likewise. * c-lex.c: Likewise. * c-pragma.c: Likewise. * c-typeck.c: Likewise. * defaults.h: Likewise. * genconstants.c: Likewise. * gengtype-lex.l: Likewise. * genmodes.c: Likewise. * read-rtl.c: Likewise. * rtl.c: Likewise. From-SVN: r85166
2004-06-03re PR c++/15428 (vtables shouldn't always be weak on Darwin)Matt Austern1-5/+7
PR c++/15428 * default.h (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): New name for TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY, with reversed sense. * config/darwin.h (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): Likewise. * doc/tm.texi (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): Rewrite documentation to reflect the new macro name and to clarify its meaning. * cp/decl2.c (maybe_emit_vtables): If TARGET_WEAK_NOT_IN_ARCHIVE_TOC is nonzero, and if we see a noninline definition of a key method, make the vtables nonweak. From-SVN: r82610
2004-05-30bb-reorder.c, [...]: Fix comment formatting.Kazu Hirata1-3/+3
* bb-reorder.c, builtins.c, c-common.c, c-gimplify.c, c-incpath.c, cgraphunit.c, ddg.c, defaults.h, dwarf2out.c, expmed.c, flags.h, gcc.c, gensupport.c, gimplify.c, global.c, passes.c, reg-stack.c, target.h, toplev.c, tree-alias-ander.c, tree-alias-common.c, tree-cfg.c, tree-complex.c, tree-dfa.c, tree-eh.c, tree-mudflap.c, tree-mudflap.h, tree-outof-ssa.c, tree-phinodes.c, tree-pretty-print.c, tree-ssa-alias.c, tree-ssa-ccp.c, tree-ssa-live.c, tree-ssa-live.h, tree-ssa-pre.c, tree.h, value-prof.h, varasm.c: Fix comment formatting. From-SVN: r82463
2004-05-13Merge tree-ssa-20020619-branch into mainline.Diego Novillo1-0/+5
From-SVN: r81764
2004-04-14builtins.c (fold_builtin_isdigit): New.Kaveh R. Ghazi1-4/+5
* builtins.c (fold_builtin_isdigit): New. (fold_builtin): Handle BUILT_IN_ISDIGIT. * defaults.h: Add TARGET_DIGIT0 and sort. * doc/tm.texi: Add TARGET_BS and TARGET_DIGIT0. testsuite: * gcc.dg/torture/builtin-ctype-2.c: Test builtin isdigit. From-SVN: r80681
2004-04-13defaults.h (HOT_TEXT_SECTION_NAME): Add leading dot.Richard Henderson1-2/+2
* defaults.h (HOT_TEXT_SECTION_NAME): Add leading dot. (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Likewise. * doc/invoke.texi: Update to match. From-SVN: r80668
2004-04-10varasm.c (text_section): Use TEXT_SECTION_ASM_OP and ASM_OUTPUT_ALIGN ↵Andrew Pinski1-4/+0
instead of SECTION_FORMAT_STRING... 2004-04-11 Andrew Pinski <pinskia@physics.uc.edu> * varasm.c (text_section): Use TEXT_SECTION_ASM_OP and ASM_OUTPUT_ALIGN instead of SECTION_FORMAT_STRING and NORMAL_TEXT_SECTION_NAME. (unlikely_text_section): Check targetm.have_named_sections instead of TARGET_ASM_NAMED_SECTION and use TEXT_SECTION_ASM_OP instead of SECTION_FORMAT_STRING. * config/mips/iris5.h (current_section_name): Add in_unlikely_executed_text case and move the abort into the switch. * config/rs6000/sysv4.h (HOT_TEXT_SECTION_NAME): Remove. (NORMAL_TEXT_SECTION_NAME): Remove. (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove. (SECTION_FORMAT_STRING): Remove. * defaults.h (SECTION_FORMAT_STRING): Remove. * tm.texi (NORMAL_TEXT_SECTION_NAME): Remove. (SECTION_FORMAT_STRING): Remove. From-SVN: r80593
2004-04-09basic-block.h (struct edge_def): Add new field, crossing_edge.Caroline Tice1-0/+16
2004-04-09 Caroline Tice <ctice@apple.com> * basic-block.h (struct edge_def): Add new field, crossing_edge. (struct basic_block_def): Add new field, partition. (UNPARTITIONED, HOT_PARTITION, COLD_PARTITION): New constant macro definitions. (partition_hot_cold_basic_blocks): Add extern function declaration. * bb-reorder.c (function.h, obstack.h, expr.h, regs.h): Add four new include statements. (N_ROUNDS): Increase the maximum number of rounds by 1. (branch_threshold): Add array value for new round. (exec_threshold): Add array value for new round. (push_to_next_round_p): New function. (add_unlikely_executed_notes): New function. (find_rarely_executed_basic_blocks_and_crossing_edges): New function. (mark_bb_for_unlikely_executed_section): New function. (add_labels_and_missing_jumps): New function. (add_reg_crossing_jump_notes): New function. (fix_up_fall_thru_edges): New function. (find_jump_block): New function. (fix_crossing_conditional_branches): New function. (fix_crossing_unconditional_branches): New function. (fix_edges_for_rarely_executed_code): New function. (partition_hot_cold_basic_blocks): New function. (find_traces): Add an extra round for partitioning hot/cold basic blocks. (find_traces_1_round): Add a parameter. Modify to push all cold blocks, and only cold blocks, into the last (extra) round of collecting traces. (better_edge_p): Add a parameter. Modify to favor non-crossing edges over crossing edges. (bb_to_key): Add code to correctly identify cold blocks when doing partitioning. (connect_traces): Modify to connect all the non-cold traces first, then go back and connect up all the cold traces. (reorder_basic_blocks): Add call to add_unlikely_executed_notes. * cfg.c (entry_exit_blocks): Add initialization for partition field in entry and exit blocks. * cfgbuild.c (make_edges): Update current_function_has_computed_jump if we are doing hot/cold partitioning. * cfgcleanup.c (cfglayout.h): Add new include statement. (try_simplify_condjump): Modify to not attempt on blocks with jumps that cross section boundaries. (try_forward_edges): Likewise. (merge_blocks_move_predecessor_nojumps): Likewise. (merge_blocks_move_successor_nojumps): Likewise. (merge_blocks_move): Likewise. (try_crossjump_to_edge): Modify to not attempt after we have done the block partitioning. (try_crossjump_bb): Modify to not attempt on blocks with jumps that cross section boundaries. (try_optimize_cfg): Likewise. * cfghooks.c (tidy_fallthru_edges): Modify to not remove indirect jumps that cross section boundaries. * cfglayout.c (flags.h): Add new include statement. (update_unlikely_executed_notes): New function. (fixup_reorder_chain): Add code so when a new jumping basic block is added, it's UNLIKELY_EXECUTED_CODE and REG_CROSSING_JUMP notes are updated appropriately. (duplicate_insn_chain): Add code to duplicate the new NOTE insn introduced by this optimization. * cfglayout.h (scan_ahead_for_unlikely_executed_note): Add new extern function declaration. * cfgrtl.c (can_delete_note_p): Add NOTE_INSN_UNLIKELY_EXECUTED_CODE to list of notes that can be deleted. (create_basic_block_structure): Add initialization for partition field. (rtl_can_merge_blocks): Modify to test blocks for jumps that cross section boundaries. (try_redirect_by_replacing_jump): Modify to not attempt on jumps that cross section boundaries. (commit_one_edge_insertion): Add code so newly created basic block ends up in correct (hot or cold) section. Modify to disallow insertions before NOTE_INSN_UNLIKELY_EXECUTED_CODE notes. (rtl_verify_flow_info_1): Add code to verify that no fall_thru edge crosses section boundaries. (cfg_layout_can_merge_blocks_p): Modify to test blocks for jumps that cross section boundaries. (force_nonfallthru_and_redirect): Modify to make sure new basic block ends up in correct section, with correct notes attached. * common.opt (freorder-blocks-and-partition): Add new flag for this optimization. * dbxout.c (dbx_function_end): Add code to make sure scope labels at the end of functions are written into the correct (hot or cold) section. (dbx_source_file): Add code so writing debug file information doesn't incorrectly change sections. * defaults.h (NORMAL_TEXT_SECTION_NAME): New constant macro, for use in partitioning hot/cold basic blocks into separate sections. (SECTION_FORMAT_STRING): New constant macro, for linux/i386 hot/cold section partitioning. (HAS_LONG_COND_BRANCH): New constant macro, indicating whether or not conditional branches can span all of memory. (HAS_LONG_UNCOND_BRANCH): New constant macro, indicationg whether or not unconditional branches can span all of memory. * final.c (scan_ahead_for_unlikely_executed_note): New function. (final_scan_insn): Add code to check for NOTE instruction indicating whether basic block belongs in hot or cold section, and to make sure the current basic block is being written to the appropriate section. Also added code to ensure that jump table basic blocks end up in the correct section. * flags.h (flag_reorder_blocks_and_partition): New flag. * ifcvt.c (find_if_case_1): Modify to not attempt if conversion if one of the branches has a jump that crosses between sections. (find_if_case_2): Likewise. (ifcvt): Modify to not attempt to mark loop exit edges after hot/cold partitioning has occurred. * opts.c (decode_options): Code to handle new flag, flag_reorder_blocks_and_partition; also to turn it off if flag_exceptions is on. (common_handle_option): Code to handle new flag, flag_reorder_blocks_and_partition. * output.h (unlikely_text_section): New extern function declaration. (in_unlikely_text_section): New extern function declaration. * passes.c (rest_of_handle_stack_regs): Add flag_reorder_blocks_and_partition as an 'or' condition for calling reorder_basic_blocks. (rest_of_handle_reorder_blocks): Add flag_reorder_blocks_and_partition as an 'or' condition for calling reorder_basic_blocks. (rest_of_compilation): Add call to partition_hot_cold_basic_blocks. * print-rtl.c (print_rtx): Add code for handling new note, NOTE_INSN_UNLIKELY_EXECUTED_CODE * rtl.c (NOTE_INSN_UNLIKELY_EXECUTED_CODE): New note insn (see below). (REG_CROSSING_JUMP): New kind of reg_note, to mark jumps that cross between section boundaries. * rtl.h (NOTE_INSN_UNLIKELY_EXECUTED_CODE): New note instruction, indicating the basic block containing it belongs in the cold section. (REG_CROSSING_JUMP): New type of reg_note, to mark jumps that cross between hot and cold sections. * toplev.c (flag_reorder_blocks_and_partition): Add code to initialize this flag, and to tie it to the command-line option freorder-blocks-and-partition. * varasm.c (cfglayout.h): Add new include statement. (unlikely_section_label_printed): New global variable, used for determining when to output section name labels for cold sections. (in_section): Add in_unlikely_executed_text to enum data structure. (text_section): Modify code to use SECTION_FORMAT_STRING and NORMAL_TEXT_SECTION_NAME macros. (unlikely_text_section): New function. (in_unlikely_text_section): New function. (function_section): Add code to make sure beginning of function is written into correct section (hot or cold). (assemble_start_function): Add code to make sure stuff is written to the correct section. (assemble_zeros): Add in_unlikely_text_section as an 'or' condition to an if statement that was checking 'in_text_section'. (assemble_variable): Add 'in_unlikely_text_section' as an 'or' condition to an if statement that was checking 'in_text_section'. (default_section_type_flags_1): Add check: if in cold section flags = SECTION_CODE. * config/darwin.c (darwin_asm_named_section): Modify to use SECTION_FORMAT_STRING if we are partitioning hot/cold blocks. * config/i386/i386.h (HAS_LONG_COND_BRANCH): Defined this macro specifically for the i386. (HAS_LONG_UNCOND_BRANCH): Defined this macro specifically for the i386. * config/rs6000/darwin.h (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Change text string to something more informative. (NORMAL_TEXT_SECTION_NAME): Add new definition. (SECTION_FORMAT_STRING): Add new definition. * config/rs6000/rs6000.c (rs6000_assemble_integer): Add '!in_unlikely_text_section' as an 'and' condition to an if statement that was already checking '!in_text_section'. * config/rs6000/sysv4.h (HOT_TEXT_SECTION_NAME,NORMAL_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME,SECTION_FORMAT_STRING): Make sure these are properly defined for linux on ppc. * doc/invoke.texi (freorder-blocks-and-partition): Add documentation for this new flag. * doc/rtl.texi (REG_CROSSING_JUMP): Add documentation for new reg_note. * doc/tm.texi (NORMAL_TEXT_SECTION_NAME, SECTION_FORMAT_STRING, HAS_LONG_COND_BRANCH, HAS_LONG_UNCOND_BRANCH): Add documentation for these new macros. From-SVN: r80564
2004-04-08re PR c++/14808 ([win32] Undefined results with virtual base classes)Danny Smith1-0/+10
PR c++/14808 * defaults.h (TARGET_USE_LOCAL_THUNK_ALIAS_P): New macro. Default to 1 if ASM_OUTPUT_DEF is defined. * doc/tm.texi (TARGET_USE_LOCAL_THUNK_ALIAS_P): Document. * config/i386/cygming.h (TARGET_USE_LOCAL_THUNK_ALIAS_P): Define. Set to non-zero iff not a one_only decl. * cp/method.c (use_thunk): Test TARGET_USE_LOCAL_THUNK_ALIAS_P rather than ASM_OUTPUT_DEF. From-SVN: r80525
2004-03-15defaults.h (REVERSIBLE_CC_MODE): Define.Kazu Hirata1-0/+4
* defaults.h (REVERSIBLE_CC_MODE): Define. * jump.c (reversed_comparison_code_parts): Don't check if REVERSIBLE_CC_MODE is defined. From-SVN: r79507
2004-03-12Enabled linkonce support for Darwin.Matt Austern1-0/+30
* target.h (struct gcc_target): New target hook, unwind_label. * target-def.h (TARGET_ASM_EMIT_UNWIND_LABEL): New hook. * output.h (default_emit_unwind_label): New function. * default.h (TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY): New macro. (TARGET_USES_WEAK_UNWIND_INFO): New target macro. (TARGET_SUPPORTS_HIDDEN): New target macro. * dwarf2out.c (struct dw_fde_struct): Add field for function decl that corresponds to this FDE. (FRAME_BEGIN_LABEL): Allow target to override default label. (output_call_frame_info): If FDEs are linknonce, then use extra indirection for FDE encoding, output a label for each FDE, and output an empty label for each function without an FDE. (dwarf2out_begin_prologue): Set up decl field when creating an FDE. * varasm.c (globalize_decl): Call ASM_MAKE_LABEL_LINKONCE for decls with DECL_ONE_ONLY set, if that macro is defined. (make_decl_one_only): Don't use DECL_COMMON if we're compiling for a SUPPORTS_ONE_ONLY target. * config/darwin-protos.h (darwin_unique_section): Declare. (darwin_asm_named_section): Likewise. (darwin_section_type_flags): Likewise. (darwin_non_lazy_pcrel): Likewise. (darwin_emit_unwind_label): Likewise. (darwin_make_decl_one_only): Likewise. * config/darwin.c (machopic_finish): Get rid of tweak that eliminate stubs for symbols that are defined. (darwin_encode_section_info): Don't treat weak functions as defined. (darwin_make_decl_one_only): Define. (darwin_asm_named_section): Likewise. (darwin_section_type_flags): Likewise. (darwin_unique_section): Likewise. (darwin_emit_unwind_label): Likewise. (darwin_non_lazy_pcrel): Likewise. (darwin_asm_output_dwarf_delta): Difference between two labels is local only if both labels are local. * config/darwin.h (MAKE_DECL_ONE_ONLY): Define. (ASM_MAKE_LABEL_LINKONCE): Likewise. (TARGET_SUPPORTS_HIDDEN): Likewise. (TARGET_USES_WEAK_UNWIND_INFO): Likewise. (TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY): Likewise. (FRAME_BEGIN_LABEL): Likewise. (ASM_DECLARE_OBJECT_NAME): Make references to weak symbols indirect. (ASM_DECLARE_FUNCTION_NAME): Likewise. (darwin_eh_frame_section): Give __eh_frame section the coalesced flag. (TARGET_ASM_UNIQUE_SECTION): Define. (EH_FRAME_SECTION_NAME): Define. (EH_FRAME_SECTION_ATTR): Likewise. (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Likewise. (TARGET_ASM_NAMED_SECTION): Likewise. (TARGET_SECTION_TYPE_FLAGS): Likewise. * doc/tm.texi: Document TARGET_USES_WEAK_UNWIND_INFO, TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY, TARGET_SUPPORTS_HIDDEN, TARGET_ASM_EMIT_UNWIND_LABEL. * cp/decl2.c (maybe_make_one_only): Look at TARGET_EXPLICIT_INSTANTIATION_ONE_ONLY when deciding whether to make an explicit instantiation weak. * cp/method.c (use_thunk): Make sure we call comdat_linkage when appropriate. * cp/pt.c (do_type_instantiation): On systems where weak symbols don't go in a static archive's TOC, explicit instantiation of a class must imply *explicit* instantiation of its memeber. From-SVN: r79394
2004-03-07defaults.h (LEGITIMIZE_ADDRESS): Provide a default definition.Kazu Hirata1-0/+4
* defaults.h (LEGITIMIZE_ADDRESS): Provide a default definition. * config/arc/arc.h, config/fr30/fr30.h, config/frv/frv.h, config/h8300/h8300.h, config/ia64/ia64.h, config/mcore/mcore.h, config/mmix/mmix.h, config/ns32k/ns32k.h, config/pdp11/pdp11.h, config/stormy16/stormy16.h, config/v850/v850.h, config/vax/vax.h (LEGITIMIZE_ADDRESS): Remove. * doc/tm.texi (LEGITIMIZE_ADDRESS): Mention the default definition. From-SVN: r79066
2004-02-21combine.c (SHIFT_COUNT_TRUNCATED): Remove.Kazu Hirata1-0/+4
* combine.c (SHIFT_COUNT_TRUNCATED): Remove. * defaults.h (SHIFT_COUNT_TRUNCATED): Provide the default. * expmed.c: Assume SHIFT_COUNT_TRUNCATED is always defined. * fold-const.c: Likewise. * simplify-rtx.c: Likewise. From-SVN: r78230