Age | Commit message (Collapse) | Author | Files | Lines |
|
2007-04-16 David Ung <davidu@mips.com>
Joseph Myers <joseph@codesourcery.com>
* config/mips/mips.h (PROCESSOR_74KC, PROCESSOR_74KF,
PROCESSOR_74KX, TUNE_74K, GENERATE_MADD_MSUB): Define.
* config/mips/mips.c (mips_cpu_info_table, mips_rtx_cost_data):
Add 74K processor information.
* config/mips/mips.md: Include 74k.md.
(cpu): Add 74kc,74kf,74kx.
(ISA_HAS_MADD_MSUB): Change to GENERATE_MADD_MSUB throughout.
* config/mips/74k.md: New.
* doc/invoke.texi (MIPS Options): Document 74K support.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r123863
|
|
From-SVN: r123819
|
|
2007-04-13 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.opt (msvr3-shlib): Removed.
* doc/invoke.texi: Remove -msvr3-shlib.
From-SVN: r123787
|
|
From-SVN: r123769
|
|
* doc/md.texi (Blackfin family constraints): Document PA and PB.
* config/bfin/bfin.h (CONST_OK_FOR_P): Handle PA and PB.
(MACFLAGS_MATCH_P): New macro.
* config/bfin/bfin.c (print_operand): Handle MACFLAG_IS_M.
(bfin_secondary_reload): Treat EVEN_AREGS and ODD_AREGS like AREGS.
* config/bfin/bfin.md (MACFLAG_IS_M): New constant. Renumber some of
the other MACFLAG constants.
(sum_of_accumulators, lshrpdi3, ashrpdi3): New patterns.
(flag_machi): Tighten constraints. Renumber some of the operands.
(flag_machi_acconly): Tighten constraints. Correct operand numbers in
output template.
(flag_machi_parts_acconly): New pattern.
(flag_macinithi): Tighten constraints. Allow any accumulator to be
used.
(flag_macinit1hi): Tighten constraints.
(flag_mul_macv2hi_parts_acconly): New pattern.
From-SVN: r123745
|
|
PR 30735
PR 31090
* doc/invoke.texi: Document --params max-aliased-vops and
avg-aliased-vops.
* tree-ssa-operands.h (get_mpt_for, dump_memory_partitions,
debug_memory_partitions): Move to tree-flow.h
* params.h (AVG_ALIASED_VOPS): Define.
* tree-ssa-alias.c (struct mp_info_def): Remove. Update all
users.
(mp_info_t): Likewise.
(get_mem_sym_stats_for): New.
(set_memory_partition): Move from tree-flow-inline.h.
(mark_non_addressable): Only clear the set of symbols for the
partition if it exists.
(dump_memory_partitions): Move from tree-ssa-operands.c
(debug_memory_partitions): Likewise.
(need_to_partition_p): New.
(dump_mem_ref_stats): New.
(debug_mem_ref_stats): New.
(dump_mem_sym_stats): New.
(debug_mem_sym_stats): New.
(update_mem_sym_stats_from_stmt): New.
(compare_mp_info_entries): New.
(mp_info_cmp): Call it.
(sort_mp_info): Change argument to a list of mem_sym_stats_t
objects.
(get_mpt_for): Move from tree-ssa-operands.c.
(find_partition_for): New.
(create_partition_for): Remove.
(estimate_vop_reduction): New.
(update_reference_counts): New.
(build_mp_info): New.
(compute_memory_partitions): Refactor.
Document new heuristic.
Call build_mp_info, update_reference_counts,
find_partition_for and estimate_vop_reduction.
(compute_may_aliases): Populate virtual operands before
calling debugging dumps.
(delete_mem_sym_stats): New.
(delete_mem_ref_stats): New.
(init_mem_ref_stats): New.
(init_alias_info): Call it.
(maybe_create_global_var): Remove alias_info argument.
Get number of call sites and number of pure/const call sites
from gimple_mem_ref_stats().
(dump_alias_info): Call dump_memory_partitions first.
(dump_points_to_info_for): Show how many times a pointer has
been dereferenced.
* opts.c (decode_options): For -O2 set --param
max-aliased-vops to 500.
For -O3 set --param max-aliased-vops to 1000 and --param
avg-aliased-vops to 3.
* fortran/options.c (gfc_init_options): Remove assignment to
MAX_ALIASED_VOPS.
* tree-flow-inline.h (gimple_mem_ref_stats): New.
* tree-dfa.c (dump_variable): Dump memory reference
statistics.
Dump NO_ALIAS* settings.
(referenced_var_lookup): Tidy.
(mem_sym_stats): New.
* tree-ssa-copy.c (may_propagate_copy): Return true if DEST
and ORIG are different SSA names for a memory partition.
* tree-ssa.c (delete_tree_ssa): Call delete_mem_ref_stats.
* tree-flow.h (struct mem_sym_stats_d): Define.
(mem_sym_stats_t): Define.
(struct mem_ref_stats_d): Define.
(struct gimple_df): Add field mem_ref_stats.
(enum noalias_state): Define.
(struct var_ann_d): Add bitfield noalias_state.
(mem_sym_stats, delete_mem_ref_stats, dump_mem_ref_stats,
debug_mem_ref_stats, debug_memory_partitions,
debug_mem_sym_stats): Declare.
* tree-ssa-structalias.c (update_alias_info): Update call
sites, pure/const call sites and asm sites in structure
returned by gimple_mem_ref_stats.
Remove local variable IS_POTENTIAL_DEREF.
Increase NUM_DEREFS if the memory expression is a potential
dereference.
Call update_mem_sym_stats_from_stmt.
If the memory references memory, call
update_mem_sym_stats_from_stmt for all the direct memory
symbol references found.
(intra_create_variable_infos): Set noalias_state field for
pointer arguments according to the value of
flag_argument_noalias.
* tree-ssa-structalias.h (struct alias_info): Remove fields
num_calls_found and num_pure_const_calls_found.
(update_mem_sym_stats_from_stmt): Declare.
* params.def (PARAM_MAX_ALIASED_VOPS): Change description.
Set default value to 100.
(PARAM_AVG_ALIASED_VOPS): Define.
From-SVN: r123719
|
|
* doc/extend.texi (Other Builtins): Add decimal float variants
of signbit.
* builtins.def: Ditto.
* builtins.c (expand_builtin): Ditto.
testsuite/
* gcc.dg/dfp/signbit-1.c
* gcc.dg/dfp/signbit-2.c
M gcc/doc/extend.texi
M gcc/builtins.c
M gcc/ChangeLog
A gcc/testsuite/gcc.dg/dfp/signbit-2.c
A gcc/testsuite/gcc.dg/dfp/signbit-1.c
M gcc/testsuite/ChangeLog
M gcc/builtins.def
From-SVN: r123528
|
|
PRR doc/31355
* doc/invoke.texi (--help=): Document <languages> value, fix
formatting in tables of values.
From-SVN: r123497
|
|
2007-04-04 Chen Liqin <liqin@sunnorth.com.cn>
* config/score/crti.asm: Change _bss_start to __bss_start.
* config/score/score.h (CONDITIONAL_REGISTER_USAGE): Added.
(OUTGOING_REG_PARM_STACK_SPACE) update.
* config/score/score.opt: add options to make backend support
score5, score5u, score7 and score7d.
* config/score/score.md: Likewise.
* config/score/misc.md: Likewise.
* config/score/mac.md: Likewise.
* doc/invoke.texi: Likewise.
* doc/md.texi: update constraints define.
From-SVN: r123490
|
|
CONSTRAINT_LEN implementation.
2007-04-03 Richard Guenther <rguenther@suse.de>
* genpreds.c (write_insn_constraint_len): Write function
optimized for CONSTRAINT_LEN implementation.
(write_tm_preds_h): Output insn_constraint_len inline and
use it for CONSTRAINT_LEN.
(write_insn_preds_c): Don't output insn_constraint_len.
* doc/md.texi (define_register_constraint): Document multi-letter
constraints shall have the same length if they start with the same
letter.
From-SVN: r123451
|
|
* config.gcc (i[34567]86-*-linux*): Add i386/t-crtpc to tm-file.
(x86_64-*-linux*): Ditto.
* config/i386/i386.opt (mpc): New option.
* config/i386/i386.c (overrride_options): Handle
ix87_precision_string.
* config/i386/crtprec.c: New file.
* config/i386/t-crtpc: Ditto.
* config/i386/linux.h (ENDFILE_SPEC): Add handling of -mpc32, -mpc64
and -mpc80 options.
* config/i386/linux64.h (ENDFILE_SPEC): Ditto.
* config/i386/t-linux64 (EXTRA_MULTILIB_PARTS): Add
crtprec32.o, crtprec64.o and crtprec80.o.
* doc/invoke.texi (Machine Dependent Options): Add -mpc32, -mpc64
and -mpc80 options.
(i386 and x86-64 Options): Document -mpc32, -mpc64 and -mpc80 options.
libgcc/ChangeLog:
* config/i386/t-crtpc: New file.
* config.host (i[34567]86-*-linux*): Add i386/t-crtpc to tm-file.
(x86_64-*-linux*): Ditto.
From-SVN: r123450
|
|
2007-04-02 Eric Christopher <echristo@apple.com>
* doc/invoke.texi (i386 and x86-64 Options): Document -m64
limitations on darwin.
From-SVN: r123446
|
|
2007-04-02 Dave Korn <dave.korn@artimi.com>
* doc/tm.texi (FUNCTION_MODE): Update and extend documentation.
From-SVN: r123419
|
|
2007-03-31 Wolfgang Bangerth <bangerth@dealii.org>
Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 14737
* doc/invoke.texi: (optimization options): Reword description
of -ffast-math. Document its primary purpose.
Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>
From-SVN: r123382
|
|
libcpp/
* directives.c (lex_macro_node_from_str): New.
(cpp_push_definition, cpp_pop_definition): New.
* include/cpplib.h (cpp_push_definition, cpp_pop_definition): Declare.
gcc/
* c-pragma.c (struct def_pragma_macro_value): New.
(struct def_pragma_macro): New.
(pushed_macro_table): New.
(dpm_hash, dpm_eq): New.
(handle_pragma_push_macro, handle_pragma_pop_macro): New.
(init_pragma): Install them.
* doc/tm.texi (HANDLE_PRAGMA_PUSH_POP_MACRO): New.
Co-Authored-By: Kai Tietz <kai.tietz@onevision.com>
From-SVN: r123370
|
|
gcc/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
PR c++/26099
* c-common.h (enum rid): Add RID_HAS_NOTHROW_ASSIGN,
RID_HAS_NOTHROW_CONSTRUCTOR, RID_HAS_NOTHROW_COPY,
RID_HAS_TRIVIAL_ASSIGN, RID_HAS_TRIVIAL_CONSTRUCTOR,
RID_HAS_TRIVIAL_COPY, RID_HAS_TRIVIAL_DESTRUCTOR,
RID_HAS_VIRTUAL_DESTRUCTOR, RID_IS_ABSTRACT, RID_IS_BASE_OF,
RID_IS_CONVERTIBLE_TO, RID_IS_CLASS, RID_IS_EMPTY, RID_IS_ENUM,
RID_IS_POD, RID_IS_POLYMORPHIC, RID_IS_UNION, as
C++ extensions.
* doc/extend.texi (Extensions to the C++ Language): Add Type Traits.
gcc/cp/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
PR c++/26099
* cp-tree.h (enum cp_trait_kind, struct tree_trait_expr,
TRAIT_EXPR_TYPE1, TRAIT_EXPR_TYPE2, TRAIT_EXPR_KIND): Add.
(enum cp_tree_node_structure_enum, union lang_tree_node): Update.
(CLASS_TYPE_NON_UNION_P): Add.
(struct lang_type_class): Add has_complex_dflt.
(TYPE_HAS_COMPLEX_DFLT, TYPE_HAS_TRIVIAL_DFLT): Add.
(locate_copy, locate_ctor, locate_dtor, finish_trait_expr): Declare.
* cp-tree.def: Add TRAIT_EXPR.
* cp-objcp-common.c (cp_tree_size): Add TRAIT_EXPR case.
* lex.c (struct resword): Add __has_nothrow_assign,
__has_nothrow_constructor, __has_nothrow_copy, __has_trivial_assign,
__has_trivial_constructor, __has_trivial_copy,
__has_trivial_destructor, __has_virtual_destructor, __is_abstract,
__is_base_of, __is_class, __is_convertible_to, __is_empty, __is_enum,
__is_pod, __is_polymorphic, __is_union.
* parser.c (cp_parser_primary_expression): Deal with the new RIDs.
(cp_parser_trait_expr): New.
* semantics.c (finish_trait_expr, trait_expr_value
classtype_has_nothrow_copy_or_assign_p): New.
* method.c (locate_copy, locate_ctor, locate_dtor): Do not define
as static.
* decl.c (cp_tree_node_structure): Add TRAIT_EXPR.
* class.c (check_bases, check_field_decl, check_bases_and_members):
Deal with TYPE_HAS_COMPLEX_DFLT (t) too.
* pt.c (uses_template_parms, tsubst_copy_and_build,
value_dependent_expression_p, type_dependent_expression_p): Deal with
TRAIT_EXPR.
* tree.c (cp_walk_subtrees): Deal with TRAIT_EXPR.
gcc/testsuite/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
PR c++/26099
* g++.dg/ext/is_base_of.C: New.
* g++.dg/ext/has_virtual_destructor.C: New.
* g++.dg/ext/is_polymorphic.C: New.
* g++.dg/ext/is_base_of_diagnostic.C: New.
* g++.dg/ext/is_enum.C: New.
* g++.dg/ext/has_nothrow_assign.C: New.
* g++.dg/ext/has_nothrow_constructor.C: New.
* g++.dg/ext/is_empty.C: New.
* g++.dg/ext/has_trivial_copy.C: New.
* g++.dg/ext/has_trivial_assign.C: New.
* g++.dg/ext/is_abstract.C: New.
* g++.dg/ext/is_pod.C: New.
* g++.dg/ext/has_nothrow_copy.C: New.
* g++.dg/ext/is_class.C: New.
* g++.dg/ext/has_trivial_constructor.C: New.
* g++.dg/ext/is_union.C: New.
* g++.dg/ext/has_trivial_destructor.C: New.
* g++.dg/tree-ssa/pr22444.C: Adjust, avoid __is_pod.
* g++.dg/template/crash43.C: Likewise.
libstdc++-v3/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
PR c++/26099
* include/bits/cpp_type_traits.h (struct __is_pod, struct __is_empty):
Remove.
* include/bits/valarray_array.h: Adjust.
* include/bits/allocator.h: Likewise.
* include/bits/stl_tree.h: Likewise.
From-SVN: r123366
|
|
From-SVN: r123313
|
|
* gengtype-parse.c: New file.
* gengtype-yacc.y: Delete.
* gengtype-lex.l: Don't include gengtype-yacc.h.
Define YY_DECL and yyterminate appropriately for recursive
descent parser. yylval is now a string out-parameter to yylex.
(HWS, EOID): New shorthand.
(IWORD): Add a couple more types.
(yylex): Add a setup stanza. Remove the complex rules for
detecting GTY'ed types and typedefs; replace with simple
keyword detectors. Adjust everything for the changed
definition of yylval. Ignore all pp-directives, not just #define.
(yyerror): Delete.
(parse_file): Rename yybegin; do not call yyparse.
(yyend): New.
* gengtype.c (xasprintf): Export again.
(this_file): New. Use everywhere __FILE__ was being used.
(get_lang_bitmap): Special case types defined in gengtype.c.
(do_typedef, new_structure): Suppress definition of certain types.
(new_structure): Improve diagnostics of duplicate definitions.
Make sure location_s is associated with input.h.
(nreverse_pairs, define_location_structures): New functions.
(main): Improve tagging of kludge types. Remove old kludges
for input.h types; use define_location_structures.
* gengtype.h: Update prototypes. Define token codes here.
* Makefile.in: Remove all references to gengtype-yacc.
Add rules for gengtype-parse.o. Adjust rules for gengtype-lex.o
and gengtype.
* bitmap.h (struct bitmap_head_def): Coalesce definitions,
add GTY((skip)) to the field that's only conditionally there.
* doc/install.texi: Document that Bison is no longer required
unless building treelang.
From-SVN: r123235
|
|
Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>
Co-Authored-By: Marius Cornea <marius.cornea@intel.com>
From-SVN: r123185
|
|
* defaults.h (OUTGOING_REG_PARM_STACK_SPACE): Provide default.
* calls.c (compute_argument_block_size, expand_call,
emit_library_call_value_1): Don't ifdef OUTGOING_REG_PARM_STACK_SPACE.
* expr.c (block_move_libcall_safe_for_call_parm): Likewise.
* function.c (STACK_DYNAMIC_OFFSET): Likewise.
* doc/tm.texi (OUTGOING_REG_PARM_STACK_SPACE): Update.
* config/alpha/unicosmk.h, config/bfin/bfin.h, config/iq2000/iq2000.h,
config/mips/mips.h, config/mn10300/mn10300.h, config/mt/mt.h,
config/pa/pa.h, config/rs6000/rs6000.h, config/score/score.h,
config/spu/spu.h, config/v850/v850.h (OUTGOING_REG_PARM_STACK_SPACE):
Set to 1.
Co-Authored-By: Richard Henderson <rth@redhat.com>
From-SVN: r123135
|
|
* c-incpath.c (add_sysroot_to_chain): New.
(merge_include_chains): Add sysroot argument. Call
add_sysroot_to_chain if sysrooted.
(register_include_chains): Update call to merge_include_chains.
* doc/cppopts.texi: Document use of '=' in include directory
arguments.
From-SVN: r123134
|
|
gcc/
* doc/invoke.texi (-fpie, -fPIE): Document __pie__ and __PIE__.
* c-cppbuiltin.c (c_cpp_builtins): Define them.
From-SVN: r123104
|
|
2007-03-19 Andreas Krebbel <krebbel1@de.ibm.com>
* doc/tm.texi: Add brackets around the return type of
TARGET_SECONDARY_RELOAD.
From-SVN: r123062
|
|
* config/arm/arm.c, config/arm/thumb2.md, config/m68k/m68k.c,
config/spu/spu.c, omega.h, passes.c, predict.c: Fix comment
typos.
* doc/cpp.texi, doc/extend.texi, doc/invoke.texi: Fix typos.
Follow spelling conventions.
From-SVN: r123025
|
|
2007-03-16 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* doc/invoke.texi (-Wconversion): Document warnings specific to C++.
* c-common.c (convert_and_check): Move warning logic to...
(warnings_for_convert_and_check): ...here. Define.
* c-common.h (warnings_for_convert_and_check): Declare.
cp/
* cvt.c (cp_convert_and_check) : Define.
* cp-tree.h (cp_convert_and_check): Declare.
* call.c (convert_conversion_warnings): Rename to
conversion_null_warnings. The warning for floating-point to
integer is handled by convert_and_check in convert_like_real.
(convert_like_real): convert_conversion_warnings was renamed as
conversion_null_warnings.
* typeck.c (build_binary_op): Use cp_convert_and_check to warn for
overflow and changes of value during conversion.
testsuite/
* g++.dg/warn/Wconversion-integer.C: New
* g++.dg/warn/Wconversion-real.C: New.
* g++.dg/warn/Wconversion-real-integer.C: New.
* g++.dg/warn/conv2.C: Updated.
From-SVN: r123005
|
|
2007-03-14 Dirk Mueller <dmueller@suse.de>
* c-common.h (empty_body_warning): Rename to empty_if_body_warning.
* c-common.c (empty_if_body_warning): Rephrase diagnostic message.
* c-parser.c (c_parser_if_body): Always add an empty statement in case
of empty body.
* c-parser.c (c_parser_do_statement): Warn about empty body in
do/while statement.
* c-typeck (c_finish_if_stmt): Call empty_if_body_warning.
* doc/invoke.texi (-Wempty-body): Update documentation.
* cp/semantics.c (c_finish_if_stmt): Call empty_if_body_warning.
(finish_do_body): Warn about empty body in do/while statement.
* g++.dg/warn/do-empty.C: New.
* gcc.dg/do-empty.c: New.
* gcc.dg/if-empty-1.c: Update.
* gcc.dg/20001116-1.c: Update.
* gcc.dg/pr23165.c: Update.
From-SVN: r122928
|
|
gcc/
* doc/invoke.texi: Document VxWorks options.
From-SVN: r122922
|
|
* doc/invoke.texi (i386 and x86-64 Options): Clarify -msahf option.
From-SVN: r122910
|
|
* config/i386/i386.opt (mcx16, msahf): New options.
* config/i386/i386.c (x86_cmpxchg16b, x86_sahf): Remove.
(ix86_tune_features) [X86_TUNE_USE_SAHF]: Enable for m_GENERIC.
* config/i386/driver-i386.c (bit_LAHF_LM): New define.
(host_detect_local_cpu): Detect cx16 and lahf_lm cpuid bits.
Output -mcx16 and -msahf options when corresponding bit is set.
* doc/invoke.texi (i386 and x86-64 Options): Document -mcx16
and -msahf options.
testsuite/ChangeLog
* testsuite/gcc.target/i386/cmpxchg16b-1.c: New test.
From-SVN: r122884
|
|
From-SVN: r122878
|
|
* doc/invoke.texi: Fix cpp.info cross-reference.
* doc/passes.texi: Fix gcc.info cross-reference.
From-SVN: r122869
|
|
documented.)
PR 30635
* doc/install.texi: Document --enable-stage1-languages
From-SVN: r122861
|
|
ChangeLog:
2007-03-12 Seongbae Park <seongbae.park@gmail.com>
* gcc/doc/invoke.texi (Wvla): New warning.
gcc/ChangeLog:
2007-03-12 Seongbae Park <seongbae.park@gmail.com>
* c-decl.c (warn_variable_length_array): New function.
Refactored from grokdeclarator to handle warn_vla
and handle unnamed array case.
(grokdeclarator): Refactored VLA warning case.
* c.opt (Wvla): New flag.
gcc/cp/ChangeLog:
2007-03-12 Seongbae Park <seongbae.park@gmail.com>
* decl.c (compute_array_index_type): New warning flag warn_vla.
gcc/testsuite/ChangeLog:
2007-03-12 Seongbae Park <seongbae.park@gmail.com>
* gcc.dg/wvla-1.c: New test
* gcc.dg/wvla-2.c: New test
* gcc.dg/wvla-3.c: New test
* gcc.dg/wvla-4.c: New test
* gcc.dg/wvla-5.c: New test
* gcc.dg/wvla-6.c: New test
* gcc.dg/wvla-7.c: New test
* g++.dg/warn/Wvla-1.C: New test
* g++.dg/warn/Wvla-2.C: New test
* g++.dg/warn/Wvla-3.C: New test
From-SVN: r122851
|
|
PR target/26090
* target.h (targetm.asm.out.reloc_rw_mask): New.
* target-def.h (TARGET_ASM_RELOC_RW_MASK): New.
(TARGET_ASM_OUT): Use it.
* targhooks.c, targhooks.h (default_reloc_rw_mask): New.
* varasm.c (categorize_decl_for_section): Remove shlib argument;
use the new reloc_rw_mask target hook instead.
(default_section_type_flags_1): Merge into...
(default_section_type_flags): ... here.
(decl_readonly_section_1): Merge into...
(decl_readonly_section): ... here.
(default_elf_select_section_1): Merge into...
(default_elf_select_section): ... here.
(default_unique_section_1): Merge into...
(default_unique_section): ... here.
(compute_reloc_for_rtx_1, compute_reloc_for_rtx): New.
(default_select_rtx_section): Use it.
(default_elf_select_rtx_section): Likewise.
* output.h: Update to match.
* doc/tm.texi (TARGET_ASM_RELOC_RW_MASK): New.
* config/alpha/alpha.c (alpha_elf_reloc_rw_mask): New.
(TARGET_ASM_RELOC_RW_MASK): New.
* config/i386/i386.c (x86_64_elf_select_section): Adjust call
to categorize_decl_for_section.
(x86_64_elf_unique_section): Likewise.
* config/ia64/hpux.h (TARGET_ASM_SELECT_SECTION,
TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): Remove.
(TARGET_ASM_RELOC_RW_MASK): New.
* config/ia64/ia64.c (ia64_rwreloc_select_section,
ia64_rwreloc_unique_section, ia64_rwreloc_select_rtx_section): Remove.
(ia64_hpux_reloc_rw_mask, ia64_reloc_rw_mask): New.
(TARGET_RWRELOC): Remove.
(ia64_section_type_flags): Adjust call to default_section_type_flags.
* config/ia64/sysv4.h (TARGET_ASM_RELOC_RW_MASK): New.
* config/rs6000/rs6000.c (rs6000_elf_section_type_flags): Remove.
(rs6000_elf_select_section, rs6000_elf_unique_section): Remove.
(rs6000_elf_reloc_rw_mask, rs6000_xcoff_reloc_rw_mask): New.
(rs6000_xcoff_select_section): Use decl_readonly_section.
(rs6000_xcoff_section_type_flags): Use default_section_type_flags.
* config/rs6000/sysv4.h (TARGET_ASM_RELOC_RW_MASK): New.
(TARGET_ASM_SELECT_SECTION, TARGET_ASM_UNIQUE_SECTION): Remove.
(TARGET_SECTION_TYPE_FLAGS): Remove.
* config/rs6000/xcoff.h (TARGET_ASM_RELOC_RW_MASK): New.
From-SVN: r122781
|
|
* doc/extend.texi (MIPS DSP Built-in Functions): Document the DSP
REV 2.
* doc/invoke.texi (-mdspr2): Document new option.
* config/mips/mips.md (UNSPEC_ABSQ_S_QB .. UNSPEC_DPSQX_SA_W_PH):
New unspec for DSP REV 2.
(<u>mulsidi3_32bit_internal): Check if !TARGET_DSPR2, because
these instructions are extended in DSP REV 2.
(mips-dspr2.md): Include.
* config/mips/mips.opt (mdspr2): New option.
* config/mips/mips.c (mips_function_type): Add MIPS_V4QI_FTYPE_V4QI,
MIPS_SI_FTYPE_SI_SI_SI, MIPS_DI_FTYPE_DI_USI_USI, MIPS_DI_FTYPE_SI_SI,
MIPS_DI_FTYPE_USI_USI, MIPS_V2HI_FTYPE_SI_SI_SI.
(override_options): Check TARGET_DSPR2 to enable MASK_DSP.
(CODE_FOR_mips_mul_ph): Define it to CODE_FOR_mulv2hi3.
(dsp_bdesc): Add DSP REV 2 builtins. Remove 32-bit only DSP builtins.
(dsp_32only_bdesc): New description table for 32-bit only DSP REV 1
and 2 builtins.
(bdesc_map): Add one field of unsupported_target_flags.
(bdesc_arrays): Update entries to have extra fields. Add
dsp_32only_bdesc.
(mips_init_builtins): Initialize new function types.
Check unsupported_target_fileds to filter out builtins.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_dspr2 if
TARGET_DSPR2.
(ASM_SPEC): Pass mdspr2 to the assembler.
* config/mips/mips-dspr2.md: New file.
From-SVN: r122756
|
|
like -Wstrict-overflow=2.
* opts.c (common_handle_option): Treat -Wstrict-overflow (with no
argument) like -Wstrict-overflow=2.
* doc/invoke.texi (Warning Options): Update documentation.
From-SVN: r122753
|
|
intended)
2007-03-09 Dirk Mueller <dmueller@suse.de>
PR c++/17946
* doc/invoke.texi (-Wlogical-op): Document.
* common.opt (-Wlogical-op): New.
* c-common.h (warn_logical_operator): Declare.
* c-common.c (warn_logical_operator): Define.
* c-typeck.c (parser_build_binary_op): Call
warn_logical_operator.
* cp/call.c (build_new_op): Call warn_logical_operator.
* testsuite/gcc.dg/Wlogical-op-1.c: New.
* testsuite/g++.dg/warn/Wlogical-op-1.C: New.
From-SVN: r122751
|
|
* doc/loop.texi: Document the Omega linear constraints solver.
* doc/invoke.texi: Document -fcheck-data-deps, omega-max-vars,
omega-max-geqs, omega-max-eqs, omega-max-wild-cards,
omega-hash-table-size, omega-max-keys, and
omega-eliminate-redundant-constraints.
* tree-pass.h (pass_check_data_deps): Declared.
* omega.c: New.
* omega.h: New.
* timevar.def (TV_CHECK_DATA_DEPS): Declared.
* tree-ssa-loop.c (check_data_deps, gate_check_data_deps,
pass_check_data_deps): New.
* tree-data-ref.c (init_data_ref): Remove declaration.
(dump_data_dependence_relation): Dump DDR_INNER_LOOP.
(analyze_array): Renamed init_array_ref, move up initializations.
(init_data_ref): Renamed init_pointer_ref. Moved before its call.
Removed arguments that are set to NULL.
(analyze_indirect_ref): Correct indentation, correct call to
init_pointer_ref.
(object_analysis): Call init_array_ref instead of analyze_array.
(initialize_data_dependence_relation): Initialize DDR_INNER_LOOP.
(access_functions_are_affine_or_constant_p): Use DR_ACCESS_FNS instead
of DR_ACCESS_FNS_ADDR.
(init_omega_eq_with_af, omega_extract_distance_vectors,
omega_setup_subscript, init_omega_for_ddr_1, init_omega_for_ddr,
ddr_consistent_p): New.
(compute_affine_dependence): Check consistency of ddrs when
flag_check_data_deps is passed.
(analyze_all_data_dependences): Uncomment.
(tree_check_data_deps): New.
* tree-data-ref.h: Include omega.h.
(DR_ACCESS_FNS_ADDR): Removed.
(data_dependence_relation): Add inner_loop.
(DDR_INNER_LOOP): New.
* common.opt (fcheck-data-deps): New.
* tree-flow.h (tree_check_data_deps): Declare.
* Makefile.in (TREE_DATA_REF_H): Depend on omega.h.
(OBJS-common): Depend on omega.o.
(omega.o): Define.
* passes.c (pass_check_data_deps): Scheduled.
* params.def (PARAM_OMEGA_MAX_VARS, PARAM_OMEGA_MAX_GEQS,
PARAM_OMEGA_MAX_EQS, PARAM_OMEGA_MAX_WILD_CARDS,
PARAM_OMEGA_HASH_TABLE_SIZE, PARAM_OMEGA_MAX_KEYS,
PARAM_VECT_MAX_VERSION_CHECKS,
PARAM_OMEGA_ELIMINATE_REDUNDANT_CONSTRAINTS): New.
From-SVN: r122749
|
|
* doc/tree-ssa.texi: Remove documentation for V_MUST_DEF.
From-SVN: r122710
|
|
without providing -mstack-guard.
2007-03-07 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (override_options): Don't emit an error when
-mstack-size is used without providing -mstack-guard.
(s390_emit_prologue): Choose stack_guard value automatically if not
provided via command line.
* doc/invoke.texi: Adjust description of -mstack-guard and -mstack-size.
From-SVN: r122655
|
|
* doc/install.texi (mips-*-*): Change recommended binutils
version.
From-SVN: r122648
|
|
* errors.h (warning, error, fatal, internal_error): Mark as cold.
* predict.c (maybe_hot_bb): Cold functions are never hot; hot functions
are hot.
(probably_cold_bb_p): Cold functions are cold.
(probably_never_executed_bb_p): Cold functions are cold.
(tree_bb_level_predictions): Predict calls to cold functions as not
taken.
(compute_function_frequency): Check hot/cold attributes.
* function.h (function_frequency): Update comments.
* predict.def (PRED_COLD_FUNCTION): Predict cold function.
* c-common.c (handle_hot_attribute, handle_cold_attribute): New.
(c_common_att): Add cold and hot.
* doc/extend.texi (hot,cold attributes): Document.
* ansidecl.h (ATTRIBUTE_COLD, ATTRIBUTE_HOT): New.
From-SVN: r122632
|
|
constant large models.
* reg-stack.c (reg_to_stack): Large models don't allow NAN to be
loaded for constant large models. Non-large 64bit PIC can do.
* i386.h (CASE_VECTOR_MODE): Large PIC cases are 64bit.
* cmodel.h: Add LARGE PIC.
* i386.md (UNSPEC_PLTOFF): New.
(UNSPEC_SET_RIP, UNSPEC_SET_GOT_OFFSET): New; renumber other unspecs as
needed.
(*call_1_rex64): Disable for large models.
(*call_1_rex64_large): New.
(*call_value_1_rex64): Disable for large models.
(*call_value_1_rex64_large): New.
(set_rip_rex4): New.
(set_got_offset_rex64): New.
* predicates.md (constant_call_address_operand): For large model
constant calls are not possible.
* i386-protos.h (construct_plt_address): Declare.
* i386.c (override_options): Accept large models.
(ix86_expand_prologue): Expand large PIC GOT pointer load.
(legitimate_constant_p): Add new UNSPECs.
(legitimate_pic_operand_p): Likewise.
(legitimate_pic_address_disp_p): Disallow local symbols for large PICs.
(legitimize_pic_address): Do easy RIP relative way for TLS only for
non-large model.
(output_pic_addr_const): Add PLTOFF.
(ix86_output_addr_diff_elt): Output 64bit tables when needed.
(ix86_expand_move): Legitimize pic address when in PIC mode.
(construct_plt_address): New function.
(ix86_expand_call): Offload the address to register and use GOT pointer
for large model.
* invoke.texi (mcmodel=large): Update documentation.
From-SVN: r122623
|
|
</test/gnu/gcc/objdir/prev-gcc/../gcc/./include>)
fixincludes:
* mkheaders.in: Fix headers for each multilib required.
gcc:
PR bootstrap/31020
* configure.ac (CROSS_SYSTEM_HEADER_DIR, build_system_header_dir):
Define using $${sysroot_headers_suffix}.
* configure: Regenerate.
* cppdefault.c (cpp_include_defaults): Make FIXED_INCLUDE_DIR a
multilib-suffixed directory if SYSROOT_HEADERS_SUFFIX_SPEC
defined.
* doc/invoke.texi (-print-sysroot-headers-suffix): Document.
* gcc.c (print_sysroot_headers_suffix): New.
(option_map): Include --print-sysroot-headers-suffix.
(display_help): Mention -print-sysroot-headers-suffix.
(process_command): Handle -print-sysroot-headers-suffix.
(do_spec_1): Append multilib directory to include-fixed path if
sysroot suffixes in use.
(main): Handle -print-sysroot-headers-suffix.
* Makefile.in (start.encap): Don't depend on xlimits.h
(xlimits.h): Remove.
(stmp-int-hdrs): Don't depend on xlimits.h. Inline generation of
limits.h for each multilib in fixinc_list.
(fixinc_list, s-fixinc_list): New.
(stmp-fixinc): Depend on fixinc_list. If not copying headers,
generate them for each multilib in fixinc_list.
(stmp-fixproto): Use include-fixed. Run fixproto for each
multilib in fixinc_list.
(mostlyclean): Don't remove xlimits.h.
(clean): Remove include-fixed.
(real-install-headers-tar, real-install-headers-cpio,
real-install-headers-cp): Don't copy include, only include-fixed.
(install-mkheaders): Depend on fixinc_list. Don't depend on
xlimits.h. Save limits.h files for each multilib in fixinc_list.
Always save mkinstalldirs. Preserve ${sysroot_headers_suffix} in
SYSTEM_HEADER_DIR setting in mkheaders.conf.
From-SVN: r122620
|
|
* c-common.c (targetcm): Add.
* c-opts.c (c_common_handle_option): Handle language specific
target options.
* opts.c (handle_option): Verify language for target options, if
any are given.
* opth-gen.awk: Add CL_LANG_ALL.
* target-def.h (TARGET_HANDLE_C_OPTION): Add.
(TARGETCM_INITIALIZER): Add.
* target.h (struct gcc_targetcm): Add.
(targetcm): Add.
* targhooks.c (default_handle_c_option): Add.
* targhooks.h (default_handle_c_option): Add.
* doc/tm.texi (TARGET_HANDLE_C_OPTION): Add.
* config/darwin.opt (iframework): Add.
* config/darwin.h (TARGET_HAS_TARGETCM): Add.
* config/darwin-c.c (handle_c_option): Add.
(TARGET_HANDLE_C_OPTION): Add.
(targetcm): Add.
* doc/invoke.texi (Darwin Options): Add -iframework.
From-SVN: r122590
|
|
* c.opt (fgnu89-inline): New option.
* c-opts.c (c_common_post_options): Set default value for
flag_gnu89_inline.
* c-decl.c (WANT_C99_INLINE_SEMANTICS): Remove.
(pop_scope): Check flag_gnu89_inline rather than flag_isoc99 for
inline functions.
(diagnose_mismatched_decls, merge_decls, start_decl): Likewise.
(grokdeclarator, start_function): Likewise.
* c-cppbuiltin.c (c_cpp_builtins): Define either
__GNUC_GNU_INLINE__ or __GNUC_STDC_INLINE__.
* doc/invoke.texi (Option Summary): Mention -fgnu89-inline.
(C Dialect Options): Document -fgnu89-inline.
* doc/extend.texi (Function Attributes): Explain what the
gnu_inline attribute does.
* doc/cpp.texi (Common Predefined Macros): Document
__GNUC_GNU_INLINE__ and __GNUC_STDC_INLINE__.
From-SVN: r122565
|
|
* target.h (init_dwarf_reg_sizes_extra): New target hook.
* target-def.h (TARGET_INIT_DWARF_REG_SIZES_EXTRA): New default.
* doc/tm.texi (TARGET_INIT_DWARF_REG_SIZES_EXTRA): Document.
* dwarf2out.c (expand_builtin_init_dwarf_reg_sizes): Call this
hook.
* config/rs6000/rs6000.c (TARGET_INIT_DWARF_REG_SIZES_EXTRA,
rs6000_init_dwarf_reg_sizes_extra): New.
* config/rs6000/linux-unwind.h (ppc_fallback_frame_state): Support
SPE register high parts.
testsuite:
* gcc.target/powerpc/spe-unwind-1.c, g++.dg/eh/simd-5.C: New
tests.
From-SVN: r122468
|
|
gcc/ChangeLog ---------------------------------------------------------
* doc/include/gcc-common.texi (versionsubtitle): New macro.
* doc/cpp.texi: Standardize title page.
* doc/cppinternals.texi: Likewise.
* doc/gcc.texi: Standardize title page, remove version number
from copyright page.
* doc/gccint.texi: Likewise.
* doc/install.texi: Standardize title page, add table of
contents.
ada/ChangeLog ---------------------------------------------------------
* gnat-style.texi: Standardize title page.
* gnat_rm.texi: Likewise.
* gnat_ugn.texi: Likewise.
fortran/ChangeLog -----------------------------------------------------
* gfortran.texi: Standardize title page, remove version number
from copyright page.
treelang/ChangeLog ----------------------------------------------------
* treelang.texi: Standardize title page, remove version number
from copyright page.
From-SVN: r122358
|
|
destructors.
* doc/extend.texi: Document optional priority argument to
constructors and destructors.
* tree.c (init_priority_for_decl): Adjust GTY markers.
(init_ttree): Use priority-info hash functions for
init_priority_for_decl.
(tree_map_eq): Rename to ...
(tree_map_base_eq): ... this.
(tree_map_marked_p): Rename to ...
(tree_map_base_marked_p): ... this.
(tree_map_base_hash): New function.
(decl_init_priority_lookup): Rework.
(decl_fini_priority_lookup): New function.
(decl_priority_info): New function.
(decl_init_priority_insert): Use it.
(decl_fini_priority_insert): Likewise.
(decl_restrict_base_lookup): Adjust for refactoring of tree_map
hierarchy.
(decl_restrict_base_insert): Likewise.
(decl_debug_expr_insert): Likewise.
(decl_value_expr_lookup): Likewise.
(decl_value_expr_insert): Likewise.
* tree.h (priority_type): New type.
(decl_init_priority_lookup): Use priority_type.
(decl_fini_priority_lookup): New function.
(decl_init_priority_insert): Use priority_type.
(decl_fini_priority_insert): New function.
(DECL_HAS_INIT_PRIORITY): Tweak comments.
(DECL_INIT_PRIORITY): Likewise.
(SET_DECL_INIT_PRIORITY): Add comment.
(DECL_FINI_PRIORITY): New macro.
(SET_DECL_FINI_PRIORITY): Likewise.
(DEFAULT_INIT_PRIORITY): Document.
(MAX_INIT_PRIORITY): Likewise.
(MAX_RESERVED_INIT_PRIORITY): Likewise.
(tree_map_base): New type.
(tree_map_base_eq): New function.
(tree_map_base_hash): Likewise.
(tree_map_base_marked_p): Likewise.
(tree_map): Inherit from tree_map_base.
(tree_map_eq): Make it a macro.
(tree_map_marked_p): Likewise.
(tree_int_map): Inherit from tree_map_base.
(tree_int_map_eq): Make it a macro.
(tree_int_map_hash): Likewise.
(tree_int_map_marked_p): Likewise.
(tree_priority_map): New type.
(tree_priority_map_eq): New macro.
(tree_priority_map_hash): Likewise.
(tree_priority_map_marked_p): Likewise.
* varasm.c (emults_decl): Adjust for refactoring of tree_map
hierarchy.
(emutls_common_1): Likewise.
* lambda-code.c (replace_uses_equiv_to_x_with_y): Likewise.
* tree-ssa-structalias.c (heapvar_lookup): Adjust for refactoring
of tree_map hierarchy.
* tree-cfg.c (move_stmt_r): Likewise.
(new_label_mapper): Likewise.
* c-tree.h (c_expand_body): Move to ...
* c-common.h (c_expand_body): ... here.
* c-decl.c (c_expand_body): Move to ...
* c-common.c (c_expand_body): ... here.
(c_common_attribute_table): Allow 1 argument for the constructor
and destructor attributes.
(get_priority): New function.
(handle_constructor_attribute): Set DECL_INIT_PRIORITY.
(handle_destructor_attribute): Set DECL_FINI_PRIORITY.
* cp-tree.h (static_ctors): Remove.
* cp-tree.h (static_dtors): Likewise.
* cp-objcp-common.c (decl_shadowed_for_var_lookup): Adjust for
refactoring of tree_map hierarchy.
(decl_shadowed_for_var_insert): Likewise.
* semantics.c (expand_body): Use c_expand_body.
(expand_or_defer_fn): Don't update static_ctors or static_dtors.
* decl2.c (static_ctors): Remove.
(static_dtors): Likewise.
(generate_ctor_or_dtor_function): Pass NULL_TREE to
objc_generate_static_init_call. Do not call static_[cd]tors.
(generate_ctor_and_dtor_functions_for_priority): Do not check for
static_[cd]tors.
(cp_write_global_declarations): Likewise.
* decl.c (annotate_value): Adjust for refactoring of tree_map
hierarchy.
* gcc.dg/initpri1.c: New test.
* gcc.dg/initpri2.c: Likewise.
* g++.dg/special/initpri1.C: New test.
* g++.dg/special/initpri2.C: Likewise.
* g++.dg/special/conpr-1.C: Use init_priority effective target.
* g++.dg/special/conpr-2.C: Likewise.
* g++.dg/special/conpr-3.C: Likewise.
* g++.dg/special/conpr-4.C: Likewise.
* g++.dg/special/initp1.C: Likewise.
* g++.dg/special/ecos.exp: Remove code to detect availability of
constructor priorities.
* lib/target-support.exp (target_init_priority): New function.
From-SVN: r122315
|
|
From-SVN: r122285
|