aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc/invoke.texi
diff options
context:
space:
mode:
authorChao-ying Fu <fu@mips.com>2007-05-25 22:20:57 +0000
committerChao-ying Fu <fu@mips.com>2007-05-25 22:20:57 +0000
commit92df40891390b4f359c38d35d4ee3d2fd40f5579 (patch)
tree4175660f094117c9d3c241a62502193ae031bf53 /gcc/doc/invoke.texi
parent789b86ebb1e1b679001516f1477d9f23fc6c29cd (diff)
Merged revisions 125007-125074 via svnmerge from
svn+ssh://chaoyingfu@sources.redhat.com/svn/gcc/trunk ........ r125007 | ian | 2007-05-23 16:00:54 -0700 (Wed, 23 May 2007) | 2 lines * g++.dg/other/vrp1.C: New test. ........ r125010 | gccadmin | 2007-05-23 17:17:24 -0700 (Wed, 23 May 2007) | 1 line Daily bump. ........ r125012 | espindola | 2007-05-23 21:38:27 -0700 (Wed, 23 May 2007) | 6 lines * c-common.c (c_common_signed_or_unsigned_type): Delay the check for INTEGRAL_TYPE_P and TYPE_UNSIGNED. * langhooks.c (get_signed_or_unsigned_type): Don't check for INTEGRAL_TYPE_P or TYPE_UNSIGNED. (lhd_signed_or_unsigned_type): Check for INTEGRAL_TYPE_P and TYPE_UNSIGNED. ........ r125013 | jvdelisle | 2007-05-23 22:03:51 -0700 (Wed, 23 May 2007) | 5 lines 2007-05-23 Jerry DeLisle <jvdelisle@gcc.gnu.org> * array.c (spec_dimen_size): Test for correct BT_INTEGER type. ........ r125019 | fxcoudert | 2007-05-24 02:56:50 -0700 (Thu, 24 May 2007) | 3 lines * gfortran.dg/pr25603.f: Initialize integer variables. ........ r125020 | dannysmith | 2007-05-24 03:11:49 -0700 (Thu, 24 May 2007) | 35 lines ChangeLog * doc/tm.texi (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Document. * targhooks.h (default_mangle_decl_assembler_name): Declare default hook. * targhooks.c (default_mangle_decl_assembler_name): Define default hook. * target-def.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME) New. Set to default hook. * target.h (struct gcc_target): Add mangle_decl_assembler_name field. * langhooks.c (lhd_set_decl_assembler_name): Call targetm.mangle_decl_assembler_name for names with global scope. * config/i386/cygming.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME) Override default. (ASM_OUTPUT_DEF_FROM_DECLS): Simplify to use DECL_ASSEMBLER_NAME. * config/i386/i386-protos.h (i386_pe_mangle_decl_assembler_name): Declare. * config/i386/winnt.c (i386_pe_maybe_mangle_decl_assembler_name): New. Factored out of i386_pe_encode_section_info. (gen_stdcall_or_fastcall_suffix): Get name identifier as argument. Move check for prior decoration of stdcall symbols to i386_pe_encode_section_info. (i386_pe_encode_section_info): Adjust call to gen_stdcall_or_fastcall_suffix. Use i386_pe_maybe_mangle_decl_assembler_name, if needed. (i386_pe_mangle_decl_assembler_name): New. Wrap i386_pe_maybe_mangle_decl_assembler_name. cp/ChangeLog * mangle.c (mangle_decl): Call targetm.mangle_decl_assembler_name. ........ r125022 | hjl | 2007-05-24 06:28:49 -0700 (Thu, 24 May 2007) | 5 lines 2007-05-24 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.c (ix86_init_mmx_sse_builtins): Mark __builtin_ia32_vec_set_v2di with MASK_64BIT. ........ r125023 | hjl | 2007-05-24 06:31:05 -0700 (Thu, 24 May 2007) | 5 lines 2007-05-24 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.c (ix86_handle_option): Handle SSE4.1 for -msse/-msse2/-msse3. ........ r125024 | rakdver | 2007-05-24 07:02:12 -0700 (Thu, 24 May 2007) | 21 lines * tree-ssa-threadupdate.c (thread_through_loop_header): Use set_loop_copy. (thread_through_all_blocks): Call initialize_original_copy_tables and free_original_copy_tables. * cfgloopmanip.c (duplicate_loop, duplicate_loop_to_header_edge): Use set_loop_copy. * tree-cfg.c (tree_duplicate_sese_region): Ditto. * cfghooks.c (duplicate_block): Use get_loop_copy. * cfg.c: Include cfgloop.h. (loop_copy): New hash table. (initialize_original_copy_tables): Initialize loop_copy table. (free_original_copy_tables): Free loop_copy table. (copy_original_table_clear, copy_original_table_set, set_loop_copy, get_loop_copy): New functions. (set_bb_original, set_bb_copy): Use copy_original_table_set. * cfgloop.h (struct loop): Remove copy field. * Makefile.in (cfg.o): Add CFGLOOP_H dependency. * basic-block.h (set_loop_copy, get_loop_copy): Declare. ........ r125025 | hjl | 2007-05-24 07:12:18 -0700 (Thu, 24 May 2007) | 5 lines 2007-05-24 H.J. Lu <hongjiu.lu@intel.com> * gcc.target/i386/sse4_1-check.h (MASK): New. ........ r125026 | hubicka | 2007-05-24 07:21:14 -0700 (Thu, 24 May 2007) | 7 lines * doc/invoke.texi (-fdump-unnumbered): Update docs when line number notes are gone. * print-rtl.c (flag_dump_unnumbered): Update comments. (print_rtl): Fix my previous change. * emit-rtl.c (emit_note_before, emit_note_after): Clear out note specific data. ........ r125027 | hjl | 2007-05-24 07:35:00 -0700 (Thu, 24 May 2007) | 5 lines 2007-05-24 H.J. Lu <hongjiu.lu@intel.com> * target-def.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Correct default hook. ........ r125028 | paolo | 2007-05-24 07:49:45 -0700 (Thu, 24 May 2007) | 21 lines 2007-05-24 Paolo Carlini <pcarlini@suse.de> * config/locale/gnu/c_locale.h (__convert_from_v): Only switch to the "C" locale if the current one isn't already "C" (for old glibcs). * config/os/gnu-linux/ctype_noninline.h (ctype<char>::classic_table, ctype<char>::ctype(__c_locale, const mask*, bool, size_t), ctype<char>::ctype(const mask*, bool, size_t)): Likewise, for generic locale model. * config/locale/gnu/messages_members.h (messages<>::messages(__c_locale, const char*, size_t), messages_byname<_CharT>::messages_byname(const char*, size_t)): Only dynamically allocate memory if __s != "C". * config/locale/gnu/time_members.h (__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)): Likewise. * config/locale/generic/time_members.h (__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)): Likewise. * testsuite/util/testsuite_allocator.h: Revert last change. ........ r125029 | hubicka | 2007-05-24 08:47:07 -0700 (Thu, 24 May 2007) | 5 lines Fotgotten changelog entry: * gengenrtl.c (gendecl, gendef): Output the gens annotated for statistics. (genheader): Include statistics.h. ........ r125030 | rakdver | 2007-05-24 09:09:26 -0700 (Thu, 24 May 2007) | 49 lines * doc/passes.texi: Document predictive commoning. * doc/invoke.texi (-fpredictive-commoning): Document. * opts.c (decode_options): Enable flag_predictive_commoning on -O3. * tree-ssa-loop-im.c (get_lsm_tmp_name): Export. Allow adding indices to the generated name. (schedule_sm): Pass 0 to get_lsm_tmp_name. * tree-ssa-loop-niter.c (stmt_dominates_stmt_p): Export. * tree-pretty-print.c (op_symbol_1): Renamed to ... (op_symbol_code): ... and exported. (dump_omp_clause, op_symbol): Use op_symbol_code instead of op_symbol_1. * tree-pass.h (pass_predcom): Declare. * timevar.def (TV_PREDCOM): New timevar. * tree-ssa-loop.c (run_tree_predictive_commoning, gate_tree_predictive_commoning, pass_predcom): New. * tree-data-ref.c (find_data_references_in_loop): Find the references in dominance order. (canonicalize_base_object_address): Ensure that the result has pointer type. (dr_analyze_innermost): Export. (create_data_ref): Code to fail for references with invariant address moved ... (find_data_references_in_stmt): ... here. * tree-data-ref.h (dr_analyze_innermost): Declare. * tree-affine.c: Include tree-gimple.h and hashtab.h. (aff_combination_find_elt, name_expansion_hash, name_expansion_eq, tree_to_aff_combination_expand, double_int_constant_multiple_p, aff_combination_constant_multiple_p): New functions. * tree-affine.h (aff_combination_constant_multiple_p, tree_to_aff_combination_expand): Declare. * tree-predcom.c: New file. * common.opt (fpredictive-commoning): New option. * tree-flow.h (op_symbol_code, tree_predictive_commoning, stmt_dominates_stmt_p, get_lsm_tmp_name): Declare. * Makefile.in (tree-predcom.o): Add. (tree-affine.o): Add TREE_GIMPLE_H dependency. * passes.c (init_optimization_passes): Add dceloop after copy propagation in loop optimizer. Add predictive commoning to loop optimizer passes. * gcc.dg/tree-ssa/predcom-1.c: New test. * gcc.dg/tree-ssa/predcom-2.c: New test. * gcc.dg/tree-ssa/predcom-3.c: New test. * gcc.dg/tree-ssa/predcom-4.c: New test. * gcc.dg/tree-ssa/predcom-5.c: New test. * gcc.dg/vect/dump-tree-dceloop-pr26359.c: Test dceloop2 dumps. ........ r125032 | sje | 2007-05-24 09:37:27 -0700 (Thu, 24 May 2007) | 11 lines * ltmain.sh: Update from ToT Libtool. * libtool.m4: Update from ToT Libtool. * ltsugar.m4: New. Update from ToT Libtool. * ltversion.m4: New. Update from ToT Libtool. * ltoptions.m4: New. Update from ToT Libtool. * ltconfig: Remove. * ltcf-c.sh: Remove. * ltcf-cxx.sh: Remove. * ltcf-gcj.sh: Remove. * Regenerate all subdirs ........ r125035 | uros | 2007-05-24 10:14:15 -0700 (Thu, 24 May 2007) | 3 lines * gcc/ChangeLog: Whitespace fixes. * gcc/testsuite/ChangeLog: Ditto ........ r125037 | rsandifo | 2007-05-24 12:19:31 -0700 (Thu, 24 May 2007) | 14 lines gcc/ * postreload-gcse.c (reg_changed_after_insn_p): New function. (oprs_unchanged_p): Use it to check all registers in a REG. (record_opr_changes): Look for clobbers in CALL_INSN_FUNCTION_USAGE. (reg_set_between_after_reload_p): Delete. (reg_used_between_after_reload_p): Likewise. (reg_set_or_used_since_bb_start): Likewise. (eliminate_partially_redundant_load): Use reg_changed_after_insn_p and reg_used_between_p instead of reg_set_or_used_since_bb_start. Use reg_set_between_p instead of reg_set_between_after_reload_p. * rtlanal.c (reg_set_p): Check whether REG overlaps regs_invalidated_by_call, rather than just checking the membership of REGNO (REG). ........ r125039 | andreast | 2007-05-24 12:33:23 -0700 (Thu, 24 May 2007) | 2 lines Commit the change of this file, mentionend in the CL from 2007-05-20. ........ r125040 | kseitz | 2007-05-24 13:40:47 -0700 (Thu, 24 May 2007) | 14 lines * include/java-interp.h (_Jv_InterpFrame::get_pc): Only deduct one when pc_ptr is non-NULL. * prims.cc (parse_init_args): Enable JVMTI with agentlib and agentpath options. * testsuite/lib/libjava.exp (exec_gij): Add new addl_flags parameter. * testsuite/libjava.jvmti/jvmti-interp.exp (gij_jvmti_test_one): Pass '-agentlib:dummyagent' when executing gij. (gij_jvmti_run): Build dummy JVMTI agent before running tests, and remove it when finished. * testsuite/libjava.jvmti/dummyagent.c: New file. ........ r125041 | aaw | 2007-05-24 13:55:36 -0700 (Thu, 24 May 2007) | 21 lines * macro.c (_cpp_builtin_macro_text): Handle BT_COUNTER. * pch.c (cpp_write_pch_deps): Save __COUNTER__ state. (cpp_write_pch_state): Save __COUNTER__ state. (cpp_valid_state): Check valid __COUNTER__ state. (cpp_read_state): Read new __COUNTER__ state. * include/cpplib.h (enum builtin_type): Add BT_COUNTER enumerator. * init.c (builtin_array): Add __COUNTER__/BT_COUNTER. * internal.h (struct cpp_reader): Add counter member. * gcc.dg/cpp/counter-1.c: New test. * gcc.dg/pch/counter-1.c: New test. * gcc.dg/pch/counter-1.hs: New file. * gcc.dg/pch/counter-2.c: New test. * gcc.dg/pch/counter-2.hs: New file. * gcc.dg/pch/counter-3.c: New test. * gcc.dg/pch/counter-3.hs: New file. * doc/cpp.texi (Common Predefined Macros): Add __COUNTER__ description. ........ r125042 | mrs | 2007-05-24 14:36:20 -0700 (Thu, 24 May 2007) | 4 lines * config/darwin.h (LINK_COMMAND_SPEC): Add .cxx/.cp for dsymutil handling as well. * config/darwin9.h (LINK_COMMAND_SPEC): Likewise. ........ r125043 | ian | 2007-05-24 15:12:31 -0700 (Thu, 24 May 2007) | 4 lines * regclass.c (regclass): Don't crash if the entry in regno_reg_rtx is NULL. ........ r125044 | paolo | 2007-05-24 15:18:07 -0700 (Thu, 24 May 2007) | 4 lines 2007-05-24 Paolo Carlini <pcarlini@suse.de> * include/ext/concurrence.h: Use __GCC_HAVE_SYNC_COMPARE_AND_SWAP_*. ........ r125047 | pinskia | 2007-05-24 17:12:53 -0700 (Thu, 24 May 2007) | 6 lines 2007-05-23 Andrew Pinski <andrew_pinski@playstation.sony.com> * Makefile.in: Remove all uses of $(libext). ........ r125048 | pinskia | 2007-05-24 17:13:40 -0700 (Thu, 24 May 2007) | 6 lines 2007-05-23 Andrew Pinski <andrew_pinski@playstation.sony.com> * Makefile.in: Remove all uses of $(libext). ........ r125051 | gccadmin | 2007-05-24 17:18:11 -0700 (Thu, 24 May 2007) | 1 line Daily bump. ........ r125054 | ghazi | 2007-05-24 20:55:11 -0700 (Thu, 24 May 2007) | 3 lines * gcc.dg/torture/builtin-math-4.c: Fix dg-xfail-if. ........ r125055 | pinskia | 2007-05-24 22:57:42 -0700 (Thu, 24 May 2007) | 7 lines 2007-05-24 Andrew Pinski <andrew_pinski@playstation.sony.com> * config/spu/spu.md (smulsi3_highpart): Unshare the rtl chain. (umulsi3_highpart): Likewise. ........ r125057 | pault | 2007-05-24 23:34:10 -0700 (Thu, 24 May 2007) | 13 lines 2007-05-25 Paul Thomas <pault@gcc.gnu.org> * trans-expr.c (gfc_apply_interface_mapping_to_expr): Change order in logic under EXPR_FUNCTION to handle functions with no arguments. 2007-05-25 Paul Thomas <pault@gcc.gnu.org> * gfortran.dg/result_in_spec_2.f90: New test. ........ r125058 | rguenth | 2007-05-25 02:07:29 -0700 (Fri, 25 May 2007) | 10 lines 2007-05-24 Richard Guenther <rguenther@suse.de> Andrew Pinski <andrew_pinski@playstation.sony.com> * tree-ssa-forwprop.c (forward_propagate_addr_into_variable_array_index): Handle arrays with element size one. * gcc.dg/tree-ssa/forwprop-2.c: New testcase. ........ r125059 | paolo | 2007-05-25 02:28:48 -0700 (Fri, 25 May 2007) | 4 lines 2007-05-25 Paolo Carlini <pcarlini@suse.de> * config/locale/gnu/c_locale.h (__convert_from_v): Fix typo. ........ r125060 | rsandifo | 2007-05-25 04:36:06 -0700 (Fri, 25 May 2007) | 36 lines gcc/ * config/arm/arm-protos.h (arm_encode_call_attribute): Delete. (arm_is_longcall_p): Rename to... (arm_is_long_call_p): ...this. Take a single tree argument and return a bool. * config/arm/arm.h (CALL_SHORT, CALL_LONG, CALL_NORMAL): Delete. (CUMULATIVE_ARGS): Remove call_cookie. (SHORT_CALL_FLAG_CHAR, LONG_CALL_FLAG_CHAR, ENCODED_SHORT_CALL_ATTR_P) (ENCODED_LONG_CALL_ATTR_P): Delete. (ARM_NAME_ENCODING_LENGTHS): Remove SHORT_CALL_FLAG_CHAR and LONG_CALL_FLAG_CHAR cases. (ARM_DECLARE_FUNCTION_SIZE): Delete. * config/arm/elf.h (ASM_DECLARE_FUNCTION_SIZE): Don't use ARM_DECLARE_FUNCTION_SIZE. * config/arm/arm.c (arm_init_cumulative_args): Don't set call_cookie. (arm_function_arg): Return const0_rtx for VOIDmode arguments. (arm_encode_call_attribute, current_file_function_operand): Delete. (arm_function_in_section_p): New function. (arm_is_longcall_p): Rename to... (arm_is_long_call_p): ...this. Take the target function as a single argument and return a bool. Do not rely on call cookies. Check whether the target symbol is in the same section as the current function, not just the same compilation unit. (arm_function_ok_for_sibcall): Use arm_is_long_call_p. (arm_encode_section_info): Don't encode a call type. * config/arm/arm.md (call, call_value): Update calls to arm_is_long(_)call_p. Simplify logic. (*call_symbol, *call_value_symbol, *call_insn, *call_value_insn): Update calls to arm_is_long(_)call_p. gcc/testsuite/ * gcc.target/arm/long-calls-1.c: New test. * gcc.target/arm/long-calls-2.c: Likewise. * gcc.target/arm/long-calls-3.c: Likewise. * gcc.target/arm/long-calls-4.c: Likewise. ........ r125061 | hjl | 2007-05-25 05:27:27 -0700 (Fri, 25 May 2007) | 4 lines 2007-05-25 H.J. Lu <hongjiu.lu@intel.com> * config/i386/sse.md (*vec_extractv2di_1_sse2): Correct shift. ........ r125062 | dgregor | 2007-05-25 06:15:04 -0700 (Fri, 25 May 2007) | 63 lines 2007-05-25 Douglas Gregor <doug.gregor@gmail.com> * error.c (dump_type): Dump TYPE_ARGUMENT_PACK nodes. * cp-tree.h (check_for_bare_parameter_packs): Returns bool. * pt.c (check_for_bare_parameter_packs): Return bool indicated whether everything was okay. Fix indentation. (push_template_decl_real): Check for bare parameter packs in function parameters; where errors occur, mark the parameter types with ERROR_MARK_NODEs to avert ICEs. (coerce_template_parameter_pack): New. (coerce_template_parms): Moved parameter pack coercion into coerce_template_parameter_pack, and permit it anywhere in the template parameter list (not just at the end). Parameter and argument indices can vary (somewhat) separately now, so add PARM_IDX and ARG_IDX. (fn_type_unification): Don't set an argument pack as incomplete if no argument pack was deduced. (type_unification_real): If a type parameter is a parameter pack and has not otherwise been deduced, it will be deduced to an empty parameter pack. (more_specialized_fn): Use the actual lengths of the argument lists when comparing against expansions. * semantics.c (finish_member_declaration): If a field's type has bare parameter packs, error and set its type to ERROR_MARK_NODE. 2007-05-25 Douglas Gregor <doug.gregor@gmail.com> * g++.dg/cpp0x/pr31431.C: New. * g++.dg/cpp0x/pr31437.C: New. * g++.dg/cpp0x/pr31442.C: New. * g++.dg/cpp0x/pr31444.C: New. * g++.dg/cpp0x/pr31431-2.C: New. * g++.dg/cpp0x/pr31432.C: New. * g++.dg/cpp0x/pr31434.C: New. * g++.dg/cpp0x/pr31438.C: New. * g++.dg/cpp0x/pr31443.C: New. * g++.dg/cpp0x/pr31445.C: New. * g++.dg/cpp0x/variadic-crash1.C: New. ........ r125063 | hjl | 2007-05-25 07:33:27 -0700 (Fri, 25 May 2007) | 24 lines gcc/ 2007-05-25 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.c (__builtin_ia32_vec_ext_v2df): Mark it with MASK_SSE2. (__builtin_ia32_vec_ext_v2di): Likewise. (__builtin_ia32_vec_ext_v4si): Likewise. (__builtin_ia32_vec_ext_v8hi): Likewise. (__builtin_ia32_vec_ext_v16qi): Likewise. (__builtin_ia32_vec_set_v8hi): Likewise. gcc/testsuite/ 2007-05-25 H.J. Lu <hongjiu.lu@intel.com> * gcc.target/i386/sse2-check.h: New. * gcc.target/i386/sse2-vec-1.c: Likewise. * gcc.target/i386/sse2-vec-2.c: Likewise. * gcc.target/i386/sse2-vec-3.c: Likewise. * gcc.target/i386/sse2-vec-4.c: Likewise. * gcc.target/i386/sse2-vec-5.c: Likewise. * gcc.target/i386/sse2-vec-6.c: Likewise. ........ r125064 | jvdelisle | 2007-05-25 10:41:17 -0700 (Fri, 25 May 2007) | 5 lines 2007-05-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> * io/transfer.c (unformatted_read): Use size from front end eliminating use of size_from_real_kind. (unformatted_write): Ditto. ........ r125066 | andreast | 2007-05-25 12:26:27 -0700 (Fri, 25 May 2007) | 4 lines 2007-05-25 Andreas Tobler <a.tobler@schweiz.org> * ltmain.sh: Fix Darwin verstring, remove ${wl}. ........ r125067 | hjl | 2007-05-25 12:44:11 -0700 (Fri, 25 May 2007) | 5 lines 2007-05-25 H.J. Lu <hongjiu.lu@intel.com> * semantics.c (finish_member_declaration): Fix a typo in the last checkin. ........ r125070 | simartin | 2007-05-25 13:26:36 -0700 (Fri, 25 May 2007) | 11 lines 2007-05-25 Simon Martin <simartin@users.sourceforge.net> Manuel Lopez-Ibanez <manu@gcc.gnu.org> * parser.c (cp_parser_skip_to_closing_brace): Return true if the next token is a closing brace, false if there are no tokens left. (cp_parser_namespace_alias_definition): Only consume the next token if it is a closing brace. * parser.c (cp_parser_class_specifier): Likewise. ........ r125073 | mueller | 2007-05-25 14:18:15 -0700 (Fri, 25 May 2007) | 11 lines 2007-05-25 Dirk Mueller <dmueller@suse.de> Marcus Meissner <meissner@suse.de> * doc/extend.texi (alloc_size): New attribute. * c-common.c (handle_alloc_size_attribute): New. * tree-object-size.c (alloc_object_size): Use alloc_size attribute, if available. * testsuite/gcc.dg/attr-alloc_size.c: New. ........ r125074 | steven | 2007-05-25 14:25:28 -0700 (Fri, 25 May 2007) | 2 lines * MAINTAINERS (Write After Approval): Remove myself. ........ git-svn-id: https://gcc.gnu.org/svn/gcc/branches/fixed-point@125076 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc/invoke.texi')
-rw-r--r--gcc/doc/invoke.texi15
1 files changed, 12 insertions, 3 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index a057a0cbc7f..023cf720fef 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -334,7 +334,7 @@ Objective-C and Objective-C++ Dialects}.
-ffinite-math-only -fno-signed-zeros @gol
-fno-toplevel-reorder -fno-trapping-math -fno-zero-initialized-in-bss @gol
-fomit-frame-pointer -foptimize-register-move @gol
--foptimize-sibling-calls -fprefetch-loop-arrays @gol
+-foptimize-sibling-calls -fpredictive-commoning -fprefetch-loop-arrays @gol
-fprofile-generate -fprofile-use @gol
-fregmove -frename-registers @gol
-freorder-blocks -freorder-blocks-and-partition -freorder-functions @gol
@@ -4495,7 +4495,7 @@ different text / bss / data / heap / stack / dso start locations.
@item -fdump-unnumbered
@opindex fdump-unnumbered
When doing debugging dumps (see @option{-d} option above), suppress instruction
-numbers, line number note and address output. This makes it more feasible to
+numbers and address output. This makes it more feasible to
use diff on debugging dumps for compiler invocations with different
options, in particular with and without @option{-g}.
@@ -5001,7 +5001,8 @@ invoking @option{-O2} on programs that use computed gotos.
@opindex O3
Optimize yet more. @option{-O3} turns on all optimizations specified by
@option{-O2} and also turns on the @option{-finline-functions},
-@option{-funswitch-loops} and @option{-fgcse-after-reload} options.
+@option{-funswitch-loops}, @option{-fpredictive-commoning} and
+@option{-fgcse-after-reload} options.
@item -O0
@opindex O0
@@ -5712,6 +5713,14 @@ This optimization is enabled by default.
With this option, the compiler will create multiple copies of some
local variables when unrolling a loop which can result in superior code.
+@item -fpredictive-commoning
+@opindex fpredictive-commoning
+Perform predictive commoning optimization, i.e., reusing computations
+(especially memory loads and stores) performed in previous
+iterations of loops.
+
+This option is enabled at level @option{-O3}.
+
@item -fprefetch-loop-arrays
@opindex fprefetch-loop-arrays
If supported by the target machine, generate instructions to prefetch