This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch hjl/tune/cost-sched in repository gcc.
discards 5c061fb Add -mcost= and -mschedule= options to x86 backend adds 67f4304 2015-07-03 Ville Voutilainen ville.voutilainen@gmail.com adds b58783c * doc/xml/manual/status_cxx2017.xml: Update status table. * doc/html/manual/*: Regenerate. adds c9137c8 PR rtl-optimization/66706 * gcc.target/powerpc/shift-int.c: New testcase. adds 1e31738 * gcc.dg/plugin/wide-int_plugin.c (test_double_int_round_udiv): Avoid narrowing error. adds 55a0118 [Patch docs obvious AArch64] Fix position of -moverride documentation adds 3cd8a8a 2015-07-03 Carlos Sánchez de La Lama csanchezdll@gmail.com adds 2a6eea5 2015-07-03 Paolo Carlini paolo.carlini@oracle.com adds 48fc4cf Daily bump. adds d0e616a 2015-07-04 Marc Glisse marc.glisse@inria.fr adds 7506bd9 PR target/66114 * config/pa/pa.md (indirect_jump): Use pmode_register_operand instead of register_operand. Remove constraint. adds a5baeed 2015-07-04 Steven G. Kargl kargl@gcc.gnu.org adds 874cca8 2015-07-04 Bernd Edlinger bernd.edlinger@hotmail.de adds 90b6ad4 Daily bump. adds 31300ec 2015-07-04 Sandra Loosemore sandra@codesourcery.com adds 9a1bd12 gcc/ * target.def: Add code_for_* hooks. * gentarget-def.c (def_target_insn): Add TARGET_CODE_FOR_* macros. * defaults.h (HAVE_tablejump, gen_tablejump): Delete. * target-insns.def (casesi, tablejump): New targetm instruction patterns. * expr.c (try_casesi): Use them instead of HAVE_*/gen_* interface. (do_tablejump): Likewise. * stmt.c (expand_switch_as_decision_tree_p): Likewise. (expand_sjlj_dispatch_table): Likewise. * targhooks.c (default_case_values_th [...] adds a3c81e6 gcc/ * target-insns.def (builtin_longjmp, builtin_setjmp_receiver) (builtin_setjmp_setup, exception_receiver, nonlocal_goto) (nonlocal_goto_receiver): New targetm instruction patterns. * builtins.c (expand_builtin_setjmp_setup): Use them instead of HAVE_*/gen_* interface. (expand_builtin_setjmp_receiver): Likewise. (expand_builtin_longjmp, expand_builtin_nonlocal_goto): Likewise. * except.c (expand_dw2_landing_pad_for_region): Likewise. adds 1d99ab0 gcc/ * target-insns.def (untyped_call, untyped_return): New targetm instruction patterns. * builtins.c (expand_builtin_apply): Use them instead of HAVE_*/gen_* interface. (result_vector): Define unconditionally. adds 1d375a7 gcc/ * target-insns.def (prefetch): New targetm instruction pattern. * tree-ssa-loop-prefetch.c: Include targeth. (tree_ssa_prefetch_arrays): Use prefetch targetm pattern instead of HAVE_*/gen_* interface. * builtins.c (expand_builtin_prefetch): Likewise. * toplev.c (process_options): Likewise. adds 4db8dd0 gcc/ * target-insns.def (trap): New targetm instruction pattern. * builtins.c (expand_builtin_trap): Use it instead of HAVE_*/gen_* interface. * explow.c (allocate_dynamic_stack_space): Likewise. * ifcvt.c (find_if_header): Likewise. adds 71512c0 gcc/ * target-insns.def (restore_stack_block, restore_stack_function) (restore_stack_nonlocal, save_stack_block, save_stack_function) (save_stack_nonlocal): New targetm instruction patterns. * builtins.c (expand_builtin_apply): Use them instead of HAVE_*/gen_* interface. * explow.c (emit_stack_save, emit_stack_restore): Likewise. adds ec19b61 gcc/ * expr.h (gen_move_insn_uncast): Delete. * expr.c (gen_move_insn_uncast): Delete. adds e9b0644 gcc/ * target-insns.def (stack_protect_set, stack_protect_test): New targetm instruction patterns. * cfgexpand.c (stack_protect_prologue): Use them instead of HAVE_*/gen_* interface. * function.c (stack_protect_epilogue): Likewise. adds a558802 gcc/ * target-insns.def (allocate_stack, check_stack, probe_stack) (probe_stack_address, split_stack_prologue, split_stack_space_check): New targetm instruction patterns. * explow.c (allocate_dynamic_stack_space): Use them instead of HAVE_*/gen_* interface. (emit_stack_probe): Likewise. (probe_stack_range): Likewise. * function.c (thread_prologue_and_epilogue_insns): Likewise. adds 32e17df gcc/ * target-insns.def (clear_cache): New targetm instruction pattern. * builtins.c (expand_builtin___clear_cache): Use it instead of HAVE_*/gen_* interface. adds 4177c69 gcc/ * target-insns.def (doloop_begin, doloop_end): New targetm instruction patterns. * loop-init.c: Include target.h. (pass_loop2::gate): Use the new targetm patterns instead of HAVE_*/gen_* interface. (pass_rtl_doloop::gate): Likewise. (pass_rtl_doloop::execute): Remove preprocessor condition. * hw-doloop.c: Build unconditionally. * loop-doloop.c: Likewise. (doloop_optimize): Use the new targetm patterns instead of HAVE_*/gen_* interface. (doloop_modify [...] adds 451e3cf gcc/ * target-insns.def (extv, extzv, insv): New targetm instruction patterns. * optabs.c (get_extraction_insn): Use them instead of HAVE_*/gen_* interface. * recog.c (simplify_while_replacing): Likewise. adds 86d0644 PR tree-optimization/66718 * tree-vect-stmts.c (vectorizable_assignment, vectorizable_store, vectorizable_load, vectorizable_condition): Move vectype, nunits, ncopies computation after checking what kind of statement stmt is. adds 05e5154 PR tree-optimization/66718 * tree-vect-stmts.c (vectorizable_call): Replace uses of GOMP_SIMD_LANE outside of loop with vf - 1 rather than 0. adds 0446c24 * doc/fragments.texi (Target Fragment): Convert debian.org link to use https. * doc/install.texi (Configuration): Ditto. adds e2c4a09 2015-07-05 François Dumont fdumont@gcc.gnu.org adds 5c3c230 2015-07-05 Chung-Lin Tang cltang@codesourcery.com Sandra Loosemore sandra@codesourcery.com adds a7081fa Daily bump. adds 6145350 PR tree-optimization/66720 * gcc.dg/vect/pr48052.c: Use dg-require-effective-target vect_int_mult. adds a29fd1b libgomp: Add comment to clarify last_team usage adds e3c1971 PR libfortran/40267 * Makefile.am: Remove libgfortranbegin targets. * Makefile.in: Regenerate. * fmain.c: Remove. adds 535b528 PR tree-optimization/66757 * match.pd: Add missing condition to ~X ^ C -> X ^ ~C. adds 1caa6ab gcc/testsuite/ChangeLog: adds 7832d94 Added missing Changelog entry for testsuite. adds e7966fe 2015-07-06 Richard Biener rguenther@suse.de adds 282b12f [AArch64] PR target/66731 Fix fnmul insn with -frounding-math adds 8697277 Rename read-md.c:decimal_string adds 9a56363 Allow -mincoming-stack-boundary=3 with -mno-sse adds b127ad6 Fix assert caused by bad cfg manipulation in bfin. adds 80b8a97 2015-07-06 Richard Biener rguenther@suse.de adds a21bc0f MIPS: For micromips allow the near-far-3.c test to use the jals instruction to call near_func. adds 83c6000 2015-07-06 Richard Biener rguenther@suse.de adds 9e9379b Add -march=iamcu to optimize for IA MCU adds 4f0e25c [ARM] fix movdi expander to avoid illegal ldrd/strd adds ffe67be 2015-07-06 Steven G. Kargl kargl@gcc.gnu.org adds 82cbe1b * config/i386/i386.md (extv<mode>): Rename from extv. Use SWI24 modes for operands 0 and 1. Use SImode for operands 2 and 3. Copy operand 1 to a temporary if !ext_register_operand. Remove ancient extract_bit_field workaround. (*extv<mode>): Rename from *mov<mode>_extv_1. (*extvqi): Rename from *movqi_extv_q. (extzv<mode>): Rename from extzv. Use SWI248 modes for operands 0 and 1. Use SImode for operands 2 and 3. Copy operand 1 to a temporary if !ext_reg [...] adds 01872b8 Optimize i?86-*-elfiamcu for iamcu by default adds 381fe25 [ARM] PR/65956 AAPCS update for alignment attribute adds 44121e9 Fix eipa_src AAPCS issue (PR target/65956) adds 668de2f 2015-07-06 Steve Ellcey sellcey@imgtec.com adds 3c537ec Handle PROCESSOR_IAMCU in ix86_target_macros_internal adds c8047e0 2015-07-06 Marc Glisse marc.glisse@inria.fr adds 40bdfbc gcc/ * graphite-blocking.c (HAVE_isl): Include <stddef.h>. * graphite-dependencies.c, graphite-interchange.c, graphite-isl-ast-to-gimple.c, graphite-optimize-isl.c, graphite-poly.c, graphite-scop-detection.c, graphite-sese-to-poly.c, graphite.c: Likewise. adds bd10f27 * s-oscons-tmplt.c: Add support for DragonFly alongside FreeBSD. adds 67842e8 * config/nvptx/nvptx.c (nvptx_reorg): Remove unused vars. Fix call to nvptx_reorg_subreg. adds 9d93412 * config/i386/i386.md (insv<mode>): Rename from insv. Use SWI48 modes for operands 0 and 3. Use SImode for operands 2 and 3. Copy operand 0 to a temporary if !ext_register_operand. Remove ancient extract_bit_field workaround. (insv<mode>_1): Rename from mov<mode>_insv_1. (*insvqi): Rename from *movqi_insv_2. * config/i386/i386.c (emit_i386_cw_initialization): Update calls for renamed insvsi_1. (promote_duplicated_reg): Ditto for renamed insv<mode>_1. adds 2e7845f * pt.c (argument_pack_element_is_expansion_p): A decl pack is an expansion. adds 1cc00a0 * pt.c (reduce_template_parm_level): Also build the TYPE_DECL for a template template parameter. (tsubst_decl) [TEMPLATE_DECL]: Use the TEMPLATE_DECL built by reduce_template_parm_level. adds 43acffb Daily bump. adds e8838fb 2015-07-07 Richard Biener rguenther@suse.de adds bdf88cd Cleanup arch file directive. adds 8241864 2015-07-07 Richard Biener rguenther@suse.de adds 2331e65 gcc/testsuite/ChangeLog: adds 789581b 2015-07-07 Prathamesh Kulkarni prathamesh.kulkarni@linaro.org adds ad782ae 2015-07-07 Paulo Matos pmatos@broadcom.com adds acfb072 PR target/66780 * config/sh/sh.md (symGOT_load): Revert a part of 2015-03-03 change for target/65249. adds da0aab0 MIPS: Fix the call-[1,5,6].c tests to allow the jrc instruction to be matched when testing with microMIPS. adds 54c06b77 2015-07-07 Richard Biener rguenther@suse.de adds 345fc96 MIPS: Do not generate micromips code for the no-smartmips-lwxs.c testcase adds 4d7c6f7 Add rewrite_virtuals_into_loop_closed_ssa adds 5a3d2e1 Add empty loop exit block in transform_to_exit_first_loop_alt adds 9793d5a PR jit/66779: fix segfault adds d027835 PR jit/66783: prevent use of opaque structs adds 45cfc51 [MOXIE] Hookize GO_IF_LEGITIMATE_ADDRESS adds 67ede3e c-family/ * c-ada-spec.h (cpp_operation): Add IS_MOVE_CONSTRUCTOR. * c-ada-spec.c (print_ada_declaration): Skip move constructors. cp/ * decl2.c (cpp_check): Deal with IS_MOVE_CONSTRUCTOR. adds 0052bd3 * config/i386/i386.md (*jcc_bt<mode>): Only split before reload. Remove operand constraints. Change operand 2 predicate to nonmemory operand. Limit const_int values to mode bitsize. Only allow const_int values less than 32 when optimizing for size. (*jcc_bt<mode>_1, *jcc_bt<mode>_mask): Only split before reload. Remove operand constraints. (*bt<mode>): Use SImode for const_int values less than 32. (regmode): Remove mode attribute. adds b920883 Daily bump. adds 9ef1621 2015-07-07 Andrew MacLeod amacleod@redhat.com adds 5ae4887 * target.def (rtx_costs): Remove "code" param, add "mode". * rtl.h (rtx_cost, get_full_rtx_cost): Update prototype. (set_src_cost, get_full_set_src_cost): Likewise. Move later in file. (set_rtx_cost, get_full_set_rtx_cost): Move later in file. * rtlanal.c (rtx_cost): Add "mode" parameter. Update targetm.rtx_costs call. Track mode when given in rtx. (get_full_rtx_cost): Add "mode" parameter. Update rtx_cost calls. (default_address_cost): Pass Pmode to rtx_ [...] adds 4edfb4e fix changelog pasto adds 0b21e78 * getruntime.c (get_run_time) [__USE_GNU]: Use RUSAGE_SELF as argument 1 of getrusage call. adds e3b4d46 2015-07-08 Richard Biener rguenther@suse.de adds 023b614 MIPS: Do not build the stack-1.c testcase for micromips. adds c53e881 [ARM] Initialise cost to COSTS_N_INSNS (1) and increment in arm rtx costs adds c240086 [PATCH][ARM]Adjust compiling options for "gcc.target/arm/unsigned-float.c" with hardfloat toolchain. adds 66259e2 * config/i386/i386.md (*jcc_bt<mode>): Only allow const_int values more than or equal 8 and less than 32 when optimizing for size. adds 815c8a8 MIPS: Fix failing branch range checks for micromips. adds 2324307 PR c++/66748 * tree.c (handle_abi_tag_attribute): Check for CLASS_TYPE_P before accessing TYPE_LANG_SPECIFIC node. adds b85ca4c S/390: Remove assertion in s390_init_frame_layout. adds 15381b1 2015-07-08 Richard Biener rguenther@suse.de adds 947f174 2015-07-08 Richard Biener rguenther@suse.de adds facae23 Fix PR bootstrap/66744. adds 60084b2 Fix libgomp.c/parloops-exit-first-loop-alt{,-3}.c testcases adds e93a6f3 PR jit/66783: improve error messages adds a5ea4da Address -Wsign-compare diagnostics adds 9ba13af Fix comments in a jit testcase adds fe265ad [nvptx offloading] Only 64-bit configurations are currently supported adds 15d96f9 2015-07-08 Vladimir Makarov vmakarov@redhat.com adds cacef50 liboffloadmic plugin: Address -Wnarrowing diagnostics adds ae18d4c 2015-07-08 Paolo Carlini paolo.carlini@oracle.com adds b0f200d Don't pass/return vectors in registers for IAMCU adds 565f322 2015-07-08 Iain Sandoe iain@codesourcery.com adds 111f022 Add abort prototype to readeflags-1.c/writeeflags-1.c adds b75bf56 * config/i386/predicates.md (general_reg_operand): Use GENERAL_REGNO_P. adds 04d7d3e Compile pr37870.c with -mlong-double-80 adds 81a13bd Allow <adxintrin.h> for IA MCU adds 3c70ff3 [AArch64] Define TARGET_UNSPEC_MAY_TRAP_P adds 386ef92 * c-omp.c (c_omp_declare_simd_clauses_to_numbers): If all clauses are to be removed, return NULL rather than original clauses list. adds 0124237 c-family/ * c-ada-spec.h (cpp_operation): Add IS_CONSTEXPR. * c-ada-spec.c (print_ada_declaration): Skip constexpr constructors. cp/ * decl2.c (cpp_check): Deal with IS_CONSTEXPR. adds 7e3650b PR testsuite/66796 * gcc.target/hppa/shadd-1.c: Avoid the read-modify-write so as to have a single memory reference. adds bddd01c Daily bump. adds 5fe18e7 reduce conditional compilation for LOAD_EXTEND_OP adds d836e31 remove #if for HAVE_cc0 in combine.c adds d0b9971 always define SHORT_IMMEDIATES_SIGN_EXTEND adds 3c05b49 use #if for HARD_FRAME_POINTER_IS_FRAME_POINTER less adds 7ff2eb8 always define AUTO_INC_DEC adds 32aa77d reduce conditional compilation based on AUTO_INC_DEC adds 94f1fba always define WORD_REGISTER_OPERATIONS adds 9ae0476 * g++.dg/debug/dwarf2/*.C: generate dwarf-2 debug information even when dwarf-2 is not the default. adds 44e4689 2015-07-08 Kito Cheng kito.cheng@gmail.com adds 0a2874c 2015-07-09 Richard Biener rguenther@suse.de adds 67792e5 2015-07-08 Richard Biener rguenther@suse.de adds 07d294f PR tree-optimization/66718 * Makefile.in (OBJS): Add gimple-laddress.o. * passes.def: Schedule pass_laddress. * timevar.def (DEFTIMEVAR): Add TV_GIMPLE_LADDRESS. * tree-pass.h (make_pass_laddress): Declare. * gimple-laddress.c: New file. adds 849a880 Check int_size_in_bytes in ix86_return_in_memory adds 80bf41f Define ATTRIBUTE_ALIGNED_VALUE to 32 for IA MCU adds 52758cd 2015-07-09 Paolo Carlini paolo.carlini@oracle.com adds 1eacc14 2015-07-09 Andrew MacLeod amacleod@redhat.com adds b87918f Update config/i386/iamcu.h adds 2bc3151 2015-07-09 Richard Biener rguenther@suse.de adds f61de24 2015-07-09 Andrew MacLeod amacleod@redhat.com adds 1d09f02 2015-07-09 Szabolcs Nagy szabolcs.nagy@arm.com adds e803d03 * getruntime.c (RUSAGE_SELF): Define if not already defined. (get_runtime): Use RUSAGE_SELF as argument 1 of getrusage call. adds e14647a 2015-07-09 Paolo Carlini paolo.carlini@oracle.com adds 651c1bd PR target/66814 * config/i386/predicates.md (nonimmediate_gr_operand): New predicate. * config/i386/i386.md (not peephole2): Use nonimmediate_gr_operand. (varous peephole2s): Use {GENERAL,SSE,MMX}_REGNO_P instead of {GENERAL_SSE_MMX}_REG_P where appropriate. adds 75c3f23 * genmatch.c (fprintf_indent): New function. (operand::gen_transform): Add indent parameter. (expr::gen_transform, c_expr::gen_transform, capture::gen_transform): Ditto and use fprintf_indent. (dt_node::gen, dt_node::gen_kids, dt_node::gen_kids_1): Ditto. (dt_operand::gen, dt_operand::gen_predicate, dt_operand::gen_match_op, dt_operand::gen_gimple_expr, dt_operand::gen_generic_expr, dt_simplify::gen): Ditto. (decision_tree::gen_gimple): Adjust calls and inde [...] adds 853a01d 2015-07-09 Vladimir Makarov vmakarov@redhat.com new 150a5d4 Add -mcost= and -mschedule= options to x86 backend new 74060e1 Add support for -mcost=iamcu
This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this:
* -- * -- B -- O -- O -- O (5c061fb) \ N -- N -- N refs/heads/hjl/tune/cost-sched (74060e1)
You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B.
Any revisions marked "omits" are not gone; other references still refer to them. Any revisions marked "discards" are gone forever.
The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: gcc/ChangeLog | 1320 +++++++++++++++++++- gcc/DATESTAMP | 2 +- gcc/Makefile.in | 1 + gcc/ada/ChangeLog | 14 + gcc/ada/gcc-interface/cuintp.c | 3 +- gcc/ada/gcc-interface/decl.c | 3 +- gcc/ada/gcc-interface/misc.c | 3 +- gcc/ada/gcc-interface/targtyps.c | 3 +- gcc/ada/gcc-interface/trans.c | 3 +- gcc/ada/gcc-interface/utils.c | 3 +- gcc/ada/gcc-interface/utils2.c | 3 +- gcc/ada/s-oscons-tmplt.c | 7 +- gcc/alias.c | 17 +- gcc/asan.c | 17 +- gcc/attribs.c | 11 +- gcc/auto-inc-dec.c | 33 +- gcc/auto-profile.c | 20 +- gcc/{config/s390/s390intrin.h => backend.h} | 32 +- gcc/bb-reorder.c | 13 +- gcc/bt-load.c | 13 +- gcc/builtins.c | 128 +- gcc/c-family/ChangeLog | 43 + gcc/c-family/array-notation-common.c | 3 +- gcc/c-family/c-ada-spec.c | 17 +- gcc/c-family/c-ada-spec.h | 2 + gcc/c-family/c-cilkplus.c | 3 +- gcc/c-family/c-common.h | 2 - gcc/c-family/c-cppbuiltin.c | 1 - gcc/c-family/c-dump.c | 1 - gcc/c-family/c-format.c | 1 - gcc/c-family/c-gimplify.c | 15 +- gcc/c-family/c-indentation.c | 1 - gcc/c-family/c-lex.c | 1 - gcc/c-family/c-omp.c | 3 +- gcc/c-family/c-opts.c | 1 - gcc/c-family/c-pch.c | 1 - gcc/c-family/c-ppoutput.c | 3 +- gcc/c-family/c-pragma.c | 3 +- gcc/c-family/c-pretty-print.c | 3 +- gcc/c-family/c-semantics.c | 3 +- gcc/c-family/c-ubsan.c | 3 +- gcc/c-family/cilk.c | 3 +- gcc/c-family/stub-objc.c | 2 - gcc/c/ChangeLog | 17 + gcc/c/c-array-notation.c | 4 +- gcc/c/c-aux-info.c | 3 +- gcc/c/c-convert.c | 3 +- gcc/c/c-decl.c | 3 +- gcc/c/c-errors.c | 3 +- gcc/c/c-lang.c | 3 +- gcc/c/c-objc-common.c | 4 +- gcc/c/c-parser.c | 3 +- gcc/c/c-typeck.c | 3 +- gcc/caller-save.c | 13 +- gcc/calls.c | 20 +- gcc/ccmp.c | 23 +- gcc/cfg.c | 12 +- gcc/cfg.h | 2 + gcc/cfganal.c | 9 +- gcc/cfgbuild.c | 10 +- gcc/cfgcleanup.c | 14 +- gcc/cfgexpand.c | 43 +- gcc/cfghooks.c | 9 +- gcc/cfgloop.c | 15 +- gcc/cfgloop.h | 3 - gcc/cfgloopanal.c | 11 +- gcc/cfgloopmanip.c | 15 +- gcc/cfgrtl.c | 15 +- gcc/cgraph.c | 17 +- gcc/cgraphbuild.c | 16 +- gcc/cgraphclones.c | 14 +- gcc/cgraphunit.c | 19 +- gcc/cilk-common.c | 6 +- gcc/combine-stack-adj.c | 13 +- gcc/combine.c | 236 ++-- gcc/common/config/epiphany/epiphany-common.c | 2 +- gcc/compare-elim.c | 10 +- gcc/config.gcc | 10 +- gcc/config/aarch64/aarch64-builtins.c | 17 +- gcc/config/aarch64/aarch64.c | 198 +-- gcc/config/aarch64/aarch64.md | 10 + gcc/config/aarch64/cortex-a57-fma-steering.c | 12 +- gcc/config/alpha/alpha.c | 29 +- gcc/config/alpha/alpha.h | 4 +- gcc/config/arc/arc.c | 53 +- gcc/config/arc/arc.h | 2 +- gcc/config/arm/aarch-common.c | 1 - gcc/config/arm/arm-builtins.c | 2 - gcc/config/arm/arm-c.c | 1 - gcc/config/arm/arm.c | 515 ++++---- gcc/config/arm/arm.h | 2 +- gcc/config/arm/arm.md | 36 + gcc/config/arm/elf.h | 1 - gcc/config/avr/avr-c.c | 1 - gcc/config/avr/avr-log.c | 2 - gcc/config/avr/avr.c | 49 +- gcc/config/bfin/bfin.c | 69 +- gcc/config/bfin/bfin.h | 2 +- gcc/config/c6x/c6x.c | 57 +- gcc/config/cr16/cr16.c | 13 +- gcc/config/cris/cris.c | 30 +- gcc/config/darwin-c.c | 2 - gcc/config/darwin.c | 23 +- gcc/config/epiphany/epiphany.c | 22 +- gcc/config/epiphany/epiphany.h | 2 +- gcc/config/epiphany/mode-switch-use.c | 10 +- gcc/config/epiphany/resolve-sw-modes.c | 13 +- gcc/config/fr30/fr30.c | 13 +- gcc/config/frv/frv.c | 31 +- gcc/config/frv/frv.h | 4 +- gcc/config/ft32/ft32.c | 13 +- gcc/config/h8300/h8300.c | 19 +- gcc/config/i386/i386-c.c | 8 +- gcc/config/i386/i386-tune.c | 2 + gcc/config/i386/i386.c | 180 ++- gcc/config/i386/i386.h | 3 +- gcc/config/i386/i386.md | 483 ++++--- gcc/config/i386/iamcu.h | 43 + gcc/config/i386/msformat-c.c | 1 - gcc/config/i386/predicates.md | 8 +- gcc/config/i386/winnt-cxx.c | 1 - gcc/config/i386/winnt-stubs.c | 2 - gcc/config/i386/winnt.c | 18 +- gcc/config/i386/x86-tune.def | 36 +- gcc/config/i386/x86intrin.h | 4 + gcc/config/ia64/ia64-c.c | 1 - gcc/config/ia64/ia64.c | 30 +- gcc/config/ia64/ia64.h | 2 +- gcc/config/iq2000/iq2000.c | 21 +- gcc/config/iq2000/iq2000.h | 2 +- gcc/config/lm32/lm32.c | 21 +- gcc/config/lm32/lm32.h | 4 +- gcc/config/m32c/m32c-pragma.c | 1 - gcc/config/m32c/m32c.c | 23 +- gcc/config/m32r/m32r.c | 22 +- gcc/config/m32r/m32r.h | 2 +- gcc/config/m68k/m68k.c | 30 +- gcc/config/mcore/mcore.c | 20 +- gcc/config/mcore/mcore.h | 4 +- gcc/config/mep/mep-pragma.c | 1 - gcc/config/mep/mep.c | 24 +- gcc/config/mep/mep.h | 4 +- gcc/config/microblaze/microblaze-c.c | 1 - gcc/config/microblaze/microblaze.c | 17 +- gcc/config/microblaze/microblaze.h | 2 +- gcc/config/mips/mips.c | 117 +- gcc/config/mips/mips.h | 30 +- gcc/config/mips/mips.md | 265 ++-- gcc/config/mips/mips.opt | 4 - gcc/config/mmix/mmix.c | 17 +- gcc/config/mmix/mmix.h | 2 +- gcc/config/mn10300/mn10300.c | 24 +- gcc/config/mn10300/mn10300.h | 2 +- gcc/config/moxie/moxie.c | 54 +- gcc/config/moxie/moxie.h | 24 - gcc/config/msp430/msp430-c.c | 1 - gcc/config/msp430/msp430.c | 31 +- gcc/config/nds32/nds32-cost.c | 19 +- gcc/config/nds32/nds32-fp-as-gp.c | 15 +- gcc/config/nds32/nds32-intrinsic.c | 15 +- gcc/config/nds32/nds32-isr.c | 15 +- gcc/config/nds32/nds32-md-auxiliary.c | 15 +- gcc/config/nds32/nds32-memory-manipulation.c | 15 +- gcc/config/nds32/nds32-pipelines-auxiliary.c | 15 +- gcc/config/nds32/nds32-predicates.c | 15 +- gcc/config/nds32/nds32-protos.h | 2 +- gcc/config/nds32/nds32.c | 19 +- gcc/config/nds32/nds32.h | 2 +- gcc/config/nios2/constraints.md | 3 +- gcc/config/nios2/nios2-protos.h | 4 +- gcc/config/nios2/nios2.c | 59 +- gcc/config/nios2/nios2.h | 2 +- gcc/config/nvptx/mkoffload.c | 56 +- gcc/config/nvptx/nvptx.c | 16 +- gcc/config/pa/pa.c | 31 +- gcc/config/pa/pa.h | 2 +- gcc/config/pa/pa.md | 4 +- gcc/config/pdp11/pdp11.c | 29 +- gcc/config/rl78/rl78-c.c | 1 - gcc/config/rl78/rl78.c | 31 +- gcc/config/rl78/rl78.h | 2 +- gcc/config/rs6000/rs6000-c.c | 1 - gcc/config/rs6000/rs6000.c | 34 +- gcc/config/rs6000/rs6000.h | 2 +- gcc/config/rx/rx.c | 15 +- gcc/config/s390/s390-c.c | 1 - gcc/config/s390/s390.c | 59 +- gcc/config/sh/sh-c.c | 1 - gcc/config/sh/sh-mem.cc | 3 - gcc/config/sh/sh.c | 28 +- gcc/config/sh/sh.h | 4 +- gcc/config/sh/sh.md | 6 - gcc/config/sh/sh_optimize_sett_clrt.cc | 12 +- gcc/config/sh/sh_treg_combine.cc | 15 +- gcc/config/sol2-c.c | 3 +- gcc/config/sol2-cxx.c | 3 +- gcc/config/sol2-stubs.c | 3 +- gcc/config/sol2.c | 3 +- gcc/config/sparc/sparc-c.c | 1 - gcc/config/sparc/sparc.c | 34 +- gcc/config/sparc/sparc.h | 2 +- gcc/config/spu/spu-c.c | 1 - gcc/config/spu/spu.c | 22 +- gcc/config/stormy16/stormy16.c | 23 +- gcc/config/stormy16/stormy16.h | 2 +- gcc/config/tilegx/mul-tables.c | 6 +- gcc/config/tilegx/tilegx-c.c | 1 - gcc/config/tilegx/tilegx.c | 26 +- gcc/config/tilegx/tilegx.h | 4 +- gcc/config/tilepro/mul-tables.c | 6 +- gcc/config/tilepro/tilepro-c.c | 1 - gcc/config/tilepro/tilepro.c | 26 +- gcc/config/tilepro/tilepro.h | 4 +- gcc/config/v850/v850-c.c | 1 - gcc/config/v850/v850.c | 28 +- gcc/config/v850/v850.h | 2 +- gcc/config/vax/vax.c | 24 +- gcc/config/visium/visium.c | 21 +- gcc/config/vms/vms-c.c | 1 - gcc/config/vms/vms.c | 3 +- gcc/config/vxworks.c | 1 - gcc/config/xtensa/xtensa.c | 63 +- gcc/config/xtensa/xtensa.h | 2 +- gcc/convert.c | 1 - gcc/coverage.c | 9 +- gcc/cp/ChangeLog | 74 ++ gcc/cp/call.c | 1 - gcc/cp/class.c | 3 +- gcc/cp/constexpr.c | 3 +- gcc/cp/cp-array-notation.c | 3 +- gcc/cp/cp-gimplify.c | 18 +- gcc/cp/cp-lang.c | 1 - gcc/cp/cp-objcp-common.c | 1 - gcc/cp/cp-ubsan.c | 15 +- gcc/cp/cvt.c | 1 - gcc/cp/decl.c | 3 +- gcc/cp/decl2.c | 5 +- gcc/cp/dump.c | 1 - gcc/cp/error.c | 1 - gcc/cp/except.c | 1 - gcc/cp/expr.c | 1 - gcc/cp/friend.c | 1 - gcc/cp/init.c | 1 - gcc/cp/lambda.c | 3 +- gcc/cp/lex.c | 1 - gcc/cp/mangle.c | 1 - gcc/cp/method.c | 1 - gcc/cp/name-lookup.c | 1 - gcc/cp/optimize.c | 1 - gcc/cp/parser.c | 1 - gcc/cp/pt.c | 38 +- gcc/cp/ptree.c | 1 - gcc/cp/repo.c | 1 - gcc/cp/rtti.c | 1 - gcc/cp/search.c | 1 - gcc/cp/semantics.c | 1 - gcc/cp/tree.c | 7 +- gcc/cp/typeck.c | 11 +- gcc/cp/typeck2.c | 1 - gcc/cppbuiltin.c | 1 - gcc/cprop.c | 28 +- gcc/cse.c | 62 +- gcc/cselib.c | 11 +- gcc/data-streamer-in.c | 14 +- gcc/data-streamer-out.c | 14 +- gcc/data-streamer.c | 14 +- gcc/dbxout.c | 2 - gcc/dce.c | 12 +- gcc/ddg.c | 15 +- gcc/debug.c | 1 - gcc/defaults.h | 18 +- gcc/df-core.c | 12 +- gcc/df-problems.c | 12 +- gcc/df-scan.c | 15 +- gcc/df.h | 6 - gcc/dfp.c | 1 - gcc/doc/fragments.texi | 2 +- gcc/doc/install.texi | 2 +- gcc/doc/invoke.texi | 20 +- gcc/doc/tm.texi | 10 +- gcc/doc/tm.texi.in | 4 +- gcc/dojump.c | 11 +- gcc/dominance.c | 9 +- gcc/domwalk.c | 8 +- gcc/double-int.c | 1 - gcc/dse.c | 20 +- gcc/dumpfile.c | 3 +- gcc/dwarf2asm.c | 1 - gcc/dwarf2cfi.c | 2 - gcc/dwarf2out.c | 2 - gcc/emit-rtl.c | 21 +- gcc/et-forest.c | 4 +- gcc/except.c | 22 +- gcc/explow.c | 79 +- gcc/expmed.c | 65 +- gcc/expr.c | 61 +- gcc/expr.h | 1 - gcc/final.c | 15 +- gcc/fixed-value.c | 1 - gcc/flags.h | 3 - gcc/fold-const.c | 48 +- gcc/fortran/ChangeLog | 83 ++ gcc/fortran/arith.c | 2 +- gcc/fortran/array.c | 1 + gcc/fortran/check.c | 2 +- gcc/fortran/convert.c | 3 +- gcc/fortran/cpp.c | 1 - gcc/fortran/decl.c | 3 +- gcc/fortran/error.c | 2 +- gcc/fortran/expr.c | 2 +- gcc/fortran/f95-lang.c | 3 +- gcc/fortran/frontend-passes.c | 2 +- gcc/fortran/interface.c | 2 +- gcc/fortran/intrinsic.c | 2 +- gcc/fortran/io.c | 124 +- gcc/fortran/iresolve.c | 3 +- gcc/fortran/match.c | 2 +- gcc/fortran/module.c | 3 +- gcc/fortran/openmp.c | 1 - gcc/fortran/options.c | 3 +- gcc/fortran/parse.c | 2 +- gcc/fortran/primary.c | 2 +- gcc/fortran/resolve.c | 11 +- gcc/fortran/scanner.c | 2 +- gcc/fortran/simplify.c | 1 - gcc/fortran/symbol.c | 2 +- gcc/fortran/target-memory.c | 2 - gcc/fortran/trans-array.c | 57 +- gcc/fortran/trans-common.c | 1 - gcc/fortran/trans-const.c | 3 +- gcc/fortran/trans-decl.c | 53 +- gcc/fortran/trans-expr.c | 23 +- gcc/fortran/trans-intrinsic.c | 1 - gcc/fortran/trans-io.c | 3 +- gcc/fortran/trans-openmp.c | 3 +- gcc/fortran/trans-stmt.c | 3 +- gcc/fortran/trans-types.c | 1 - gcc/fortran/trans.c | 3 +- gcc/fortran/trans.h | 3 + gcc/function.c | 50 +- gcc/fwprop.c | 20 +- gcc/gcc-plugin.h | 7 +- gcc/gcse-common.c | 5 +- gcc/gcse.c | 97 +- gcc/genattrtab.c | 10 +- gcc/genautomata.c | 2 - gcc/genconditions.c | 2 + gcc/genemit.c | 14 +- gcc/generic-match-head.c | 21 +- gcc/gengtype.c | 20 +- gcc/genmatch.c | 781 +++++++----- gcc/genopinit.c | 21 +- gcc/genoutput.c | 22 +- gcc/genpeep.c | 15 +- gcc/genpreds.c | 24 +- gcc/genrecog.c | 14 +- gcc/gentarget-def.c | 7 + gcc/ggc-page.c | 7 +- gcc/gimple-builder.c | 14 +- gcc/gimple-expr.c | 16 +- gcc/gimple-fold.c | 22 +- gcc/gimple-iterator.c | 20 +- gcc/gimple-laddress.c | 137 ++ gcc/gimple-low.c | 14 +- gcc/gimple-match-head.c | 21 +- gcc/gimple-pretty-print.c | 19 +- gcc/gimple-ssa-isolate-paths.c | 34 +- gcc/gimple-ssa-strength-reduction.c | 23 +- gcc/gimple-ssa.h | 1 - gcc/gimple-streamer-in.c | 21 +- gcc/gimple-streamer-out.c | 14 +- gcc/gimple-streamer.h | 3 - gcc/gimple-walk.c | 12 +- gcc/gimple.c | 23 +- gcc/gimple.h | 3 + gcc/gimplify-me.c | 18 +- gcc/gimplify.c | 20 +- gcc/go/ChangeLog | 6 + gcc/go/go-backend.c | 1 - gcc/go/go-gcc.cc | 3 +- gcc/go/go-lang.c | 3 +- gcc/godump.c | 3 +- gcc/graph.c | 8 +- gcc/graphite-blocking.c | 17 +- gcc/graphite-dependences.c | 19 +- gcc/graphite-interchange.c | 19 +- gcc/graphite-isl-ast-to-gimple.c | 19 +- gcc/graphite-optimize-isl.c | 19 +- gcc/graphite-poly.c | 19 +- gcc/graphite-scop-detection.c | 23 +- gcc/graphite-sese-to-poly.c | 26 +- gcc/graphite.c | 19 +- gcc/haifa-sched.c | 11 +- gcc/hooks.c | 12 +- gcc/hooks.h | 4 +- gcc/hw-doloop.c | 16 +- gcc/ifcvt.c | 22 +- gcc/init-regs.c | 13 +- gcc/internal-fn.c | 29 +- gcc/ipa-chkp.c | 15 +- gcc/ipa-comdats.c | 1 - gcc/ipa-cp.c | 9 +- gcc/ipa-devirt.c | 15 +- gcc/ipa-icf-gimple.c | 19 +- gcc/ipa-icf.c | 23 +- gcc/ipa-inline-analysis.c | 22 +- gcc/ipa-inline-transform.c | 1 - gcc/ipa-inline.c | 16 +- gcc/ipa-polymorphic-call.c | 15 +- gcc/ipa-profile.c | 16 +- gcc/ipa-prop.c | 24 +- gcc/ipa-pure-const.c | 16 +- gcc/ipa-ref.c | 3 +- gcc/ipa-reference.c | 16 +- gcc/ipa-split.c | 23 +- gcc/ipa-utils.c | 17 +- gcc/ipa-visibility.c | 1 - gcc/ipa.c | 14 +- gcc/ira-build.c | 13 +- gcc/ira-color.c | 18 +- gcc/ira-conflicts.c | 13 +- gcc/ira-costs.c | 14 +- gcc/ira-emit.c | 19 +- gcc/ira-int.h | 4 - gcc/ira-lives.c | 30 +- gcc/ira.c | 19 +- gcc/java/ChangeLog | 21 + gcc/java/boehm.c | 3 +- gcc/java/builtins.c | 4 +- gcc/java/class.c | 3 +- gcc/java/constants.c | 1 - gcc/java/decl.c | 3 +- gcc/java/except.c | 1 - gcc/java/expr.c | 1 - gcc/java/java-gimplify.c | 17 +- gcc/java/jcf-dump.c | 3 +- gcc/java/jcf-io.c | 3 +- gcc/java/jcf-parse.c | 3 +- gcc/java/jvgenmain.c | 3 +- gcc/java/lang.c | 1 - gcc/java/mangle.c | 3 +- gcc/java/mangle_name.c | 3 +- gcc/java/resource.c | 3 +- gcc/java/typeck.c | 3 +- gcc/java/verify-glue.c | 3 +- gcc/jit/ChangeLog | 39 + gcc/jit/dummy-frontend.c | 16 +- gcc/jit/jit-common.h | 4 +- gcc/jit/jit-playback.c | 5 +- gcc/jit/jit-recording.h | 3 + gcc/jit/libgccjit.c | 25 +- gcc/jump.c | 11 +- gcc/langhooks.c | 2 - gcc/lcm.c | 9 +- gcc/loop-doloop.c | 64 +- gcc/loop-init.c | 30 +- gcc/loop-invariant.c | 26 +- gcc/loop-iv.c | 13 +- gcc/loop-unroll.c | 9 +- gcc/lower-subreg.c | 48 +- gcc/lra-assigns.c | 16 +- gcc/lra-coalesce.c | 16 +- gcc/lra-constraints.c | 33 +- gcc/lra-eliminations.c | 15 +- gcc/lra-int.h | 16 +- gcc/lra-lives.c | 44 +- gcc/lra-remat.c | 16 +- gcc/lra-spills.c | 16 +- gcc/lra.c | 30 +- gcc/lto-cgraph.c | 16 +- gcc/lto-compress.c | 14 +- gcc/lto-opts.c | 16 +- gcc/lto-section-in.c | 15 +- gcc/lto-section-out.c | 16 +- gcc/lto-streamer-in.c | 22 +- gcc/lto-streamer-out.c | 22 +- gcc/lto-streamer.c | 15 +- gcc/lto-streamer.h | 2 - gcc/lto/ChangeLog | 20 + gcc/lto/lto-lang.c | 17 +- gcc/lto/lto-object.c | 16 +- gcc/lto/lto-partition.c | 18 +- gcc/lto/lto-symtab.c | 18 +- gcc/lto/lto.c | 19 +- gcc/match.pd | 102 +- gcc/mcf.c | 7 +- gcc/mode-switching.c | 12 +- gcc/modulo-sched.c | 25 +- gcc/objc/ChangeLog | 11 + gcc/objc/objc-act.c | 3 +- gcc/objc/objc-encoding.c | 3 +- gcc/objc/objc-gnu-runtime-abi-01.c | 3 +- gcc/objc/objc-lang.c | 3 +- gcc/objc/objc-map.c | 3 +- gcc/objc/objc-next-runtime-abi-01.c | 3 +- gcc/objc/objc-next-runtime-abi-02.c | 3 +- gcc/objc/objc-runtime-shared-support.c | 3 +- gcc/objcp/ChangeLog | 5 + gcc/objcp/objcp-decl.c | 3 +- gcc/objcp/objcp-lang.c | 3 +- gcc/omega.c | 3 +- gcc/omp-low.c | 23 +- gcc/optabs.c | 43 +- gcc/opts-common.c | 2 +- gcc/opts-global.c | 18 +- gcc/passes.c | 24 +- gcc/passes.def | 1 + gcc/plugin.c | 3 +- gcc/postreload-gcse.c | 15 +- gcc/postreload.c | 50 +- gcc/predict.c | 21 +- gcc/print-rtl.c | 2 - gcc/print-tree.c | 1 - gcc/profile.c | 15 +- gcc/read-md.c | 4 +- gcc/real.c | 1 - gcc/realmpfr.c | 3 +- gcc/recog.c | 45 +- gcc/ree.c | 13 +- gcc/reg-stack.c | 14 +- gcc/regcprop.c | 10 +- gcc/reginfo.c | 13 +- gcc/regrename.c | 25 +- gcc/regs.h | 3 - gcc/regset.h | 2 - gcc/regstat.c | 10 +- gcc/reload.c | 58 +- gcc/reload1.c | 52 +- gcc/reorg.c | 14 +- gcc/resource.c | 12 +- gcc/resource.h | 3 - gcc/rtl-chkp.c | 14 +- gcc/rtl.h | 96 +- gcc/rtlanal.c | 66 +- gcc/rtlhooks.c | 4 +- gcc/sanopt.c | 16 +- gcc/sched-deps.c | 23 +- gcc/sched-ebb.c | 11 +- gcc/sched-int.h | 4 - gcc/sched-rgn.c | 11 +- gcc/sched-vis.c | 11 +- gcc/sdbout.c | 1 - gcc/sel-sched-dump.c | 14 +- gcc/sel-sched-dump.h | 1 - gcc/sel-sched-ir.c | 16 +- gcc/sel-sched-ir.h | 6 - gcc/sel-sched.c | 24 +- gcc/sese.c | 22 +- gcc/shrink-wrap.c | 15 +- gcc/simplify-rtx.c | 18 +- gcc/{gstab.h => ssa.h} | 27 +- gcc/stack-ptr-mod.c | 13 +- gcc/stmt.c | 23 +- gcc/stor-layout.c | 2 - gcc/store-motion.c | 15 +- gcc/stringpool.c | 3 +- gcc/symtab.c | 18 +- gcc/target-globals.c | 9 +- gcc/target-insns.def | 32 + gcc/target.def | 15 +- gcc/targhooks.c | 8 +- gcc/testsuite/ChangeLog | 290 ++++- gcc/testsuite/g++.dg/abi/abi-tag15.C | 3 + gcc/testsuite/g++.dg/cpp0x/auto45.C | 21 + gcc/testsuite/g++.dg/cpp0x/vt-65790.C | 35 + gcc/testsuite/g++.dg/debug/dwarf2/accessibility1.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/auto1.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/block.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/cdtor-1.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/deallocator.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/enum1.C | 2 +- .../g++.dg/debug/dwarf2/explicit-constructor.C | 2 +- .../g++.dg/debug/dwarf2/global-used-types-1.C | 2 +- .../g++.dg/debug/dwarf2/imported-module-2.C | 2 +- .../g++.dg/debug/dwarf2/imported-module-3.C | 2 +- .../g++.dg/debug/dwarf2/imported-module-4.C | 2 +- .../g++.dg/debug/dwarf2/integer-typedef.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/lambda1.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/lang-cpp98.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/lineno-simple1.C | 2 +- .../g++.dg/debug/dwarf2/local-var-in-contructor.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/localclass3.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/namespace-1.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/namespace-2.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/nested-1.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/nested-2.C | 2 +- .../g++.dg/debug/dwarf2/non-virtual-thunk.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/pr44641.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/pr46527.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/pr54508.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/pubnames-1.C | 2 +- .../g++.dg/debug/dwarf2/redeclaration-1.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/self-ref-1.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/self-ref-2.C | 2 +- .../g++.dg/debug/dwarf2/static-data-member1.C | 2 +- .../g++.dg/debug/dwarf2/static-local-var-in-ctor.C | 2 +- .../g++.dg/debug/dwarf2/template-func-params-1.C | 2 +- .../g++.dg/debug/dwarf2/template-func-params-2.C | 2 +- .../g++.dg/debug/dwarf2/template-func-params-3.C | 2 +- .../g++.dg/debug/dwarf2/template-func-params-4.C | 2 +- .../g++.dg/debug/dwarf2/template-func-params-5.C | 2 +- .../g++.dg/debug/dwarf2/template-func-params-6.C | 2 +- .../g++.dg/debug/dwarf2/template-func-params-7.C | 2 +- .../g++.dg/debug/dwarf2/template-params-1.C | 2 +- .../g++.dg/debug/dwarf2/template-params-10.C | 2 +- .../g++.dg/debug/dwarf2/template-params-11.C | 2 +- .../g++.dg/debug/dwarf2/template-params-2.C | 2 +- .../g++.dg/debug/dwarf2/template-params-3.C | 2 +- .../g++.dg/debug/dwarf2/template-params-4.C | 2 +- .../g++.dg/debug/dwarf2/template-params-5.C | 2 +- .../g++.dg/debug/dwarf2/template-params-6.C | 2 +- .../g++.dg/debug/dwarf2/template-params-7.C | 2 +- .../g++.dg/debug/dwarf2/template-params-8.C | 2 +- .../g++.dg/debug/dwarf2/template-params-9.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/typedef1.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/typedef2.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/typedef3.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/typedef4.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/typedef5.C | 2 +- gcc/testsuite/g++.dg/debug/dwarf2/typedef6.C | 2 +- gcc/testsuite/g++.dg/other/dump-ada-spec-8.C | 12 + .../other/{dump-ada-spec-3.C => dump-ada-spec-9.C} | 9 +- gcc/testsuite/g++.dg/vect/simd-clone-1.cc | 55 + gcc/testsuite/g++.dg/vect/vect.exp | 2 +- gcc/testsuite/gcc.c-torture/execute/pr65956.c | 67 + gcc/testsuite/gcc.c-torture/execute/pr66757.c | 15 + gcc/testsuite/gcc.dg/dx-test.c | 5 + gcc/testsuite/gcc.dg/plugin/wide-int_plugin.c | 4 +- gcc/testsuite/gcc.dg/torture/pr66733-1.c | 28 + gcc/testsuite/gcc.dg/torture/pr66733-2.c | 46 + gcc/testsuite/gcc.dg/torture/pr66759.c | 11 + gcc/testsuite/gcc.dg/torture/pr66793.c | 26 + gcc/testsuite/gcc.dg/torture/pr66794.c | 22 + gcc/testsuite/gcc.dg/vect/pr48052.c | 6 +- gcc/testsuite/gcc.dg/vect/tree-vect.h | 8 +- gcc/testsuite/gcc.dg/vect/vect-126.c | 63 + .../gcc.dg/vect/vect-over-widen-3-big-array.c | 2 +- gcc/testsuite/gcc.target/aarch64/fnmul-1.c | 16 + gcc/testsuite/gcc.target/aarch64/fnmul-2.c | 18 + gcc/testsuite/gcc.target/aarch64/fnmul-3.c | 16 + gcc/testsuite/gcc.target/aarch64/fnmul-4.c | 16 + gcc/testsuite/gcc.target/arm/aapcs/align1.c | 29 + gcc/testsuite/gcc.target/arm/aapcs/align2.c | 30 + gcc/testsuite/gcc.target/arm/aapcs/align3.c | 42 + gcc/testsuite/gcc.target/arm/aapcs/align4.c | 29 + gcc/testsuite/gcc.target/arm/aapcs/align_rec1.c | 36 + gcc/testsuite/gcc.target/arm/aapcs/align_rec2.c | 41 + gcc/testsuite/gcc.target/arm/aapcs/align_rec3.c | 43 + gcc/testsuite/gcc.target/arm/aapcs/align_rec4.c | 33 + gcc/testsuite/gcc.target/arm/aapcs/align_vaarg1.c | 36 + gcc/testsuite/gcc.target/arm/aapcs/align_vaarg2.c | 30 + gcc/testsuite/gcc.target/arm/attr_arm.c | 6 +- gcc/testsuite/gcc.target/arm/attr_thumb-static.c | 5 +- gcc/testsuite/gcc.target/arm/attr_thumb.c | 6 +- gcc/testsuite/gcc.target/arm/flip-thumb.c | 4 +- gcc/testsuite/gcc.target/arm/unsigned-float.c | 3 +- gcc/testsuite/gcc.target/hppa/shadd-1.c | 2 +- gcc/testsuite/gcc.target/i386/bt-3.c | 14 + gcc/testsuite/gcc.target/i386/{bt-1.c => bt-4.c} | 7 +- gcc/testsuite/gcc.target/i386/pr37870.c | 2 +- gcc/testsuite/gcc.target/i386/pr53383-1.c | 8 + gcc/testsuite/gcc.target/i386/pr53383-2.c | 8 + gcc/testsuite/gcc.target/i386/pr53383-3.c | 8 + gcc/testsuite/gcc.target/i386/pr66334.c | 41 + .../gcc.target/i386/{addr-sel-1.c => pr66749.c} | 5 +- .../gcc.target/i386/{vect-args.c => pr66806.c} | 9 +- gcc/testsuite/gcc.target/i386/pr66814.c | 4 + .../torture/pr8081.c => gcc.target/i386/pr66817.c} | 4 +- gcc/testsuite/gcc.target/i386/pr66818.c | 5 + gcc/testsuite/gcc.target/i386/readeflags-1.c | 2 + gcc/testsuite/gcc.target/i386/writeeflags-1.c | 2 + gcc/testsuite/gcc.target/mips/branch-10.c | 2 +- gcc/testsuite/gcc.target/mips/branch-11.c | 2 +- gcc/testsuite/gcc.target/mips/branch-12.c | 2 +- gcc/testsuite/gcc.target/mips/branch-13.c | 2 +- gcc/testsuite/gcc.target/mips/branch-2.c | 2 +- gcc/testsuite/gcc.target/mips/branch-3.c | 2 +- gcc/testsuite/gcc.target/mips/branch-4.c | 2 +- gcc/testsuite/gcc.target/mips/branch-5.c | 2 +- gcc/testsuite/gcc.target/mips/branch-6.c | 2 +- gcc/testsuite/gcc.target/mips/branch-7.c | 2 +- gcc/testsuite/gcc.target/mips/branch-8.c | 2 +- gcc/testsuite/gcc.target/mips/branch-9.c | 2 +- gcc/testsuite/gcc.target/mips/branch-helper.h | 20 + gcc/testsuite/gcc.target/mips/call-1.c | 8 +- gcc/testsuite/gcc.target/mips/call-5.c | 4 +- gcc/testsuite/gcc.target/mips/call-6.c | 4 +- gcc/testsuite/gcc.target/mips/near-far-3.c | 2 +- gcc/testsuite/gcc.target/mips/no-smartmips-lwxs.c | 2 +- gcc/testsuite/gcc.target/mips/stack-1.c | 4 +- .../mips/{branch-7.c => umips-branch-10.c} | 4 +- .../mips/{branch-8.c => umips-branch-11.c} | 6 +- .../mips/{branch-9.c => umips-branch-12.c} | 4 +- .../mips/{branch-10.c => umips-branch-13.c} | 6 +- .../mips/{branch-11.c => umips-branch-14.c} | 4 +- .../mips/{branch-12.c => umips-branch-15.c} | 6 +- .../mips/{branch-13.c => umips-branch-16.c} | 4 +- .../mips/{branch-2.c => umips-branch-5.c} | 4 +- .../mips/{branch-3.c => umips-branch-6.c} | 4 +- .../mips/{branch-4.c => umips-branch-7.c} | 6 +- .../mips/{branch-5.c => umips-branch-8.c} | 4 +- .../mips/{branch-4.c => umips-branch-9.c} | 6 +- gcc/testsuite/gcc.target/nios2/gprel-offset.c | 20 + gcc/testsuite/gcc.target/powerpc/shift-int.c | 23 + gcc/testsuite/gfortran.dg/alloc_comp_class_3.f03 | 55 + gcc/testsuite/gfortran.dg/alloc_comp_class_4.f03 | 105 ++ .../gfortran.dg/allocate_with_source_9.f08 | 29 + gcc/testsuite/gfortran.dg/iomsg_2.f90 | 44 + gcc/testsuite/gfortran.dg/pr66725.f90 | 31 + gcc/testsuite/jit.dg/all-non-failing-tests.h | 10 + ...error-gcc_jit_block_end_with_switch-NULL-case.c | 20 +- ...error-gcc_jit_context_new_field-opaque-struct.c | 31 + ...rror-gcc_jit_context_new_global-opaque-struct.c | 32 + ...ror-gcc_jit_function_new_local-opaque-struct.c} | 34 +- .../jit.dg/test-error-mismatching-types-in-call.c | 2 +- gcc/testsuite/jit.dg/test-pr66779.c | 143 +++ gcc/timevar.def | 1 + gcc/toplev.c | 28 +- gcc/tracer.c | 17 +- gcc/trans-mem.c | 21 +- gcc/tree-affine.c | 15 +- gcc/tree-browser.c | 3 +- gcc/tree-call-cdce.c | 18 +- gcc/tree-cfg.c | 56 +- gcc/tree-cfg.h | 1 + gcc/tree-cfgcleanup.c | 23 +- gcc/tree-chkp-opt.c | 26 +- gcc/tree-chkp.c | 26 +- gcc/tree-chrec.c | 10 +- gcc/tree-complex.c | 23 +- gcc/tree-core.h | 2 + gcc/tree-data-ref.c | 17 +- gcc/tree-dfa.c | 23 +- gcc/tree-diagnostic.c | 3 +- gcc/tree-dump.c | 1 - gcc/tree-eh.c | 23 +- gcc/tree-emutls.c | 22 +- gcc/tree-if-conv.c | 23 +- gcc/tree-inline.c | 24 +- gcc/tree-into-ssa.c | 23 +- gcc/tree-iterator.c | 3 +- gcc/tree-loop-distribution.c | 22 +- gcc/tree-nested.c | 16 +- gcc/tree-nrv.c | 20 +- gcc/tree-object-size.c | 23 +- gcc/tree-outof-ssa.c | 25 +- gcc/tree-parloops.c | 110 +- gcc/tree-pass.h | 1 + gcc/tree-phinodes.c | 20 +- gcc/tree-predcom.c | 23 +- gcc/tree-pretty-print.c | 6 +- gcc/tree-profile.c | 20 +- gcc/tree-scalar-evolution.c | 22 +- gcc/tree-sra.c | 28 +- gcc/tree-ssa-address.c | 15 +- gcc/tree-ssa-alias.c | 20 +- gcc/tree-ssa-ccp.c | 39 +- gcc/tree-ssa-coalesce.c | 23 +- gcc/tree-ssa-copy.c | 22 +- gcc/tree-ssa-copyrename.c | 22 +- gcc/tree-ssa-dce.c | 23 +- gcc/tree-ssa-dom.c | 22 +- gcc/tree-ssa-dse.c | 24 +- gcc/tree-ssa-forwprop.c | 23 +- gcc/tree-ssa-ifcombine.c | 21 +- gcc/tree-ssa-live.c | 26 +- gcc/tree-ssa-loop-ch.c | 16 +- gcc/tree-ssa-loop-im.c | 22 +- gcc/tree-ssa-loop-ivcanon.c | 22 +- gcc/tree-ssa-loop-ivopts.c | 25 +- gcc/tree-ssa-loop-manip.c | 73 +- gcc/tree-ssa-loop-manip.h | 1 + gcc/tree-ssa-loop-niter.c | 23 +- gcc/tree-ssa-loop-prefetch.c | 26 +- gcc/tree-ssa-loop-unswitch.c | 20 +- gcc/tree-ssa-loop.c | 16 +- gcc/tree-ssa-math-opts.c | 24 +- gcc/tree-ssa-operands.c | 21 +- gcc/tree-ssa-phiopt.c | 23 +- gcc/tree-ssa-phiprop.c | 22 +- gcc/tree-ssa-pre.c | 23 +- gcc/tree-ssa-propagate.c | 94 +- gcc/tree-ssa-reassoc.c | 25 +- gcc/tree-ssa-sccvn.c | 23 +- gcc/tree-ssa-scopedtables.c | 1 - gcc/tree-ssa-sink.c | 20 +- gcc/tree-ssa-strlen.c | 24 +- gcc/tree-ssa-structalias.c | 25 +- gcc/tree-ssa-tail-merge.c | 20 +- gcc/tree-ssa-ter.c | 23 +- gcc/tree-ssa-threadedge.c | 22 +- gcc/tree-ssa-threadupdate.c | 20 +- gcc/tree-ssa-uncprop.c | 20 +- gcc/tree-ssa-uninit.c | 21 +- gcc/tree-ssa.c | 22 +- gcc/tree-ssanames.c | 20 +- gcc/tree-stdarg.c | 24 +- gcc/tree-streamer-in.c | 16 +- gcc/tree-streamer-out.c | 15 +- gcc/tree-streamer.c | 14 +- gcc/tree-switch-conversion.c | 28 +- gcc/tree-tailcall.c | 22 +- gcc/tree-vect-data-refs.c | 23 +- gcc/tree-vect-generic.c | 21 +- gcc/tree-vect-loop-manip.c | 24 +- gcc/tree-vect-loop.c | 23 +- gcc/tree-vect-patterns.c | 21 +- gcc/tree-vect-slp.c | 21 +- gcc/tree-vect-stmts.c | 206 +-- gcc/tree-vectorizer.c | 20 +- gcc/tree-vrp.c | 23 +- gcc/tree.c | 38 +- gcc/tree.h | 1 + gcc/tsan.c | 21 +- gcc/ubsan.c | 21 +- gcc/valtrack.c | 15 +- gcc/valtrack.h | 4 - gcc/value-prof.c | 23 +- gcc/var-tracking.c | 11 +- gcc/varasm.c | 9 +- gcc/varpool.c | 14 +- gcc/vmsdbgout.c | 2 - gcc/vtable-verify.c | 22 +- gcc/web.c | 12 +- gcc/wide-int.cc | 3 +- gcc/xcoffout.c | 1 - libcpp/ChangeLog | 5 + libcpp/include/line-map.h | 2 +- libgfortran/ChangeLog | 7 + libgfortran/Makefile.am | 6 - libgfortran/Makefile.in | 81 +- libgfortran/fmain.c | 24 - libgomp/ChangeLog | 29 + libgomp/libgomp.h | 3 + libgomp/plugin/plugin-nvptx.c | 5 + .../libgomp.c/parloops-exit-first-loop-alt-3.c | 5 + .../libgomp.c/parloops-exit-first-loop-alt.c | 28 +- libgomp/testsuite/libgomp.oacc-c++/c++.exp | 6 + libgomp/testsuite/libgomp.oacc-c/c.exp | 6 + libgomp/testsuite/libgomp.oacc-fortran/fortran.exp | 6 + libiberty/ChangeLog | 5 + libiberty/getruntime.c | 6 +- libitm/ChangeLog | 5 + libitm/config/powerpc/sjlj.S | 8 +- liboffloadmic/ChangeLog | 6 + liboffloadmic/plugin/Makefile.am | 2 +- liboffloadmic/plugin/Makefile.in | 2 +- libstdc++-v3/ChangeLog | 37 + libstdc++-v3/doc/html/manual/bugs.html | 3 + libstdc++-v3/doc/html/manual/configure.html | 5 +- libstdc++-v3/doc/html/manual/status.html | 14 +- libstdc++-v3/doc/xml/manual/status_cxx2017.xml | 8 +- libstdc++-v3/include/Makefile.am | 1 + libstdc++-v3/include/Makefile.in | 1 + libstdc++-v3/include/bits/hashtable.h | 19 +- libstdc++-v3/include/experimental/propagate_const | 535 ++++++++ .../unordered_set/max_load_factor/robustness.cc | 34 +- .../propagate_const/assignment/copy.cc} | 20 +- .../swap.cc => propagate_const/assignment/move.cc} | 62 +- .../assignment/move_neg.cc} | 32 +- .../propagate_const/cons/copy.cc} | 18 +- .../propagate_const/cons/default.cc} | 23 +- .../hash/hash.cc => propagate_const/cons/move.cc} | 39 +- .../swap.cc => propagate_const/cons/move_neg.cc} | 57 +- .../make_observer.cc => propagate_const/hash/1.cc} | 17 +- .../experimental/propagate_const/observers/1.cc | 65 + .../experimental/propagate_const/relops/1.cc | 67 + .../4.cc => propagate_const/requirements1.cc} | 27 +- .../hash.cc => propagate_const/requirements2.cc} | 32 +- .../1.cc => propagate_const/requirements3.cc} | 17 +- .../requirements4.cc} | 21 +- .../1.cc => propagate_const/requirements5.cc} | 17 +- .../make_observer.cc => propagate_const/swap/1.cc} | 19 +- .../{any => propagate_const}/typedefs.cc | 16 +- 874 files changed, 9800 insertions(+), 7979 deletions(-) copy gcc/{config/s390/s390intrin.h => backend.h} (58%) create mode 100644 gcc/gimple-laddress.c copy gcc/{gstab.h => ssa.h} (63%) create mode 100644 gcc/testsuite/g++.dg/abi/abi-tag15.C create mode 100644 gcc/testsuite/g++.dg/cpp0x/auto45.C create mode 100644 gcc/testsuite/g++.dg/cpp0x/vt-65790.C create mode 100644 gcc/testsuite/g++.dg/other/dump-ada-spec-8.C copy gcc/testsuite/g++.dg/other/{dump-ada-spec-3.C => dump-ada-spec-9.C} (74%) create mode 100644 gcc/testsuite/g++.dg/vect/simd-clone-1.cc create mode 100644 gcc/testsuite/gcc.c-torture/execute/pr65956.c create mode 100644 gcc/testsuite/gcc.c-torture/execute/pr66757.c create mode 100644 gcc/testsuite/gcc.dg/dx-test.c create mode 100644 gcc/testsuite/gcc.dg/torture/pr66733-1.c create mode 100644 gcc/testsuite/gcc.dg/torture/pr66733-2.c create mode 100644 gcc/testsuite/gcc.dg/torture/pr66759.c create mode 100644 gcc/testsuite/gcc.dg/torture/pr66793.c create mode 100644 gcc/testsuite/gcc.dg/torture/pr66794.c create mode 100644 gcc/testsuite/gcc.dg/vect/vect-126.c create mode 100644 gcc/testsuite/gcc.target/aarch64/fnmul-1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/fnmul-2.c create mode 100644 gcc/testsuite/gcc.target/aarch64/fnmul-3.c create mode 100644 gcc/testsuite/gcc.target/aarch64/fnmul-4.c create mode 100644 gcc/testsuite/gcc.target/arm/aapcs/align1.c create mode 100644 gcc/testsuite/gcc.target/arm/aapcs/align2.c create mode 100644 gcc/testsuite/gcc.target/arm/aapcs/align3.c create mode 100644 gcc/testsuite/gcc.target/arm/aapcs/align4.c create mode 100644 gcc/testsuite/gcc.target/arm/aapcs/align_rec1.c create mode 100644 gcc/testsuite/gcc.target/arm/aapcs/align_rec2.c create mode 100644 gcc/testsuite/gcc.target/arm/aapcs/align_rec3.c create mode 100644 gcc/testsuite/gcc.target/arm/aapcs/align_rec4.c create mode 100644 gcc/testsuite/gcc.target/arm/aapcs/align_vaarg1.c create mode 100644 gcc/testsuite/gcc.target/arm/aapcs/align_vaarg2.c create mode 100644 gcc/testsuite/gcc.target/i386/bt-3.c copy gcc/testsuite/gcc.target/i386/{bt-1.c => bt-4.c} (54%) create mode 100644 gcc/testsuite/gcc.target/i386/pr53383-1.c create mode 100644 gcc/testsuite/gcc.target/i386/pr53383-2.c create mode 100644 gcc/testsuite/gcc.target/i386/pr53383-3.c create mode 100644 gcc/testsuite/gcc.target/i386/pr66334.c copy gcc/testsuite/gcc.target/i386/{addr-sel-1.c => pr66749.c} (69%) copy gcc/testsuite/gcc.target/i386/{vect-args.c => pr66806.c} (89%) create mode 100644 gcc/testsuite/gcc.target/i386/pr66814.c copy gcc/testsuite/{gcc.dg/torture/pr8081.c => gcc.target/i386/pr66817.c} (80%) create mode 100644 gcc/testsuite/gcc.target/i386/pr66818.c copy gcc/testsuite/gcc.target/mips/{branch-7.c => umips-branch-10.c} (84%) copy gcc/testsuite/gcc.target/mips/{branch-8.c => umips-branch-11.c} (60%) copy gcc/testsuite/gcc.target/mips/{branch-9.c => umips-branch-12.c} (89%) copy gcc/testsuite/gcc.target/mips/{branch-10.c => umips-branch-13.c} (59%) copy gcc/testsuite/gcc.target/mips/{branch-11.c => umips-branch-14.c} (88%) copy gcc/testsuite/gcc.target/mips/{branch-12.c => umips-branch-15.c} (59%) copy gcc/testsuite/gcc.target/mips/{branch-13.c => umips-branch-16.c} (88%) copy gcc/testsuite/gcc.target/mips/{branch-2.c => umips-branch-5.c} (80%) copy gcc/testsuite/gcc.target/mips/{branch-3.c => umips-branch-6.c} (79%) copy gcc/testsuite/gcc.target/mips/{branch-4.c => umips-branch-7.c} (57%) copy gcc/testsuite/gcc.target/mips/{branch-5.c => umips-branch-8.c} (84%) copy gcc/testsuite/gcc.target/mips/{branch-4.c => umips-branch-9.c} (57%) create mode 100644 gcc/testsuite/gcc.target/nios2/gprel-offset.c create mode 100644 gcc/testsuite/gcc.target/powerpc/shift-int.c create mode 100644 gcc/testsuite/gfortran.dg/alloc_comp_class_3.f03 create mode 100644 gcc/testsuite/gfortran.dg/alloc_comp_class_4.f03 create mode 100644 gcc/testsuite/gfortran.dg/allocate_with_source_9.f08 create mode 100644 gcc/testsuite/gfortran.dg/iomsg_2.f90 create mode 100644 gcc/testsuite/gfortran.dg/pr66725.f90 create mode 100644 gcc/testsuite/jit.dg/test-error-gcc_jit_context_new_field-opaque-struct.c create mode 100644 gcc/testsuite/jit.dg/test-error-gcc_jit_context_new_global-opaque-struct.c copy gcc/testsuite/jit.dg/{test-error-unterminated-block.c => test-error-gcc_jit_function_new_local-opaque-struct.c} (50%) create mode 100644 gcc/testsuite/jit.dg/test-pr66779.c delete mode 100644 libgfortran/fmain.c create mode 100644 libstdc++-v3/include/experimental/propagate_const copy libstdc++-v3/testsuite/{20_util/duration/literals/65499.cc => experimental/propagate_const/assignment/copy.cc} (77%) copy libstdc++-v3/testsuite/experimental/{memory/observer_ptr/swap/swap.cc => propagate_const/assignment/move.cc} (56%) copy libstdc++-v3/testsuite/experimental/{memory/observer_ptr/hash/hash.cc => propagate_const/assignment/move_neg.cc} (65%) copy libstdc++-v3/testsuite/{20_util/duration/literals/65499.cc => experimental/propagate_const/cons/copy.cc} (76%) copy libstdc++-v3/testsuite/{25_algorithms/is_permutation/64646.cc => experimental/propagate_const/cons/default.cc} (77%) copy libstdc++-v3/testsuite/experimental/{memory/observer_ptr/hash/hash.cc => propagate_const/cons/move.cc} (53%) copy libstdc++-v3/testsuite/experimental/{memory/observer_ptr/swap/swap.cc => propagate_const/cons/move_neg.cc} (52%) copy libstdc++-v3/testsuite/experimental/{memory/observer_ptr/make_observer.cc => propagate_const/hash/1.cc} (72%) create mode 100644 libstdc++-v3/testsuite/experimental/propagate_const/observers/1.cc create mode 100644 libstdc++-v3/testsuite/experimental/propagate_const/relops/1.cc copy libstdc++-v3/testsuite/experimental/{optional/constexpr/observers/4.cc => propagate_const/requirements1.cc} (58%) copy libstdc++-v3/testsuite/experimental/{memory/observer_ptr/hash/hash.cc => propagate_const/requirements2.cc} (64%) copy libstdc++-v3/testsuite/experimental/{optional/constexpr/observers/1.cc => propagate_const/requirements3.cc} (74%) copy libstdc++-v3/testsuite/experimental/{memory/observer_ptr/make_observer.cc => propagate_const/requirements4.cc} (67%) copy libstdc++-v3/testsuite/experimental/{optional/constexpr/observers/1.cc => propagate_const/requirements5.cc} (74%) copy libstdc++-v3/testsuite/experimental/{memory/observer_ptr/make_observer.cc => propagate_const/swap/1.cc} (75%) copy libstdc++-v3/testsuite/experimental/{any => propagate_const}/typedefs.cc (68%)