1. 20 Oct, 2015 1 commit
  2. 19 Oct, 2015 16 commits
    • PR66870 PowerPC64 Enable gold linker with split stack · b2e4c071
      A powerpc-linux/powerpc64-linux biarch compiler can default to either
      -m32 or -m64, and we need to notice both -m32 and -m64 on the gccgo
      command line.  It's also possible to build a -m64 only compiler, so in
      that case we can define TARGET_CAN_SPLIT_STACK.
      
      gcc/
      	PR go/66870
      	* config/rs6000/sysv4.h (TARGET_CAN_SPLIT_STACK_64BIT): Don't define.
      	* config/rs6000/linux64.h (TARGET_CAN_SPLIT_STACK): Define.
      	(TARGET_CAN_SPLIT_STACK_64BIT): Define.
      gcc/go/
      	PR go/66870
      	* gospec.c (saw_opt_m32): Rename to..
      	(is_m64): ..this, initialised by TARGET_CAN_SPLIT_STACK_64BIT.
      	Update uses.
      	(lang_specific_driver): Set is_m64 if OPT_m64, clear if OPT_m32.
      
      From-SVN: r229009
      Alan Modra committed
    • REE: fix uninitialized registers handling · 524d9b4b
      gcc/ChangeLog:
      
      	PR rtl-optimization/66790
      	* df.h (DF_MIR): New macro.
      	(DF_LAST_PROBLEM_PLUS1): Update to be past DF_MIR
      	(DF_MIR_INFO_BB): New macro.
      	(DF_MIR_IN, DF_MIR_OUT): New macros.
      	(struct df_mir_bb_info): New.
      	(df_mir): New macro.
      	(df_mir_add_problem, df_mir_simulate_one_insn): New forward
      	declarations.
      	(df_mir_get_bb_info): New.
      	* df-problems.c (struct df_mir_problem_data): New.
      	(df_mir_free_bb_info, df_mir_alloc, df_mir_reset,
      	df_mir_bb_local_compute, df_mir_local_compute, df_mir_init,
      	df_mir_confluence_0, df_mir_confluence_n,
      	df_mir_transfer_function, df_mir_free, df_mir_top_dump,
      	df_mir_bottom_dump, df_mir_verify_solution_start,
      	df_mir_verify_solution_end): New.
      	(problem_MIR): New.
      	(df_mir_add_problem, df_mir_simulate_one_insn): New.
      	* timevar.def (TV_DF_MIR): New.
      	* ree.c: Include bitmap.h
      	(add_removable_extension): Add an INIT_REGS parameter.  Use it
      	to skip zero-extensions that may get an uninitialized register.
      	(find_removable_extensions): Compute must-initialized registers
      	using the MIR dataflow problem. Update the call to
      	add_removable_extension.
      	(find_and_remove_re): Call df_mir_add_problem.
      
      gcc/testsuite/ChangeLog:
      
      	* gnat.dg/opt50.adb: New test.
      	* gnat.dg/opt50_pkg.adb: New helper.
      	* gnat.dg/opt50_pkg.ads: New helper.
      
      From-SVN: r229008
      Pierre-Marie de Rodat committed
    • mn10300: Use the STC bb-reorder algorithm at -Os · 32308c8d
      For mn10300, STC still gives better results for optimise-for-size than
      "simple" does.  So use STC at -Os as well.
      
      
      2015-10-19  Segher Boessenkool  <segher@kernel.crashing.org>
      
      	* common/config/mn10300/mn10300-common.c
      	(mn10300_option_optimization_table) <OPT_freorder_blocks_algorithm_>:
      	Use REORDER_BLOCKS_ALGORITHM_STC at -Os and up.
      
      From-SVN: r229006
      Segher Boessenkool committed
    • Proposed doc update for Explicit Reg Vars 1/3 · 88f3c6e6
      Proposed doc update for Explicit Reg Vars 1/3
              * doc/extend.texi (Explicit Register Variables): Simplify and
              avoid unnecessary and confusion abbreviations.  Update cross
              references.
              doc/implement-c.tex: Update cross reference.
      
      From-SVN: r229004
      David Wohlferd committed
    • re PR fortran/68019 (ICE on rank mismatch of implied-shape array of user-defined type) · c3fa5d78
      2015-10-19  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/68019
      	* decl.c (add_init_expr_to_sym): Remove an assert() to allow an error
      	message to be issued.
      
      2015-10-19  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/68019
      	* gfortran.dg/pr68019.f90: new test.
      
      From-SVN: r229003
      Steven G. Kargl committed
    • [PATCH] Don't allow FSM threader to create irreducible loops unless it… · a2f6018f
      [PATCH] Don't allow FSM threader to create irreducible loops unless it eliminates a multi-way branch
      
      	* tree-ssa-threadupdate.c (valid_jump_thread_path): Reject paths
      	that create irreducible loops unless the path elimiantes a multiway
      	branch.
      
      From-SVN: r228974
      Jeff Law committed
    • re PR tree-optimization/67975 (Failure to optimise equality between two call sequences) · e6503e0a
      2015-10-19  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/67975
      	* tree-cfg.h (extract_true_false_controlled_edges): Declare.
      	* tree-cfg.c (extract_true_false_controlled_edges): Split out
      	core worker from ...
      	* tree-ssa-loop-im.c (extract_true_false_args_from_phi): ... here.
      	* tree-ssa-sccvn.c (vn_phi_compute_hash): Hash number of args
      	instead of block number for PHIs with two or one args.
      	(vn_phi_eq): Compare edge predicates of PHIs that are in different
      	blocks.
      
      	* gcc.dg/tree-ssa/ssa-fre-50.c: New testcase.
      
      From-SVN: r228971
      Richard Biener committed
    • gimple-fold.c (gimple_phi_nonnegative_warnv_p): New function. · 4534c203
      2015-10-19  Richard Biener  <rguenther@suse.de>
      
      	* gimple-fold.c (gimple_phi_nonnegative_warnv_p): New function.
      	(gimple_stmt_nonnegative_warnv_p): Use it.
      	* match.pd (CPROJ): New operator list.
      	(cproj (complex ...)): Move simplifications from ...
      	* builtins.c (fold_builtin_cproj): ... here.
      
      	* gcc.dg/torture/builtin-cproj-1.c: Skip for -O0.
      
      From-SVN: r228970
      Richard Biener committed
    • Use GET_MODE_BITSIZE to get vector natural alignment · 1c6e3c3e
      Since GET_MODE_ALIGNMENT is defined by psABI and the biggest alignment
      is 4 byte for IA MCU psABI, we should use GET_MODE_BITSIZE for IA MCU
      psABI to get vector natural alignment to check misaligned vector move.
      
      	* config/i386/i386.c (ix86_expand_vector_move): Use
      	GET_MODE_BITSIZE for IA MCU psABI to get vector natural
      	alignment.
      
      From-SVN: r228969
      H.J. Lu committed
    • Replace @optindex with @opindex · 1be8ebde
      	* doc/invoke.texi: Replace @optindex with @opindex.
      
      From-SVN: r228968
      H.J. Lu committed
    • Don't leak ISA to __attribute__ ((target("arch=XXX"))) · 3f11bf19
      When processing __attribute__ ((target("arch=XXX"))), we should clear
      the ISA bits in x_ix86_isa_flags first to avoid leaking ISA from
      command line.
      
      gcc/
      
      	PR target/67995
      	* config/i386/i386.c (ix86_valid_target_attribute_tree): If
      	arch= is set,  clear all bits in x_ix86_isa_flags, except for
      	ISA_64BIT, ABI_64, ABI_X32, and CODE16.
      
      gcc/testsuite/
      
      	PR target/67995
      	* gcc.target/i386/pr67995-1.c: New test.
      	* gcc.target/i386/pr67995-2.c: Likewise.
      	* gcc.target/i386/pr67995-3.c: Likewise.
      
      From-SVN: r228967
      H.J. Lu committed
    • fix date of changelog entry · 7be37b35
      From-SVN: r228966
      Joost VandeVondele committed
    • Fix PR68002, add -fkeep-static-functions · 787da5fd
      gcc/ChangeLog:
      
      2015-10-17  Joost VandeVondele  <vondele@gnu.gcc.org>
      
              PR middle-end/68002
              * common.opt (fkeep-static-functions): New option.
              * doc/invoke.texi: Document it.
              * cgraphunit.c (cgraph_node::finalize_function): Use it.
      
      gcc/testsuite/ChangeLog:
      
      2015-10-17  Joost VandeVondele  <vondele@gnu.gcc.org>
      
              PR middle-end/68002
              * gcc.dg/PR68002.c: New test.
      
      From-SVN: r228965
      Joost VandeVondele committed
    • Remove undefined behaviour from builtins-20.c · 9c99fe75
      builtins-20.c had:
      
            if (cos((y*=2, -fabs(tan(x/-y)))) != cos((y*=2,tan(x/y))))
              link_error ();
      
      which is undefined behaviour.  The test expected that y had the same
      value in x/y and x/-y, but gimplification actually implements the
      "obvious" interpretation, multiplying y by 2, using it for one cos call,
      then multiplying it by 2 again and using it for the other cos call.
      
      The file has other (valid) tests that side-effects don't block
      optimisation, such as:
      
            if (cosf((y*=3, -x)) != cosf((y*=3,x)))
              link_error ();
      
      so this patch simply removes this instance.
      
      Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi.
      
      gcc/testsuite/
      	* gcc.dg/builtins-20.c: Remove undefined behavior.
      
      From-SVN: r228963
      Richard Sandiford committed
    • [haifa-sched] model load/store multiples properly in autoprefetcher scheduling · 613743a2
      	* sched-int.h (struct autopref_multipass_data_): Remove offset
      	field.  Add min_offset, max_offset, multi_mem_insn_p fields.
      	* haifa-sched.c (analyze_set_insn_for_autopref): New function.
      	(autopref_multipass_init): Use it.  Handle PARALLEL sets.
      	(autopref_rank_data): New function.
      	(autopref_rank_for_schedule): Use it.
      	(autopref_multipass_dfa_lookahead_guard_1): Likewise.
      
      From-SVN: r228962
      Kyrylo Tkachov committed
    • Daily bump. · eb5ea58e
      From-SVN: r228959
      GCC Administrator committed
  3. 18 Oct, 2015 10 commits
    • Fix crash in gengtype debug dump · 5330e5a1
      gcc/
      	PR other/65800
      	* gengtype.c (dump_type): Handle TYPE_UNDEFINED correctly.
      
      From-SVN: r228956
      Mikhail Maltsev committed
    • Revise Darwin's sysroot handling to be compatible with the clang toolchain. · d42becb9
      gcc/
      	* config/darwin.h (TARGET_SYSTEM_ROOT): Remove this from here,
      	(HAVE_LD_SYSROOT): New.  (SYSROOT_SPEC): New. 
      	(LINK_SYSROOT_SPEC): Revise to remove the default for target sysroot.
      	(STANDARD_STARTFILE_PREFIX_1): New.
      	(STANDARD_STARTFILE_PREFIX_2): New.
      
      From-SVN: r228950
      Iain Sandoe committed
    • re PR c++/68006 ([C++14] Incorrect aggregate initialization from empty initializer list with NSDMI) · 49489608
      	PR c++/68006
      
      	* decl.c (implicit_default_ctor_p): New.
      	(start_preparsed_function): Don't clobber on entry to one.
      
      From-SVN: r228949
      Jason Merrill committed
    • Fix common-related error recovery ICE. · a70ba41f
      Fix an inconsistent state, between the in_common attribute
      and the common_block pointer.
      
       - adding a symbol to a common block list in gfc_match_common is delayed
         after the call to gfc_add_in_common.
       - gfc_restore_latest_undo_checkpoint is changed to check the common_block
         pointer directly instead of the in_common attribute.
       - gfc_restore_old_symbol is changed to also restore
         the common-related pointers.  This is done using a new function created
         to factor the related memory management.
       - In gfc_restore_last_undo_checkpoint, when a symbol has been removed
         from the common block linked list, its common_next pointer is cleared.
      
      	PR fortran/67758
      gcc/fortran/
      	* gfortran.h (gfc_symbol): Expand comment.
      	* match.c (gfc_match_common): Delay adding the symbol to
      	the common_block after the gfc_add_in_common call.
      	* symbol.c (gfc_free_symbol): Move common block memory handling...
      	(gfc_set_symbol_common_block): ... here as a new function.
      	(restore_old_symbol): Restore common block fields.
      	(gfc_restore_last_undo_checkpoint):
      	Check the common_block pointer instead of the in_common attribute.
      	When a symbol has been removed from the common block linked list,
      	clear its common_next pointer.
      gcc/testsuite/
      	* gfortran.dg/common_25.f90: New file.
      
      From-SVN: r228947
      Mikael Morin committed
    • Darwin - Tidy mmacosx-version-min code and specs. · 45c3fea9
      gcc/
      
      	* config/darwin-driver.c (darwin_default_min_version): Refactor code.
      	(darwin_driver_init): Note a version-min when provided on the c/l.
      	* config/darwin.h (%darwin_minversion): Remove.
      	* config/i386/darwin.h: Likewise.
      	* config/rs6000/darwin.h: Likewise.
      	* config/darwin.opt (mmacosx-version-min=): Use the configured default, rather than
      	an arbitrary constant.
      
      From-SVN: r228944
      Iain Sandoe committed
    • Fix PR63758 by using the _NSGetEnviron() API on Darwin · efd40fc4
      include/
      
      	Roland McGrath  <roland@gnu.org>
      
      	PR other/63758
      	* environ.h: New file.
      
      libiberty/
      
      	Roland McGrath  <roland@gnu.org>
      	Iain Sandoe  <iain@codesourcery.com>
      
      	PR other/63758
      	* pex-unix.c: Obtain the environment interface from settings in environ.h
      	rather than in-line code.  Update copyright date.
      	* setenv.c: Likewise.
      	* xmalloc.c: Likewise.
      
      
      
      Co-Authored-By: Iain Sandoe <iain@codesourcery.com>
      
      From-SVN: r228942
      Roland McGrath committed
    • Improve handling of -arch flag for Darwin · 37341412
      gcc/
      	* config/darwin-driver.c (darwin_driver_init): Handle '-arch' for
      	PPC, detect conflicts between -arch and multilib settings.  Detect
      	and warn about conflicts between multiple -arch definitions.
      
      From-SVN: r228941
      Iain Sandoe committed
    • re PR fortran/67177 (MOVE_ALLOC not automatically allocating deferred character… · 38217d3e
      re PR fortran/67177 (MOVE_ALLOC not automatically allocating deferred character arrays in derived types)
      
      2015-10-18  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/67177
      	PR fortran/67977
      	* primary.c (match_substring): Add an argument 'deferred' to
      	flag that a substring reference with null start and end should
      	not be optimized away for deferred length strings.
      	(match_string_constant, gfc_match_rvalue): Set the argument.
      	* trans-expr.c (alloc_scalar_allocatable_for_assignment): If
      	there is a substring reference return.
      	* trans-intrinsic.c (conv_intrinsic_move_alloc): For deferred
      	characters, assign the 'from' string length to the 'to' string
      	length. If the 'from' expression is deferred, set its string
      	length to zero. If the 'to' expression has allocatable
      	components, deallocate them.
      
      2015-10-18  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/67177
      	* gfortran.dg/move_alloc_15.f90: New test
      	* gfortran.dg/move_alloc_16.f90: New test
      
      	PR fortran/67977
      	* gfortran.dg/deferred_character_assignment_1.f90: New test
      
      From-SVN: r228940
      Paul Thomas committed
    • fix Darwin bootstrap · 2fe7f26c
      gcc/
      	* config/darwin-driver.h: Adjust includes to add diagnostic-core.
      
      From-SVN: r228939
      Iain Sandoe committed
    • Daily bump. · ba0c749b
      From-SVN: r228936
      GCC Administrator committed
  4. 17 Oct, 2015 3 commits
  5. 16 Oct, 2015 10 commits
    • divmodqi.S: Return 0x00 by default for div by 0. · 793aa938
      * config/rl78/divmodqi.S: Return 0x00 by default for div by 0.
      * config/rl78/divmodsi.S: Update return register to r8.
      * config/rl78/divmodhi.S: Update return register to r8,r9.
      Branch to main_loop_done_himode to pop registers before return.
      
      From-SVN: r228926
      Kaushik Phatak committed
    • Disable X86_TUNE_ALWAYS_FANCY_MATH_387 for Lakemont · 0d3a9fe7
      Since Lakemont processor doesn't have 387, we should disable
      X86_TUNE_ALWAYS_FANCY_MATH_387 for Lakemont.
      
      	* i386/x86-tune.def (X86_TUNE_ALWAYS_FANCY_MATH_387): Disable
      	for Lakemont.
      
      From-SVN: r228925
      H.J. Lu committed
    • Fix def_test_returning_type in iamcu/test_basic_returning.c · 104cbaf5
      Use union to check float return bits to avoid converting from integer
      to float when comparing float return value.
      
      	* gcc.target/i386/iamcu/test_basic_returning.c
      	(def_test_returning_type): Use union to check float return bits.
      
      From-SVN: r228924
      H.J. Lu committed
    • gen-mul-tables.cc: Adjust include files. · e11c4407
      
      2015-10-16  Andrew MacLeod  <amacleod@redhat.com>
      
      	* config/tilepro/gen-mul-tables.cc: Adjust include files.
      	* config/tilegx/mul-tables.c: Regenerate.
      	* config/tilepro/mul-tables.c: Regenerate.
      
      	* config/tilegx/tilegx-c.c: Adjust include files.
      	* config/tilegx/tilegx.c: Likewise.
      	* config/tilepro/tilepro-c.c: Likewise.
      	* config/tilepro/tilepro.c: Likewise.
      	* config/aarch64/aarch64-builtins.c: Likewise.
      	* config/aarch64/aarch64.c: Likewise.
      	* config/aarch64/cortex-a57-fma-steering.c: Likewise.
      	* config/alpha/alpha.c: Likewise.
      	* config/arc/arc.c: Likewise.
      	* config/arm/aarch-common.c: Likewise.
      	* config/arm/arm-builtins.c: Likewise.
      	* config/arm/arm-c.c: Likewise.
      	* config/arm/arm.c: Likewise.
      	* config/avr/avr-c.c: Likewise.
      	* config/avr/avr-devices.c: Likewise.
      	* config/avr/avr-log.c: Likewise.
      	* config/avr/avr.c: Likewise.
      	* config/bfin/bfin.c: Likewise.
      	* config/c6x/c6x.c: Likewise.
      	* config/cr16/cr16.c: Likewise.
      	* config/cris/cris.c: Likewise.
      	* config/darwin-c.c: Likewise.
      	* config/darwin-driver.c: Likewise.
      	* config/darwin.c: Likewise.
      	* config/default-c.c: Likewise.
      	* config/epiphany/epiphany.c: Likewise.
      	* config/epiphany/mode-switch-use.c: Likewise.
      	* config/epiphany/resolve-sw-modes.c: Likewise.
      	* config/fr30/fr30.c: Likewise.
      	* config/frv/frv.c: Likewise.
      	* config/ft32/ft32.c: Likewise.
      	* config/glibc-c.c: Likewise.
      	* config/h8300/h8300.c: Likewise.
      	* config/i386/host-cygwin.c: Likewise.
      	* config/i386/host-mingw32.c: Likewise.
      	* config/i386/i386-c.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/i386/msformat-c.c: Likewise.
      	* config/i386/winnt-cxx.c: Likewise.
      	* config/i386/winnt-stubs.c: Likewise.
      	* config/i386/winnt.c: Likewise.
      	* config/ia64/ia64-c.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/iq2000/iq2000.c: Likewise.
      	* config/lm32/lm32.c: Likewise.
      	* config/m32c/m32c-pragma.c: Likewise.
      	* config/m32c/m32c.c: Likewise.
      	* config/m32r/m32r.c: Likewise.
      	* config/mcore/mcore.c: Likewise.
      	* config/mep/mep-pragma.c: Likewise.
      	* config/mep/mep.c: Likewise.
      	* config/microblaze/microblaze-c.c: Likewise.
      	* config/microblaze/microblaze.c: Likewise.
      	* config/mips/mips-tables.opt
      	* config/mips/mips.c: Likewise.
      	* config/mmix/mmix.c: Likewise.
      	* config/mn10300/mn10300.c: Likewise.
      	* config/moxie/moxie.c: Likewise.
      	* config/msp430/msp430-c.c: Likewise.
      	* config/msp430/msp430.c: Likewise.
      	* config/nds32/nds32-cost.c: Likewise.
      	* config/nds32/nds32-fp-as-gp.c: Likewise.
      	* config/nds32/nds32-intrinsic.c: Likewise.
      	* config/nds32/nds32-isr.c: Likewise.
      	* config/nds32/nds32-md-auxiliary.c: Likewise.
      	* config/nds32/nds32-memory-manipulation.c: Likewise.
      	* config/nds32/nds32-pipelines-auxiliary.c: Likewise.
      	* config/nds32/nds32-predicates.c: Likewise.
      	* config/nds32/nds32.c: Likewise.
      	* config/nios2/nios2.c: Likewise.
      	* config/nvptx/mkoffload.c: Likewise.
      	* config/nvptx/nvptx.c: Likewise.
      	* config/pa/pa.c: Likewise.
      	* config/pdp11/pdp11.c: Likewise.
      	* config/rl78/rl78-c.c: Likewise.
      	* config/rl78/rl78.c: Likewise.
      	* config/rs6000/host-darwin.c: Likewise.
      	* config/rs6000/rs6000-c.c: Likewise.
      	* config/rs6000/rs6000-linux.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/rx/rx.c: Likewise.
      	* config/s390/s390-c.c: Likewise.
      	* config/s390/s390.c: Likewise.
      	* config/sh/sh-c.c: Likewise.
      	* config/sh/sh-mem.cc: Likewise.
      	* config/sh/sh.c: Likewise.
      	* config/sh/sh_optimize_sett_clrt.cc: Likewise.
      	* config/sh/sh_treg_combine.cc: Likewise.
      	* config/sol2-c.c: Likewise.
      	* config/sol2-cxx.c: Likewise.
      	* config/sol2-stubs.c: Likewise.
      	* config/sol2.c: Likewise.
      	* config/sparc/sparc-c.c: Likewise.
      	* config/sparc/sparc.c: Likewise.
      	* config/spu/spu-c.c: Likewise.
      	* config/spu/spu.c: Likewise.
      	* config/stormy16/stormy16.c: Likewise.
      	* config/v850/v850-c.c: Likewise.
      	* config/v850/v850.c: Likewise.
      	* config/vax/vax.c: Likewise.
      	* config/visium/visium.c: Likewise.
      	* config/vms/vms-c.c: Likewise.
      	* config/vms/vms.c: Likewise.
      	* config/vxworks.c: Likewise.
      	* config/winnt-c.c: Likewise.
      	* config/xtensa/xtensa.c: Likewise.
      
      From-SVN: r228923
      Andrew MacLeod committed
    • Replace printf with __builtin_printf · bc8512ab
      	* gcc.target/i386/iamcu/test_basic_64bit_returning.c (main):
      	Replace printf with __builtin_printf.
      
      From-SVN: r228922
      H.J. Lu committed
    • Properly initialize u5 · 259acf43
      	* gcc.target/i386/iamcu/test_passing_unions.c (main): Properly
      	initialize u5.
      
      From-SVN: r228921
      H.J. Lu committed
    • re PR middle-end/67966 (ICE in convert_move, at expr.c:282) · d21e1248
      	PR middle-end/67966
      	* gnat.dg/pack21.adb: New test.
      	* gnat.dg/pack22.adb: Likewise.
      	* gnat.dg/pack22_pkg.ad[sb]: New helper.
      
      From-SVN: r228917
      Eric Botcazou committed
    • Document options for Filesystem TS library · fe29811c
      	* doc/xml/manual/configure.xml: Document
      	--enable-libstdcxx-filesystem-ts option.
      	* doc/xml/manual/status_cxx2014.xml: Document libstdc++fs.a.
      	* doc/xml/manual/using.xml: Likewise.
      	* doc/html/*: Regenerate.
      
      From-SVN: r228914
      Jonathan Wakely committed
    • re PR target/67745 ([ARM] wrong alignments when __attribute__ ((optimize,target,align) is used) · 63b0cb04
      2015-10-16  Christian Bruel  <christian.bruel@st.com>
      
       	PR target/67745
       	* config/arm/arm.h (FUNCTION_BOUNDARY): Use FUNCTION_BOUNDARY_P.
       	(FUNCTION_BOUNDARY_P): New macro:
       	* config/arm/arm.c (TARGET_RELAYOUT_FUNCTION, arm_relayout_function): 
       	New hook.
       	* doc/tm.texi.in (TARGET_RELAYOUT_FUNCTION): Document.
       	* doc/tm.texi (TARGET_RELAYOUT_FUNCTION): New hook.
       	* gcc/target.def (TARGET_RELAYOUT_FUNCTION): Likewise.
       	* gcc/function.c (allocate_struct_function): Call relayout_function hook.
       	* gcc/passes.c (rest_of_decl_compilation): Likewise.
      
      From-SVN: r228912
      Christian Bruel committed
    • [multiple changes] · 1df7c326
      2015-10-16  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* aspects.adb Add an entry for Constant_After_Elaboration in
      	table Canonical_Aspect.
      	* aspects.ads Add entries for Constant_After_Elaboration in
      	tables Aspect_Argument, Aspect_Delay, Aspect_Id, Aspect_Names
      	and Implementation_Defined_Aspect.
      	* par-prag.adb Pragma Constant_After_Elaboration does not require
      	special processing by the parser.
      	* sem_ch13.adb Add an entry for Constant_After_Elaboration
      	in table Sig_Flags.
      	(Analyze_Aspect_Specifications):
      	Add processing for aspect Constant_After_Elaboration.
      	(Check_Aspect_At_Freeze_Point): Aspect Constant_After_Elaboration
      	does not require special processing at freeze time.
      	* sem_prag.adb (Analyze_Pragma): Add processing for pragma
      	Constant_After_Elaboration. Use routine Find_Related_Context to
      	retrieve the context of pragma Part_Of.
      	(Duplication_Error): Update comment on usage.
      	(Find_Related_Context): New routine.
      	* sem_prag.ads Add an entry for Constant_After_Elaboration
      	in table Aspect_Specifying_Pragma.
      	(Analyze_Contract_Cases_In_Decl_Part): Update the comment on usage.
      	* sem_util.adb (Add_Contract_Item): Add processing for pragma
      	Constant_After_Elaboration.
      	* sem_util.ads (Add_Contract_Item): Update the comment on usage.
      	* snames.ads-tmpl Add new predefined name and aspect id for
      	Constant_After_Elaboration.
      
      2015-10-16  Vincent Celier  <celier@adacore.com>
      
      	* prj-pp.adb (Pretty_Print.Print): Correctly display extending
      	packages, instead of making them renamed packages.
      
      From-SVN: r228911
      Arnaud Charlet committed