- 28 Jun, 2005 20 commits
-
-
dj authored
(diagnose_mismatched_decls): Likewise. (pushdecl): Likewise. (start_decl): Likewise. (grokparms): Likewise. (start_function): Likewise. (store_parm_decls_newstyle): Likewise. (store_parm_decls_oldstyle): Likewise. (finish_function): Likewise. (declspecs_add_scspec): Likewise. * c-format.c (decode_format_attr): Likewise. (maybe_read_dollar_number): Likewise. (avoid_dollar_number): Likewise. (finish_dollar_format_checking): Likewise. (check_format_info): Likewise. (check_format_info_main): Likewise. (check_format_types): Likewise. (format_type_warning): Likewise. * c-typeck.c (function_types_compatible_p): Likewise. (build_array_ref): Likewise. (convert_arguments): Likewise. (build_c_cast): Likewise. (store_init_value): Likewise. (process_init_element): Likewise. (c_start_case): Likewise. * stor-layout.c (finalize_record_size): Likewise. * tree-cfg.c (execute_warn_function_noreturn): Likewise. * tree-inline.c (expand_call_inline): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101384 138bc75d-0d04-0410-961f-82ee72b054a4
-
rth authored
* config/i386/i386.md (fist<mode>2_with_temp splitter): Clobber memory operand, not scratch register. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101383 138bc75d-0d04-0410-961f-82ee72b054a4
-
aph authored
PR java/22189 * gnu/gcj/runtime/PersistentByteMap.java (init): Fix rounding error. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101382 138bc75d-0d04-0410-961f-82ee72b054a4
-
uweigand authored
* config/s390/s390.c (machine_function): New field has_landing_pad_p. (s390_set_has_landing_pad_p, s390_reg_clobbered_rtx, s390_regs_ever_clobbered): New functions. (s390_return_addr_rtx): Use get_hard_reg_initial_value. (s390_register_info, s390_init_frame_layout, s390_update_frame_layout): Use s390_regs_ever_clobbered. (s390_emit_prologue): Don't use r14 as temp reg if its content is used for builtin_return_address. * config/s390/s390.md ("exception_receiver"): New expander. * config/s390/s390-protos.h (s390_set_has_landing_pad_p): Prototype added. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101381 138bc75d-0d04-0410-961f-82ee72b054a4
-
uweigand authored
* except.c (current_function_has_exception_handlers): Function description added and if statements merged. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101380 138bc75d-0d04-0410-961f-82ee72b054a4
-
fxcoudert authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101379 138bc75d-0d04-0410-961f-82ee72b054a4
-
fxcoudert authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101378 138bc75d-0d04-0410-961f-82ee72b054a4
-
fxcoudert authored
* io/transfer.c (formatted_transfer): Do not iterate on the repeat count of a FMT_SLASH, since this is already done in next_format(). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101377 138bc75d-0d04-0410-961f-82ee72b054a4
-
rth authored
(sminv16qi3, umaxv8hi3, uminv8hi3): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101376 138bc75d-0d04-0410-961f-82ee72b054a4
-
rth authored
comparison operations. (ia64_expand_vecint_minmax): Fix size of xops. * config/ia64/vect.md (umax<VECINT>3): Fix fallback pattern typo. (vec_shl_<VECINT>, vec_shr_<VECINT>): New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101375 138bc75d-0d04-0410-961f-82ee72b054a4
-
rth authored
type for DEF and INIT_VAL. Pretend MIN/MAX need epilogue adjustment. * gcc.dg/vect/vect-reduc-1.c: Adjust test to properly validate MIN. * gcc.dg/vect/vect-reduc-1char.c: Likewise. * gcc.dg/vect/vect-reduc-1short.c: Likewise. * gcc.dg/vect/vect-reduc-2.c: Likewise. * gcc.dg/vect/vect-reduc-2char.c: Likewise. * gcc.dg/vect/vect-reduc-2short.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101374 138bc75d-0d04-0410-961f-82ee72b054a4
-
rth authored
(smaxv16qi3, umaxv8hi3, sminv16qi3, uminv8hi3): New. * gcc.dg/vect/vect-reduc-1short.c: Remove XFAIL. * gcc.dg/vect/vect-reduc-2char.c: Remove XFAIL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101373 138bc75d-0d04-0410-961f-82ee72b054a4
-
rth authored
duplicate little-endian adjustment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101372 138bc75d-0d04-0410-961f-82ee72b054a4
-
kcook authored
* doc/include/texinfo.tex: Import from upstream CVS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101370 138bc75d-0d04-0410-961f-82ee72b054a4
-
hubicka authored
* cgraph.c (cgraph_remove_node): Do not release function bodies until full cgraph is built. * cgraph.h (cgraph_decide_inlining_incrementally): Add early argument. * cgraphunit.c (cgraph_finalize_function): Update call of cgraph_decide_inlining_incrementally. (initialize_inline_failed): Break out of ... (cgraph_analyze_function): ... here. (rebuild_cgraph_edges): New function. (pass_rebuild_cgraph_edges): New pass. * common.opt (fearly-inlining): New flag. * ipa-inline.c: Include ggc.h (cgraph_clone_inlined_nodes): Avoid re-using of original copy when cgraph is not fully built. (cgraph_decide_inlining_incrementally): Add early mode. (cgraph_early_inlining): New function. (cgraph_gate_early_inlining): Likewise. (pass_early_ipa_inline): New pass. * ipa.c (cgraph_postorder): NULLify aux pointer. * tree-inline.c (expand_call_inline): Avoid warning early. * tree-optimize.c (pass_early_local_passes): New. (execute_cleanup_cfg_pre_ipa): New. (pass_cleanup_cfg): New. (register_dump_files): Fix handling subpasses of IPA pass. (init_tree_optimization_passes): Add early passes. (execute_ipa_pass_list): Fix handling of subpasses of IPA pass. * passes.h (pass_early_tree_profile, pass_rebuild_cgraph_edges, pass_early_ipa_inline): New passes. * tree-profile.c (do_early_tree_profiling, pass_early_tree_profile): New. * invoke.texi: Document early-inlining. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101369 138bc75d-0d04-0410-961f-82ee72b054a4
-
zlaski authored
2005-06-27 Ziemowit Laski <zlaski@apple.com> * objc-act.c (objc_build_struct): Save the TYPE_OBJC_INFO portion of TYPE_LANG_SPECIFIC info for all variants of a class before calling finish_struct(), and restore same TYPE_OBJC_INFO afterwards. [gcc/testsuite/ChangeLog] 2005-06-27 Ziemowit Laski <zlaski@apple.com> * obj-c++.dg/proto-lossage-5.mm: New. * objc.dg/proto-lossage-5.m: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101368 138bc75d-0d04-0410-961f-82ee72b054a4
-
kcook authored
* doc/include/fdl.texi: Merge in changes from upstream. * doc/include/gpl.texi: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101367 138bc75d-0d04-0410-961f-82ee72b054a4
-
kcook authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101366 138bc75d-0d04-0410-961f-82ee72b054a4
-
dnovillo authored
PR 21959 * tree-ssa-loop-niter.c (scev_probably_wraps_p): Handle type casts between unsigned and signed types with different size or precision. testsuite/ChangeLog PR 21959 * gcc.dg/tree-ssa/pr21959.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101365 138bc75d-0d04-0410-961f-82ee72b054a4
-
gccadmin authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101362 138bc75d-0d04-0410-961f-82ee72b054a4
-
- 27 Jun, 2005 17 commits
-
-
hubicka authored
* tree-optimize.c (exercute_free_datastructures): Do not disband implicit edges; do not attempt to build insn list; do not free cfg annotations. (execute_free_cfg_annotations); Disband implicit edges here; free cfg annotations here too. (pass_free_cfg_annotations); New pass. (init_tree_optimization_passes); Add pass_free_cfg_annotations. * tree-ssa-operands.c (free_ssa_operands); Recover; export. * tree-ssa-operands.h (free_ssa_operands); declare. * tree-ssa.c (delete_tree_ssa); Free SSA operand; mark stmt modified; kill PHI nodes. * tree-ssanames.c (release_defs): Kill addresses_taken. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101360 138bc75d-0d04-0410-961f-82ee72b054a4
-
hubicka authored
* basic-block.h (basic_block_def): Kill rbi. (reorder_block_def): Kill; Remove next field (replaced by aux); move other fields to ... (rtl_bb_info): ... here. * bb-reorder.c (find_traces, rotate_loop, find_traces_1_round, copy_bb, connect_traces, add_labels_and_missing_jumps fix_up_fall_thru_edges, fix_crossing_conditional_branches, duplicate_computed_gotos, partition_hot_cold_basic-blocks): Update to new fields. * cfg.c (initialize_bb_rbi): Kill. * cfglayout.c (record_effective_endpoints, fixup_reorder_chain, fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update. * cfgrtl.c (cfg_layout_create_basic_block): Do not initialize rbi. (try_redirect_by_replacing_jump): Update rbi references. (cfg_layout_split_block): Likewise. (cfg_layout_delete_block): Likewise. (cfg_layout_merge_blocks): Likewise. * function.c (thread_prologue_and_epilogue_insns): Likewise. * passes.c (rest_of_handle_sms): Likewise. * tracer.c (seen, tail_duplicate, layout_superblocks): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101359 138bc75d-0d04-0410-961f-82ee72b054a4
-
tromey authored
PR java/21540, PR java/13788: * parse.y (java_complete_lhs) <CASE_EXPR>: Use fold_constant_for_init. (patch_binop): Added 'folding' argument. Updated all callers. (patch_unaryop) <NOP_EXPR>: New case. (fold_constant_for_init) <NOP_EXPR>: Likewise. (fold_constant_for_init) <COND_EXPR>: Fix sense of test. libjava/: PR java/21540, PR java/13788: * testsuite/libjava.compile/pr21540.java: New file. * testsuite/libjava.compile/pr13788.java: New file. * testsuite/libjava.jacks/jacks.xfail: Updated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101358 138bc75d-0d04-0410-961f-82ee72b054a4
-
kseitz authored
* gnu/classpath/jdwp/exception/VmDeadException.java: New file. * gnu/classpath/jdwp/exception/NotImplementedException.java: New file. * gnu/classpath/jdwp/exception/JdwpInternalErrorException.java: New file. * gnu/classpath/jdwp/exception/JdwpException.java: New file. * gnu/classpath/jdwp/exception/InvalidThreadGroupException.java: New file. * gnu/classpath/jdwp/exception/InvalidThreadException.java: New file. * gnu/classpath/jdwp/exception/InvalidStringException.java: New file * gnu/classpath/jdwp/exception/InvalidObjectException.java: New file. * gnu/classpath/jdwp/exception/InvalidEventTypeException.java: New file. * gnu/classpath/jdwp/exception/InvalidCountException.java: New file. * gnu/classpath/jdwp/exception/InvalidClassException.java: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101357 138bc75d-0d04-0410-961f-82ee72b054a4
-
dje authored
in verbose_asm output. * config/rs6000/rs6000.h (PPC405_ERRATUM77): Bracket with CONFIG_PPC405CR. * config.gcc (powerpc with_which): Define CONFIG_PPC405CR for 405cr. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101356 138bc75d-0d04-0410-961f-82ee72b054a4
-
paolo authored
PR libstdc++/22102 * include/bits/stl_tree.h (insert_unique(iterator, const _Val&), insert_equal((iterator, const _Val&)): Reimplement to check both before and after, as per the algorithm "ignore hint if wrong" of ISO paper N1780. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101355 138bc75d-0d04-0410-961f-82ee72b054a4
-
bkoz authored
2005-06-27 Benjamin Kosnik <bkoz@redhat.com> Ami Tavory <pbassoc@gmail.com> * docs/html/documentation.html: Add link for policy based associative containers docs. * docs/html/ext/pb_assoc/Std_hash_set_impl.jpg: New. * docs/html/ext/pb_assoc/acks.html: New. * docs/html/ext/pb_assoc/balls_and_bins.jpg: New. * docs/html/ext/pb_assoc/basic_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/basic_assoc_cntnr_compound_data.html: New. * docs/html/ext/pb_assoc/basic_assoc_cntnr_no_data.html: New. * docs/html/ext/pb_assoc/basic_ds_tag.html: New. * docs/html/ext/pb_assoc/basic_hash_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/basic_hash_ds_tag.html: New. * docs/html/ext/pb_assoc/basic_invalidation_guarantee.html: New. * docs/html/ext/pb_assoc/basic_ms_tag.html: New. * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/ basic_tree_assoc_cntnr_const_node_iterator.html: New. * docs/html/ext/pb_assoc/ basic_tree_assoc_cntnr_node_iterator.html: New. * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev.html: New. * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev_it.html: New. * docs/html/ext/pb_assoc/basic_tree_ds_tag.html: New. * docs/html/ext/pb_assoc/cc_hash_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/cc_hash_ds_tag.html: New. * docs/html/ext/pb_assoc/ cc_hash_max_collision_check_resize_trigger.html: New. * docs/html/ext/pb_assoc/cc_hash_policy_cd.jpg: New. * docs/html/ext/pb_assoc/cd.jpg: New. * docs/html/ext/pb_assoc/component_requirements.html: New. * docs/html/ext/pb_assoc/compound_data_enabled_ms_tag.html: New. * docs/html/ext/pb_assoc/compound_data_type.html: New. * docs/html/ext/pb_assoc/compound_ds_tag.html: New. * docs/html/ext/pb_assoc/concepts.html: New. * docs/html/ext/pb_assoc/contact.html: New. * docs/html/ext/pb_assoc/counter_update_metadata.html: New. * docs/html/ext/pb_assoc/counter_update_policy.html: New. * docs/html/ext/pb_assoc/data_enabled_ms_tag.html: New. * docs/html/ext/pb_assoc/design.html: New. * docs/html/ext/pb_assoc/different_underlying_dss.jpg: New. * docs/html/ext/pb_assoc/direct_mask_range_hashing.html: New. * docs/html/ext/pb_assoc/direct_mod_range_hashing.html: New. * docs/html/ext/pb_assoc/disclaimer.html: New. * docs/html/ext/pb_assoc/ds_gen.html: New. * docs/html/ext/pb_assoc/ds_tag_cd.jpg: New. * docs/html/ext/pb_assoc/ds_traits.html: New. * docs/html/ext/pb_assoc/embedded_lists_1.jpg: New. * docs/html/ext/pb_assoc/embedded_lists_2.jpg: New. * docs/html/ext/pb_assoc/examples.html: New. * docs/html/ext/pb_assoc/exception_guarantees_specifics.html: New. * docs/html/ext/pb_assoc/find_invalidation_guarantee.html: New. * docs/html/ext/pb_assoc/find_iterators_cd.jpg: New. * docs/html/ext/pb_assoc/find_iterators_range_ops_1.jpg: New. * docs/html/ext/pb_assoc/find_iterators_range_ops_2.jpg: New. * docs/html/ext/pb_assoc/generics.html: New. * docs/html/ext/pb_assoc/gp_hash_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/gp_hash_ds_tag.html: New. * docs/html/ext/pb_assoc/gp_hash_policy_cd.jpg: New. * docs/html/ext/pb_assoc/hash_and_probe_general.html: New. * docs/html/ext/pb_assoc/hash_based_containers.html: New. * docs/html/ext/pb_assoc/hash_cd.jpg: New. * docs/html/ext/pb_assoc/hash_exponential_size_policy.html: New. * docs/html/ext/pb_assoc/hash_fn.html: New. * docs/html/ext/pb_assoc/hash_load_check_resize_trigger.html: New. * docs/html/ext/pb_assoc/hash_policies.html: New. * docs/html/ext/pb_assoc/hash_policy_cd.jpg: New. * docs/html/ext/pb_assoc/hash_prime_size_policy.html: New. * docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram.jpg: New. * docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram2.jpg: New. * docs/html/ext/pb_assoc/hash_ranged_hash_range_hashing_fns.jpg: New. * docs/html/ext/pb_assoc/hash_standard_resize_policy.html: New. * docs/html/ext/pb_assoc/home.html: New. * docs/html/ext/pb_assoc/index.html: New. * docs/html/ext/pb_assoc/insert_resize_sequence_diagram1.jpg: New. * docs/html/ext/pb_assoc/insert_resize_sequence_diagram2.jpg: New. * docs/html/ext/pb_assoc/insert_resize_sequence_diagram3.jpg: New. * docs/html/ext/pb_assoc/insert_type_methods.html: New. * docs/html/ext/pb_assoc/interface.html: New. * docs/html/ext/pb_assoc/interval_node_invariants.jpg: New. * docs/html/ext/pb_assoc/introduction.html: New. * docs/html/ext/pb_assoc/invalidation_guarantee_cd.jpg: New. * docs/html/ext/pb_assoc/invalidation_guarantee_erase.jpg: New. * docs/html/ext/pb_assoc/lib_download.html: New. * docs/html/ext/pb_assoc/linear_probe_fn.html: New. * docs/html/ext/pb_assoc/list_updates.html: New. * docs/html/ext/pb_assoc/lu_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/lu_based_containers.html: New. * docs/html/ext/pb_assoc/lu_cd.jpg: New. * docs/html/ext/pb_assoc/lu_ds_tag.html: New. * docs/html/ext/pb_assoc/lu_ops.jpg: New. * docs/html/ext/pb_assoc/mmap_value_utils.html: New. * docs/html/ext/pb_assoc/motivation.html: New. * docs/html/ext/pb_assoc/move_to_front_update_metadata.html: New. * docs/html/ext/pb_assoc/move_to_front_update_policy.html: New. * docs/html/ext/pb_assoc/ms_cd.jpg: New. * docs/html/ext/pb_assoc/ms_gen.html: New. * docs/html/ext/pb_assoc/ms_tag_cd.jpg: New. * docs/html/ext/pb_assoc/ms_traits.html: New. * docs/html/ext/pb_assoc/node_invariant_invalidations.jpg: New. * docs/html/ext/pb_assoc/node_invariants.html: New. * docs/html/ext/pb_assoc/node_invariants.jpg: New. * docs/html/ext/pb_assoc/non_unique_mapping.html: New. * docs/html/ext/pb_assoc/non_unique_mapping_containers.jpg: New. * docs/html/ext/pb_assoc/null_data_type.html: New. * docs/html/ext/pb_assoc/null_hash_fn.html: New. * docs/html/ext/pb_assoc/null_probe_fn.html: New. * docs/html/ext/pb_assoc/order_by_key.html: New. * docs/html/ext/pb_assoc/order_statistics_key.html: New. * docs/html/ext/pb_assoc/order_statistics_key_cmp.html: New. * docs/html/ext/pb_assoc/order_statistics_node_updator.html: New. * docs/html/ext/pb_assoc/ov_tree_ds_tag.html: New. * docs/html/ext/pb_assoc/overview.html: New. * docs/html/ext/pb_assoc/pb_assoc_ex.html: New. * docs/html/ext/pb_assoc/portability.html: New. * docs/html/ext/pb_assoc/quadratic_probe_fn.html: New. * docs/html/ext/pb_assoc/range_invalidation_guarantee.html: New. * docs/html/ext/pb_assoc/rank_node_invariants.jpg: New. * docs/html/ext/pb_assoc/rationale_null_node_updator.jpg: New. * docs/html/ext/pb_assoc/rb_tree_ds_tag.html: New. * docs/html/ext/pb_assoc/reference_iterator.jpg: New. * docs/html/ext/pb_assoc/references.html: New. * docs/html/ext/pb_assoc/regression_tests.html: New. * docs/html/ext/pb_assoc/resize_general.html: New. * docs/html/ext/pb_assoc/resize_policies.html: New. * docs/html/ext/pb_assoc/resize_policy_cd.jpg: New. * docs/html/ext/pb_assoc/restoring_node_invariants.jpg: New. * docs/html/ext/pb_assoc/sample_node_updator.hpp: New. * docs/html/ext/pb_assoc/sample_probe_fn.hpp: New. * docs/html/ext/pb_assoc/sample_probe_fn.html: New. * docs/html/ext/pb_assoc/sample_range_hashing.hpp: New. * docs/html/ext/pb_assoc/sample_range_hashing.html: New. * docs/html/ext/pb_assoc/sample_ranged_hash_fn.hpp: New. * docs/html/ext/pb_assoc/sample_ranged_hash_fn.html: New. * docs/html/ext/pb_assoc/sample_ranged_probe_fn.hpp: New. * docs/html/ext/pb_assoc/sample_ranged_probe_fn.html: New. * docs/html/ext/pb_assoc/sample_resize_policy.hpp: New. * docs/html/ext/pb_assoc/sample_resize_policy.html: New. * docs/html/ext/pb_assoc/sample_resize_trigger.hpp: New. * docs/html/ext/pb_assoc/sample_size_policy.hpp: New. * docs/html/ext/pb_assoc/sample_update_policy.hpp: New. * docs/html/ext/pb_assoc/size_policies_general.html: New. * docs/html/ext/pb_assoc/splay_tree_ds_tag.html: New. * docs/html/ext/pb_assoc/timing_tests.html: New. * docs/html/ext/pb_assoc/toc.html: New. * docs/html/ext/pb_assoc/tree_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/ tree_assoc_cntnr_const_node_iterator.html: New. * docs/html/ext/pb_assoc/tree_assoc_cntnr_node_iterator.html: New. * docs/html/ext/pb_assoc/tree_based_containers.html: New. * docs/html/ext/pb_assoc/tree_cd.jpg: New. * docs/html/ext/pb_assoc/trigger_policies_general.html: New. * docs/html/ext/pb_assoc/tutorial.html: New. * docs/html/ext/pb_assoc/update_seq_diagram.jpg: New. * include/Makefile.am: Add assoc_srcdir, assoc_builddir, assoc_subdir, assoc_headers. * include/Makefile.in: Regenerate. * include/ext/typelist.h: New. * include/ext/pb_assoc/assoc_cntnr.hpp: New. * include/ext/pb_assoc/data_type.hpp: New. * include/ext/pb_assoc/ds_trait.hpp: New. * include/ext/pb_assoc/exception.hpp: New. * include/ext/pb_assoc/hash_policy.hpp: New. * include/ext/pb_assoc/lu_policy.hpp: New. * include/ext/pb_assoc/ms_trait.hpp: New. * include/ext/pb_assoc/tree_policy.hpp: New. * include/ext/pb_assoc/trivial_iterator_def.hpp: New. * include/ext/pb_assoc/detail/assoc_cntnr_base.hpp: New. * include/ext/pb_assoc/detail/cond_dealtor.hpp: New. * include/ext/pb_assoc/detail/constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ds_trait_imp.hpp: New. * include/ext/pb_assoc/detail/hash_types_traits.hpp: New. * include/ext/pb_assoc/detail/map_debug_base.hpp: New. * include/ext/pb_assoc/detail/mapping_level_imp.hpp: New. * include/ext/pb_assoc/detail/ms_category_imp.hpp: New. * include/ext/pb_assoc/detail/ms_trait_imp.hpp: New. * include/ext/pb_assoc/detail/order_statistics_imp.hpp: New. * include/ext/pb_assoc/detail/standard_policies.hpp: New. * include/ext/pb_assoc/detail/standard_sizes.hpp: New. * include/ext/pb_assoc/detail/type_utils.hpp: New. * include/ext/pb_assoc/detail/typelist.hpp: New. * include/ext/pb_assoc/detail/types_traits.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/d_extract_key.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ d_find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ d_insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/extract_key.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ iterators_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/ resize_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ node_iteration_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ policy_access_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ r_erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ r_range_iteration_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ range_iteration_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ split_join_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ bin_search_tree_.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ cond_dtor_entry_dealtor.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ cond_key_dtor_entry_dealtor.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/find_iterators.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ iterators_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/node_iterators.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ r_erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/rotate_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ split_join_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_hash_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/cc_ht_map_.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/cmp_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ cond_key_dtor_entry_dealtor.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ constructor_destructor_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ constructor_destructor_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ debug_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ debug_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/entry_list_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ erase_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ erase_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ find_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ find_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ insert_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ insert_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/iterators_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ policy_access_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/resize_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ resize_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ resize_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/size_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/standard_policies.hpp: New. * include/ext/pb_assoc/detail/eq_fn/eq_by_less.hpp: New. * include/ext/pb_assoc/detail/eq_fn/hash_eq_fn.hpp: New. * include/ext/pb_assoc/detail/gp_hash_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ constructor_destructor_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ constructor_destructor_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ debug_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ debug_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ erase_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ erase_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ find_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ find_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/gp_ht_map_.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ insert_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ insert_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/iterator_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ policy_access_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/resize_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ resize_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ resize_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/hash_fn/ direct_mask_range_hashing_imp.hpp: New. * include/ext/pb_assoc/detail/hash_fn/ direct_mod_range_hashing_imp.hpp: New. * include/ext/pb_assoc/detail/hash_fn/linear_probe_fn_imp.hpp: New. * include/ext/pb_assoc/detail/hash_fn/ mask_based_range_hashing.hpp: New. * include/ext/pb_assoc/detail/hash_fn/mod_based_range_hashing.hpp: New. * include/ext/pb_assoc/detail/hash_fn/probe_fn_base.hpp: New. * include/ext/pb_assoc/detail/hash_fn/quadratic_probe_fn_imp.hpp: New. * include/ext/pb_assoc/detail/hash_fn/ranged_hash_fn.hpp: New. * include/ext/pb_assoc/detail/hash_fn/ranged_probe_fn.hpp: New. * include/ext/pb_assoc/detail/lu_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_assoc_cntnr/ policy_access_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/iterators_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/lu_map_.hpp: New. * include/ext/pb_assoc/detail/lu_map_/policy_access_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_policy/ counter_lu_metadata_imp.hpp: New. * include/ext/pb_assoc/detail/lu_policy/counter_lu_policy_imp.hpp: New. * include/ext/pb_assoc/detail/lu_policy/mtf_lu_policy_imp.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/cond_dtor.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/iterators_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/node_iterators.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/ov_tree_map_.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/split_join_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/node.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/rb_tree_.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/split_join_fn_imps.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ cc_hash_max_collision_resize_trigger_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ hash_exponential_size_policy_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ hash_load_check_resize_trigger_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ hash_prime_size_policy_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ hash_standard_resize_policy_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ ht_prime_size_policy_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/size_base.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/node.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/splay_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/splay_tree_.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/split_join_fn_imps.hpp: New. * include/ext/pb_assoc/detail/tree_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/tree_policy/ null_node_updator_imp.hpp: New. * include/ext/pb_assoc/detail/tree_policy/ order_statistics_imp.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_append.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_apply.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_at_index.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_contains.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_filter.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_transform.hpp: New. * include/ext/pb_assoc/detail/typelist/ typelist_typelist_append.hpp: New. * include/ext/pb_assoc/detail/unordered_iterator/ const_find_iterator.hpp: New. * include/ext/pb_assoc/detail/unordered_iterator/ const_iterator.hpp: New. * include/ext/pb_assoc/detail/unordered_iterator/ find_iterator.hpp: New. * include/ext/pb_assoc/detail/unordered_iterator/iterator.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ constructor_destructor_and_related.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ erase_if_pred.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ invalidation_guarantee_selector.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ it_value_type_traits.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/iterator.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ iterator_fn_imps.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ref_pair.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ value_type_adapter.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ value_type_traits.hpp: New. * testsuite/Makefile.am (CLEANFILES): Add .o, .dat, .cc. * testsuite/Makefile.in: Regenerate. * testsuite/testsuite_common_types.h: New. * testsuite/testsuite_visualization.h: New. * testsuite/ext/pb_assoc/example/basic_map.cc: New. * testsuite/ext/pb_assoc/example/basic_multimap.cc: New. * testsuite/ext/pb_assoc/example/basic_set.cc: New. * testsuite/ext/pb_assoc/example/ds_traits.cc: New. * testsuite/ext/pb_assoc/example/erase_if.cc: New. * testsuite/ext/pb_assoc/example/extract_key.cc: New. * testsuite/ext/pb_assoc/example/hash_find_neg.cc: New. * testsuite/ext/pb_assoc/example/hash_illegal_resize.cc: New. * testsuite/ext/pb_assoc/example/hash_initial_size.cc: New. * testsuite/ext/pb_assoc/example/hash_load_set_change.cc: New. * testsuite/ext/pb_assoc/example/hash_mod.cc: New. * testsuite/ext/pb_assoc/example/hash_resize.cc: New. * testsuite/ext/pb_assoc/example/hash_resize_neg.cc: New. * testsuite/ext/pb_assoc/example/hash_shift_mask.cc: New. * testsuite/ext/pb_assoc/example/mapping_level.cc: New. * testsuite/ext/pb_assoc/example/mapping_level_neg.cc: New. * testsuite/ext/pb_assoc/example/ms_traits.cc: New. * testsuite/ext/pb_assoc/example/ranged_hash.cc: New. * testsuite/ext/pb_assoc/example/store_hash.cc: New. * testsuite/ext/pb_assoc/example/tree_intervals.cc: New. * testsuite/ext/pb_assoc/example/tree_join.cc: New. * testsuite/ext/pb_assoc/example/tree_order_statistics.cc: New. * testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc: New. * testsuite/ext/pb_assoc/example/tree_split.cc: New. * testsuite/performance/20_util/allocator/(insert.cc, insert_insert.cc, list_sort_search.cc, map_mt_find.cc, map_thread.cc, producer_consumer.cc): Recast to use typelists and move to... * testsuite/performance/23_containers/find/map.cc: New. * testsuite/performance/23_containers/index/map.cc: New. * testsuite/performance/23_containers/insert/associative.cc: New. * testsuite/performance/23_containers/insert/sequence.cc: New. * testsuite/performance/23_containers/insert_erase/associative.cc: New. * testsuite/performance/23_containers/producer_consumer/ (associative.cc, sequence.cc): New. * testsuite/performance/23_containers/sort_search/list.cc: New. * testsuite/performance/23_containers/container_benchmark.cc: Remove. * testsuite/performance/23_containers/map_create_fill.cc: Move... * testsuite/performance/23_containers/create/map.cc: ...here. * testsuite/performance/23_containers/set_create_from_sorted.cc: Move. * testsuite/performance/23_containers/create_from_sorted/set.cc: here. * testsuite/performance/23_containers/list_create_fill_sort.cc: Move... * testsuite/performance/23_containers/create_sort/list.cc: ...here. * testsuite/performance/23_containers/set_insert_from_sorted.cc: Move. * testsuite/performance/23_containers/insert_from_sorted/set.cc: here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101354 138bc75d-0d04-0410-961f-82ee72b054a4
-
nathan authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101353 138bc75d-0d04-0410-961f-82ee72b054a4
-
jakub authored
(DEF_LIST_INT_INT): Add for 4,0, 4,5, 5,0, 5,6. (ATTR_NOTHROW_NONNULL_4, ATTR_NOTHROW_NONNULL_5): Define. (ATTR_FORMAT_PRINTF_4_0, ATTR_FORMAT_PRINTF_4_5, ATTR_FORMAT_PRINTF_5_0, ATTR_FORMAT_PRINTF_5_6): Define. * builtins.c: Include tree-flow.h. (expand_builtin_mempcpy, expand_builtin_memmove): Comment fixes. (expand_builtin_object_size, expand_builtin_memory_chk, maybe_emit_chk_warning, maybe_emit_sprintf_chk_warning, compute_object_offset, compute_builtin_object_size, fold_builtin_object_size): New functions. (expand_builtin): Handle BUILT_IN_OBJECT_SIZE and BUILT_IN_*_CHK. (fold_builtin_1): Likewise. Handle BUILT_IN_{,V}{,F}PRINTF and BUILT_IN_{,F}PRINTF_UNLOCKED. (fold_builtin_memory_chk, fold_builtin_stxcpy_chk, fold_builtin_strncpy_chk, fold_builtin_strcat_chk, fold_builtin_strncat_chk, fold_builtin_sprintf_chk, fold_builtin_snprintf_chk, fold_builtin_printf, fold_builtin_fprintf): New functions. * builtins.def (BUILT_IN_OBJECT_SIZE, BUILT_IN_MEMCPY_CHK, BUILT_IN_MEMMOVE_CHK, BUILT_IN_MEMPCPY_CHK, BUILT_IN_MEMSET_CHK, BUILT_IN_STPCPY_CHK, BUILT_IN_STRCAT_CHK, BUILT_IN_STRCPY_CHK, BUILT_IN_STRNCAT_CHK, BUILT_IN_STRNCPY_CHK, BUILT_IN_SNPRINTF_CHK, BUILT_IN_SPRINTF_CHK, BUILT_IN_VSNPRINTF_CHK, BUILT_IN_VSPRINTF_CHK, BUILT_IN_FPRINTF_CHK, BUILT_IN_PRINTF_CHK, BUILT_IN_VFPRINTF_CHK, BUILT_IN_VPRINTF_CHK): New builtins. * builtin-types.def (DEF_FUNCTION_TYPE_5, DEF_FUNCTION_TYPE_VAR_4): Document. (BT_FN_SIZE_CONST_PTR_INT, BT_FN_INT_INT_CONST_STRING_VALIST_ARG, BT_FN_PTR_PTR_CONST_PTR_SIZE_SIZE, BT_FN_PTR_PTR_INT_SIZE_SIZE, BT_FN_STRING_STRING_CONST_STRING_SIZE_SIZE, BT_FN_INT_FILEPTR_INT_CONST_STRING_VALIST_ARG, BT_FN_INT_STRING_INT_SIZE_CONST_STRING_VALIST_ARG, BT_FN_INT_STRING_SIZE_INT_SIZE_CONST_STRING_VALIST_ARG, BT_FN_INT_INT_CONST_STRING_VAR, BT_FN_INT_FILEPTR_INT_CONST_STRING_VAR, BT_FN_INT_STRING_INT_SIZE_CONST_STRING_VAR, BT_FN_INT_STRING_SIZE_INT_SIZE_CONST_STRING_VAR): New types. * c-common.c (DEF_FUNCTION_TYPE_5, DEF_FUNCTION_TYPE_6, DEF_FUNCTION_TYPE_VAR_4, DEF_FUNCTION_TYPE_VAR_5): Define. * Makefile.in (OBJS-common): Add tree-object-size.o. (tree-object-size.o): Add dependencies. * tree-pass.h (pass_object_sizes): Add. * tree-optimize.c (init_tree_optimization_passes): Add pass_object_sizes. * tree-object-size.c: New file. * tree.h (fold_builtin_memory_chk, fold_builtin_stxcpy_chk, fold_builtin_strncpy_chk, fold_builtin_snprintf_chk, compute_builtin_object_size, init_object_sizes, fini_object_sizes): New prototypes. * tree-ssa-ccp.c (get_strlen): Rename to ... (get_maxval_strlen): ...this function. Handle also computing of maximum string length and maximum integral value. (ccp_fold_builtin): Handle BUILT_IN_*_CHK. Use get_maxval_strlen instead of get_strlen. Pass CALLEE and ARGLIST variables to the folding functions instead of computing them again. (execute_fold_all_builtins): Retry ccp_fold_builtin if a builtin changed into some other builtin. * doc/extend.texi (Object Size Checking): Document. * gcc.c-torture/execute/builtins/lib/main.c (abort): Add prototype. * gcc.c-torture/execute/builtins/lib/strncat.c (strncat): Avoid testing uninitialized var. * gcc.c-torture/execute/builtins/chk.h: New. * gcc.c-torture/execute/builtins/lib/chk.c: New. * gcc.c-torture/execute/builtins/memcpy-chk.c: New test. * gcc.c-torture/execute/builtins/memcpy-chk-lib.c: New. * gcc.c-torture/execute/builtins/memmove-chk.c: New test. * gcc.c-torture/execute/builtins/memmove-chk-lib.c: New. * gcc.c-torture/execute/builtins/mempcpy-chk.c: New test. * gcc.c-torture/execute/builtins/mempcpy-chk-lib.c: New. * gcc.c-torture/execute/builtins/memset-chk.c: New test. * gcc.c-torture/execute/builtins/memset-chk-lib.c: New. * gcc.c-torture/execute/builtins/snprintf-chk.c: New test. * gcc.c-torture/execute/builtins/snprintf-chk-lib.c: New. * gcc.c-torture/execute/builtins/sprintf-chk.c: New test. * gcc.c-torture/execute/builtins/sprintf-chk-lib.c: New. * gcc.c-torture/execute/builtins/stpcpy-chk.c: New test. * gcc.c-torture/execute/builtins/stpcpy-chk-lib.c: New. * gcc.c-torture/execute/builtins/strcat-chk.c: New test. * gcc.c-torture/execute/builtins/strcat-chk-lib.c: New. * gcc.c-torture/execute/builtins/strcpy-chk.c: New test. * gcc.c-torture/execute/builtins/strcpy-chk-lib.c: New. * gcc.c-torture/execute/builtins/strncat-chk.c: New test. * gcc.c-torture/execute/builtins/strncat-chk-lib.c: New. * gcc.c-torture/execute/builtins/strncpy-chk.c: New test. * gcc.c-torture/execute/builtins/strncpy-chk-lib.c: New. * gcc.c-torture/execute/builtins/vsnprintf-chk.c: New test. * gcc.c-torture/execute/builtins/vsnprintf-chk-lib.c: New. * gcc.c-torture/execute/builtins/vsprintf-chk.c: New test. * gcc.c-torture/execute/builtins/vsprintf-chk-lib.c: New. * gcc.dg/builtin-object-size-1.c: New test. * gcc.dg/builtin-object-size-2.c: New test. * gcc.dg/builtin-object-size-3.c: New test. * gcc.dg/builtin-object-size-4.c: New test. * gcc.dg/builtin-object-size-5.c: New test. * gcc.dg/builtin-stringop-chk-1.c: New test. * gcc.dg/builtin-stringop-chk-2.c: New test. * gcc.dg/tree-ssa/builtin-fprintf-1.c: New test. * gcc.dg/tree-ssa/builtin-fprintf-chk-1.c: New test. * gcc.dg/tree-ssa/builtin-printf-1.c: New test. * gcc.dg/tree-ssa/builtin-printf-chk-1.c: New test. * gcc.dg/tree-ssa/builtin-vfprintf-1.c: New test. * gcc.dg/tree-ssa/builtin-vfprintf-chk-1.c: New test. * gcc.dg/tree-ssa/builtin-vprintf-1.c: New test. * gcc.dg/tree-ssa/builtin-vprintf-chk-1.c: New test. * gcc.c-torture/execute/printf-1.c: New test. * gcc.c-torture/execute/fprintf-1.c: New test. * gcc.c-torture/execute/vprintf-1.c: New test. * gcc.c-torture/execute/vfprintf-1.c: New test. * gcc.c-torture/execute/printf-chk-1.c: New test. * gcc.c-torture/execute/fprintf-chk-1.c: New test. * gcc.c-torture/execute/vprintf-chk-1.c: New test. * gcc.c-torture/execute/vfprintf-chk-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101352 138bc75d-0d04-0410-961f-82ee72b054a4
-
jakub authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101351 138bc75d-0d04-0410-961f-82ee72b054a4
-
jakub authored
instead of preprocessor conditionals. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101350 138bc75d-0d04-0410-961f-82ee72b054a4
-
jakub authored
default_external_stack_protect_fail if visibility is not supported or not flag_pic. * config/i386/i386.c (ix86_stack_protect_fail): New function. (TARGET_STACK_PROTECT_FAIL): Define. * config/i386/i386.md (stack_protect_si): Change CLOBBER into SET to zero. (stack_protect_di): Likewise. Use %k2 instead of %2 to avoid invalid instruction xorl %rax, %rax. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101349 138bc75d-0d04-0410-961f-82ee72b054a4
-
jakub authored
* cfgexpand.c: Include params.h. (has_protected_decls, has_short_buffer): New. (expand_stack_vars): Take a predicate to determine what to expand. (defer_stack_allocation): True when flag_stack_protect on. (SPCT_HAS_LARGE_CHAR_ARRAY, SPCT_HAS_SMALL_CHAR_ARRAY): New. (SPCT_HAS_ARRAY, SPCT_HAS_AGGREGATE): New. (stack_protect_classify_type, stack_protect_decl_phase): New. (stack_protect_decl_phase_1, stack_protect_decl_phase_2): New. (add_stack_protection_conflicts, create_stack_guard): New. (expand_used_vars): Add stack protection logic. (tree_expand_cfg): Likewise. * common.opt (Wstack-protector): New. (fstack-protector, fstack-protector-all): New. * function.c: Include predict.h. (assign_parm_adjust_stack_rtl): Zap stack_parm when stack protect wants to copy the parameter into the stack frame. (stack_protect_prologue, stack_protect_epilogue): New. (expand_function_end): Call stack_protect_epilogue. Do sjlj_emit_function_exit_after after naked_return_label. * function.h (struct function): Add stack_protect_guard. * params.def (PARAM_SSP_BUFFER_SIZE): New. * toplev.c (process_options): Disable flag_stack_protect and/or warn_stack_protect based on FRAME_GROWS_DOWNWARD. * tree.h (stack_protect_prologue): Declare. * target-def.h (TARGET_STACK_PROTECT_GUARD): New. (TARGET_STACK_PROTECT_FAIL): New. (TARGET_INITIALIZER): Add them. * target.h (struct gcc_target): Add stack_protect_guard and stack_protect_fail. * targhooks.c: Include ggc.h, gty header. (stack_chk_guard_decl, default_stack_protect_guard): New. (stack_chk_fail_decl, default_external_stack_protect_fail): New. (default_hidden_stack_protect_fail): New. * targhooks.h (default_stack_protect_guard): Declare. (default_external_stack_protect_fail): Declare. (default_hidden_stack_protect_fail): Declare. * config/i386/i386.c (TARGET_STACK_PROTECT_FAIL): New. * config/i386/i386.md (UNSPEC_SP_SET, UNSPEC_SP_TEST): New. (trap): Use ud2. (conditional_trap, conditional_trap_1): Remove. (stack_protect_set, stack_protect_set_si, stack_protect_set_di): New. (stack_protect_test, stack_protect_test_si, stack_protect_test_di): New. * doc/md.texi (stack_protect_set, stack_protect_test): New. * doc/tm.texi (TARGET_STACK_PROTECT_GUARD): New. (TARGET_STACK_PROTECT_FAIL): New. * libgcc-std.ver (GCC_4.1.0): New. * libgcc.h (__stack_chk_guard): Declare. (__stack_chk_fail, __stack_chk_fail_local): Declare. * libgcc2.c (L_stack_chk, L_stack_chk_local): New. * mklibgcc.in (lib2funcs): Add them. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101348 138bc75d-0d04-0410-961f-82ee72b054a4
-
matz authored
slot is not merged if address escapes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101347 138bc75d-0d04-0410-961f-82ee72b054a4
-
jvdelisle authored
libgfortran/ChangeLog: Clean up format for entry of 2005-06-24. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101346 138bc75d-0d04-0410-961f-82ee72b054a4
-
jvdelisle authored
* fortran/ChangeLog: Cleaned up changelog from 2005-06-24. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101345 138bc75d-0d04-0410-961f-82ee72b054a4
-
gccadmin authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101343 138bc75d-0d04-0410-961f-82ee72b054a4
-
- 26 Jun, 2005 3 commits
-
-
ghazi authored
* c-common.c (check_function_sentinel): Pass in named argument list, skip over named arguments before looking for a sentinel. (check_function_arguments): Pass in named argument list. * c-common.h (check_function_arguments): Likewise. * c-typeck.c (build_function_call): Likewise. cp: * call.c (build_over_call): Pass in named argument list to `check_function_arguments'. * typeck.c (build_function_call): Likewise. testsuite: PR c/21911 * gcc.dg/format/sentinel-1.c: Update. Fix execl* calls. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101341 138bc75d-0d04-0410-961f-82ee72b054a4
-
ghazi authored
regexp_mode_check_failed): Add noreturn attribute. cp: * cp-tree.h (lang_check_failed): Add noreturn attribute. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101340 138bc75d-0d04-0410-961f-82ee72b054a4
-
tkoenig authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101339 138bc75d-0d04-0410-961f-82ee72b054a4
-