1. 12 Sep, 2013 11 commits
    • tree-ssa.h: New. · 7a300452
      
      	* tree-ssa.h: New.  Move content from tree-flow.h and
      	tree-flow-inline.h.
      	* tree-flow.h (_edge_var_map, edge_var_map_vector): Move to tree-ssa.h.
      	Move prototypes belonging to tree-ssa.c.
      	* tree-flow-inline.h (redirect_edge_var_map_def, 
      	redirect_edge_var_map_result, redirect_edge_var_map_location): Move to
      	tree-ssa.h.
      	* gimple.h: Adjust prototypes.
      	* tree-ssa.c (useless_type_conversion_p, types_compatible_p): Move to...
      	* gimple.c (useless_type_conversion_p, types_compatible_p):  Here.
      	* tree.h: Move prototype to tree-ssa.h.
      	* gengtype.c (open_base_files): Replace tree-flow.h with tree-ssa.h.
      	* Makefile.in: (TREE_SSA_H, TREE_FLOW_H): Adjust dependencies.
      	* alias.c, asan.c, builtins.c, calls.c, cfgexpand.c, cfghooks.c,
      	cfgloop.c, cfgloopmanip.c, cgraph.c, cgraphbuild.c, cgraphclones.c,
      	cgraphunit.c, dse.c, except.c, expr.c, final.c, fold-const.c,
      	ggc-page.c, gimple-fold.c, gimple-iterator.c, gimple-low.c,
      	gimple-pretty-print.c, gimple-ssa-strength-reduction.c,
      	gimple-streamer-in.c, gimple-streamer-out.c, gimple.c, gimplify.c,
      	graphite-blocking.c, graphite-clast-to-gimple.c, graphite-dependences.c,
      	graphite-interchange.c, graphite-optimize-isl.c, graphite-poly.c,
      	graphite-scop-detection.c, graphite-sese-to-poly.c, graphite.c,
      	ipa-cp.c, ipa-inline-analysis.c, ipa-inline-transform.c, ipa-inline.c,
      	ipa-prop.c, ipa-pure-const.c, ipa-reference.c, ipa-split.c, ipa-utils.c,
      	loop-init.c, lto-cgraph.c, lto-section-in.c, lto-section-out.c,
      	lto-streamer-in.c, lto-streamer-out.c, lto-streamer.c, omp-low.c,
      	passes.c, predict.c, print-tree.c, profile.c, sese.c, targhooks.c,
      	tracer.c, trans-mem.c, tree-call-cdce.c, tree-cfg.c, tree-cfgcleanup.c,
      	tree-chrec.c, tree-complex.c, tree-data-ref.c, tree-dfa.c, tree-eh.c,
      	tree-emutls.c, tree-if-conv.c, tree-inline.c, tree-into-ssa.c,
      	tree-loop-distribution.c, tree-mudflap.c, tree-nested.c, tree-nrv.c,
      	tree-object-size.c, tree-optimize.c, tree-outof-ssa.c, tree-parloops.c,
      	tree-phinodes.c, tree-predcom.c, tree-pretty-print.c, tree-profile.c,
      	tree-scalar-evolution.c, tree-sra.c, tree-ssa*.c, tree-stdarg.c,
      	tree-streamer-in.c, tree-switch-conversion.c, tree-tailcall.c,
      	tree-vect-data-refs.c, tree-vect-generic.c, tree-vect-loop-manip.c,
      	tree-vect-loop.c, tree-vect-patterns.c, tree-vect-slp.c,
      	tree-vect-stmts.c, tree-vectorizer.c, tree-vrp.c, tsan.c,
      	value-prof.c, var-tracking.c,
      	varpool.c, vtable-verify.c: Replace tree-flow.h with tree-ssa.h
      
      From-SVN: r202523
      Andrew MacLeod committed
    • re PR ipa/58371 (internal compiler error: in ipcp_verify_propagated_values, at ipa-cp.c:892) · 33605886
      2013-09-12  Martin Jambor  <mjambor@suse.cz>
      
      	PR ipa/58371
      	* g++.dg/ipa/pr58371.C: New test.
      
      From-SVN: r202522
      Martin Jambor committed
    • re PR tree-optimization/58396 (heap-use-after-free at gcc/tree-loop-distribution.c:1959) · 97463b2b
      2013-09-12  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/58396
      	* tree-loop-distribution.c (create_rdg_edges): Free unused DDRs.
      	(build_rdg): Take a loop-nest parameter, fix memleaks.
      	(distribute_loop): Compute loop-nest here and pass it to build_rdg.
      
      From-SVN: r202521
      Richard Biener committed
    • x86-tune.def: Turn on X86_TUNE_AVOID_MEM_OPND_FOR_CMOVE for SLM. · 80ecd89d
      * config/i386/x86-tune.def: Turn on X86_TUNE_AVOID_MEM_OPND_FOR_CMOVE
        for SLM.
      
      From-SVN: r202520
      Yuri Rumyantsev committed
    • ChangeLog entry for · 46ae49e8
              * gcc-interface/Makefile.in: Import target_cpu, target_vendor,
              target_os and their host_ counterparts. Remove host_canonical and
              target_cpu_default, unused. Remove local ad-hoc computations of
              "host", "targ", "arch", "osys" and "manu". Replace uses of these by
              uses of the now imported family, hence back to filters against
              canonical values. Remove filters on e500 for target_cpu, expected to
              be canonicalized into powerpc. Invert the logic filtering on 64bit
              sparc for VxWorks. Simplify the filtering logic for bareboard tools
              target pairs, now using straight elf/eabi filters on the target_os
              part only.
      
      From-SVN: r202519
      Thomas Schwinge committed
    • Makefile.in: Import target_cpu, target_vendor, target_os and their host_ counterparts. · 69d9ba63
      2013-10-11  Thomas Schwinge  <thomas@codesourcery.com>
                  Olivier Hainque  <hainque@adacore.com>
      
      	* gcc-interface/Makefile.in: Import target_cpu, target_vendor,
      	target_os and their host_ counterparts. Remove host_canonical and
      	target_cpu_default, unused. Remove local ad-hoc computations of
      	"host", "targ", "arch", "osys" and "manu". Replace uses of these by
      	uses of the now imported family, hence back to filters against
      	canonical values. Remove filters on e500 for target_cpu, expected to
      	be canonicalized into powerpc. Invert the logic filtering on 64bit
      	sparc for VxWorks. Simplify the filtering logic for bareboard tools
      	target pairs, now using straight elf/eabi filters on the target_os
      	part only.
      
      From-SVN: r202518
      Thomas Schwinge committed
    • extend.texi: Fix errors in x86 FMA builtin naming. · 893e85fa
      	* doc/extend.texi: Fix errors in x86 FMA builtin naming.
      	The FMA instruction names should have a 'v' prefix.
      
      From-SVN: r202517
      Cameron McInally committed
    • tree-loop-distribution.c (dot_rdg_1): Make graph prettier. · 174ec470
      2013-09-12  Richard Biener  <rguenther@suse.de>
      
      	* tree-loop-distribution.c (dot_rdg_1): Make graph prettier.
      	(dot_rdg): Use popen instead of system in optional code.
      	(remaining_stmts, upstream_mem_writes): Remove global bitmaps.
      	(already_processed_vertex_p): Adjust.
      	(has_anti_or_output_dependence, predecessor_has_mem_write,
      	mark_nodes_having_upstream_mem_writes, has_upstream_mem_writes,
      	rdg_flag_uses): Remove.
      	(rdg_flag_vertex): Simplify.
      	(rdg_flag_vertex_and_dependent): Rely on a correct RDG and
      	remove recursion.
      	(build_rdg_partition_for_component): Process the first vertex
      	of a component only.
      	(ldist_gen): Do not compute remaining_stmts or upstream_mem_writes.
      
      	* gcc.dg/tree-ssa/ldist-4.c: Remove undefined behavior.  Adjust
      	expected outcome and comment why that happens.
      
      From-SVN: r202516
      Richard Biener committed
    • rs6000.c (toc_relative_expr_p): Use add_cint_operand. · 38c89763
      	* config/rs6000/rs6000.c (toc_relative_expr_p): Use add_cint_operand.
      
      From-SVN: r202515
      Alan Modra committed
    • Daily bump. · 1543c0ac
      From-SVN: r202514
      GCC Administrator committed
    • predicates.md (rl78_cmp_operator_signed): New. · 3e3d9d17
      * config/rl78/predicates.md (rl78_cmp_operator_signed): New.
      (rl78_stack_based_mem): New.
      * config/rl78/constraints.md (Iv08): New.
      (Iv16): New.
      (Iv24): New.
      (Is09): New.
      (Is17): New.
      (Is25): New.
      (ISsi): New.
      (IShi): New.
      (ISqi): New.
      * config/rl78/rl78-expand.md (movqi): Reject more SUBREG operands.
      (movhi): Likewise.
      (movsi): Change from expand to insn-and-split.
      (ashrsi3): Clobber AX.
      (lshrsi3): New.
      (ashlsi3): New.
      (cbranchsi4): New.
      * config/rl78/rl78.md (CC_REG): Fix.
      (addsi3): Allow memory and immediate operands.
      (addsi3_internal): Split into...
      (addsi3_internal_virt): ...new, and ...
      (addsi3_internal_real): ...new.
      (subsi): New.
      (subsi3_internal_virt): New.
      (subsi3_internal_real): New.
      (mulsi3): Add memory operand.
      (mulsi3_rl78): Likewise.
      (mulsi3_g13): Likewise.
      * config/rl78/rl78-real.md (cbranchqi4_real_signed): New.
      (cbranchqi4_real): Add more constraint options.
      (cbranchhi4_real): Expand pattern.
      (cbranchhi4_real_signed): New.
      (cbranchhi4_real_inverted): New.
      (cbranchsi4_real_lt): New.
      (cbranchsi4_real_ge): New.
      (cbranchsi4_real_signed): New.
      (cbranchsi4_real): New.
      (peephole2): New.
      * config/rl78/rl78-virt.md (ashrsi3_virt): Add custom cases for constant shifts.
      (lshrsi3_virt): Likewise.
      (ashlsi3_virt): Likewise.
      (cbranchqi4_virt_signed): New.
      (cbranchhi4_virt_signed): New.
      (cbranchsi4_virt): New.
      * config/rl78/rl78.c: Whitespace fixes throughout.
      (move_elim_pass): New.
      (pass_data_rl78_move_elim): New.
      (pass_rl78_move_elim): New.
      (make_pass_rl78_move_elim): New.
      (rl78_devirt_info): Run devirt earlier.
      (rl78_move_elim_info): New.
      (rl78_asm_file_start): Register it.
      (rl78_split_movsi): New.
      (rl78_as_legitimate_address): Allow virtual base registers when
      appropriate.
      (rl78_addr_space_convert): Remove spurious debug stuff.
      (rl78_print_operand_1): Add z,s,S,r,E modifiers.
      (rl78_print_operand): More cases for not printing '#'.
      (rl78_expand_compare): Remove most of the logic.
      (content_memory): New.
      (clear_content_memory): New.
      (get_content_index): New.
      (get_content_name): New.
      (display_content_memory): New.
      (update_content): New.
      (record_content): New.
      (already_contains): New.
      (insn_ok_now): Re-recog insns with virtual registers.
      (add_postponed_content_update): New.
      (process_postponed_content_update): New.
      (gen_and_emit_move): New.
      (transcode_memory_rtx): Record new location content.  Use
      gen_and_emit_move.
      (force_into_acc): New.
      (move_to_acc): Use gen_and_emit_move.
      (move_from_acc): Likewise.
      (move_acc_to_reg): Likewise.
      (move_to_x): Likewise.
      (move_to_hl): Likewise.
      (move_to_de): Likewise.
      (rl78_alloc_physical_registers_op1): Record location content.
      (has_constraint): New.
      (rl78_alloc_physical_registers_op2): Record location content.
      Optimize use of HL.
      (rl78_alloc_physical_registers_ro1): Likewise.
      (rl78_alloc_physical_registers_cmp): Likewise.
      (rl78_alloc_physical_registers_umul): Likewise.
      (rl78_alloc_address_registers_macax): New.
      (rl78_alloc_physical_registers): Initialize and set location
      content memory as needed.
      (rl78_reorg): Make sure split2 is called.
      (rl78_rtx_costs): New.
      
      Co-Authored-By: Nick Clifton <nickc@redhat.com>
      
      From-SVN: r202511
      DJ Delorie committed
  2. 11 Sep, 2013 11 commits
    • re PR libstdc++/58358 (search_n has a Complexity violation for random access iterator) · 4b47d655
      2013-09-11  Mitsuru Kariya  <kariya_mitsuru@hotmail.com>
      	    Chris Jefferson  <chris@bubblescope.net>
      
      	PR libstdc++/58358
      	* include/bits/stl_algo.h (search_n): Fix to guarantee a number
      	of comparisons <= number of elements in the range.
      	* testsuite/25_algorithms/search_n/58358.cc: New.
      	* testsuite/25_algorithms/search_n/iterator.cc: Extend.
      
      Co-Authored-By: Chris Jefferson <chris@bubblescope.net>
      
      From-SVN: r202510
      Mitsuru Kariya committed
    • simplify-rtx.c (simplify_unary_operation_1): Use simplify_gen_binary for (not… · 088845a5
      simplify-rtx.c (simplify_unary_operation_1): Use simplify_gen_binary for (not (neg ...)) and (neg (not ...)) cases.
      
      gcc/
      	* simplify-rtx.c (simplify_unary_operation_1): Use simplify_gen_binary
      	for (not (neg ...)) and (neg (not ...)) cases.
      
      From-SVN: r202506
      Richard Sandiford committed
    • re PR c++/58377 (spurious "may be used uninitialized" warning with -Og) · 5c2961cf
      2013-09-11  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/58377
      	* passes.def: Split critical edges before late uninit warning passes.
      	* tree-cfg.c (pass_split_crit_edges): Implement clone method.
      
      	* g++.dg/uninit-pred-4.C: New testcase.
      
      From-SVN: r202496
      Richard Biener committed
    • re PR middle-end/58385 (likely wrong code bug) · 427e6a14
      	PR tree-optimization/58385
      	* fold-const.c (build_range_check): If both low and high are NULL,
      	use omit_one_operand_loc to preserve exp side-effects.
      
      	* gcc.c-torture/execute/pr58385.c: New test.
      
      From-SVN: r202494
      Jakub Jelinek committed
    • arm.md (arm_shiftsi3): New alternative l/l/M. · df45c0cc
      [gcc/]
      
      	* config/arm/arm.md (arm_shiftsi3): New alternative l/l/M.
      
      
      [gcc/testsuite]	
      
      	* gcc.target/arm/thumb-ifcvt-2.c: New test.
      
      From-SVN: r202493
      Kyrylo Tkachov committed
    • tree-data-ref.c (dump_rdg_vertex, [...]): Move ... · 80ab0b19
      2013-09-11  Richard Biener  <rguenther@suse.de>
      
      	* tree-data-ref.c (dump_rdg_vertex, debug_rdg_vertex,
      	dump_rdg_component, debug_rdg_component, dump_rdg, debug_rdg,
      	dot_rdg_1, dot_rdg, rdg_vertex_for_stmt, create_rdg_edge_for_ddr,
      	create_rdg_edges_for_scalar, create_rdg_edges, create_rdg_vertices,
      	stmts_from_loop, known_dependences_p, build_empty_rdg,
      	build_rdg, free_rdg, rdg_defs_used_in_other_loops_p): Move ...
      	* tree-loop-distribution.c: ... here.
      	* tree-data-ref.h (struct rdg_vertex, RDGV_STMT, RDGV_DATAREFS,
      	RDGV_HAS_MEM_WRITE, RDGV_HAS_MEM_READS, RDG_STMT, RDG_DATAREFS,
      	RDG_MEM_WRITE_STMT, RDG_MEM_READS_STMT, enum rdg_dep_type,
      	struct rdg_edge, RDGE_TYPE, RDGE_LEVEL, RDGE_RELATION): Move ...
      	* tree-loop-distribution.c: ... here.
      	* tree-loop-distribution.c: Include gimple-pretty-print.h.
      	(struct partition_s): Add loops member.
      	(partition_alloc, partition_free, rdg_flag_uses, rdg_flag_vertex,
      	rdg_flag_vertex_and_dependent, rdg_flag_loop_exits,
      	build_rdg_partition_for_component, rdg_build_partitions): Adjust.
      
      From-SVN: r202492
      Richard Biener committed
    • constraints.md (k): New. · 85a77221
      * config/i386/constraints.md (k): New.
      (Yk): Ditto.
      * config/i386/i386.c (const regclass_map): Add new mask registers.
      (dbx_register_map): Ditto.
      (dbx64_register_map): Ditto.
      (svr4_dbx_register_map): Ditto.
      (ix86_conditional_register_usage): Squash mask registers if AVX512F is
      disabled.
      (ix86_preferred_reload_class): Disable constants for mask registers.
      (ix86_secondary_reload): Do spill of mask register using 32-bit insn.
      (ix86_hard_regno_mode_ok): Support new mask registers.
      (x86_order_regs_for_local_alloc): Ditto.
      * config/i386/i386.h (FIRST_PSEUDO_REGISTER): Update.
      (FIXED_REGISTERS): Add new mask registers.
      (CALL_USED_REGISTERS): Ditto.
      (REG_ALLOC_ORDER): Ditto.
      (VALID_MASK_REG_MODE): New.
      (FIRST_MASK_REG): Ditto.
      (LAST_MASK_REG): Ditto.
      (reg_class): Add MASK_EVEX_REGS, MASK_REGS.
      (MAYBE_MASK_CLASS_P): New.
      (REG_CLASS_NAMES): Add MASK_EVEX_REGS, MASK_REGS.
      (REG_CLASS_CONTENTS): Ditto.
      (MASK_REGNO_P): New.
      (ANY_MASK_REG_P): Ditto.
      (HI_REGISTER_NAMES): Add new mask registers.
      * config/i386/i386.md (MASK0_REG, MASK1_REG, MASK2_REG,
      MASK3_REG, MASK4_REG, MASK5_REG, MASK6_REG,
      MASK7_REG): Constants for new mask registers.
      (attribute "type"): Add mskmov, msklog.
      (attribute "length_immediate"): Support them.
      (attribute "memory"): Ditto.
      (attribute "prefix_0f"): Ditto.
      (*movhi_internal): Support new mask registers.
      (*movqi_internal): Ditto.
      (define_split): Split out clobber pattern is a logic
      insn on mask registers.
      (*k<logic><mode>): New.
      (*andhi_1): Extend to support mask regs.
      (*andqi_1): Extend to support mask regs.
      (kandn<mode>): New.
      (define_split): Split and-not to and and not if operands
      are not mask regs.
      (*<code><mode>_1): Separate HI mode to new pattern...
      (*<code>hi_1): This.
      (*<code>qi_1): Extend to support mask regs.
      (kxnor<mode>): New.
      (kortestzhi): Ditto.
      (kortestchi): Ditto.
      (kunpckhi): Ditto.
      (*one_cmpl<mode>2_1): Remove HImode and handle it...
      (*one_cmplhi2_1): ...Here, now with mask registers support.
      (*one_cmplqi2_1): Support new mask registers.
      (HI/QImode arithmetics splitter): Don't split if mask registers are used.
      (HI/QImode not splitter): Ditto.
      * config/i386/predicated.md (mask_reg_operand): New.
      (general_reg_operand): Ditto.
      
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>
      
      From-SVN: r202491
      Alexander Ivchenko committed
    • *·doc/invoke.texi:·Document·fxsr,·xsave·and·xsaveopt·options. · 7e570821
      *·doc/extend.texi:·Document·fxsr,·xsave·and·xsaveopt·builtins.
      
      From-SVN: r202490
      Alexander Ivchenko committed
    • re PR tree-optimization/58380 (ice in fold_comparison) · 9e1376e9
      	PR tree-optimization/58380
      	* tree-ssa-threadupdate.c (thread_block): Recognize another case
      	of threading through a buried loop header.
      
      	* tree-ssa-threadedge.c (thread_around_empty_blocks): Correct
      	return value for single successor case.
      
      	* g++.dg/torture/pr58380.C: New test.
      
      2013-09-10  Jeff Law  <law@redhat.com>
      
      From-SVN: r202489
      Jeff Law committed
    • value.cc: Change template args from char to wchar_t, literals from 'x' to L'x'. · df7d9dfd
      2013-09-10  Ed Smith-Rowland  <3dw4rd@verizon.net>
      
      	* testsuite/28_regex/traits/wchar_t/value.cc: Change template args
      	from char to wchar_t, literals from 'x' to L'x'.
      
      From-SVN: r202487
      Ed Smith-Rowland committed
    • Daily bump. · 174a0552
      From-SVN: r202486
      GCC Administrator committed
  3. 10 Sep, 2013 18 commits
    • * ipa-devirt.c (ipa_devirt): Enable with LTO. · 5bbcb888
      From-SVN: r202482
      Jan Hubicka committed
    • Now that it's official, add myself back in as libvtv · db7ca3c0
      maintainer.
      
      From-SVN: r202481
      Caroline Tice committed
    • re PR bootstrap/58386 (libstdc++.so.6: undefined symbol: htab_hash_pointer) · 8b415b27
      2013-09-10  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR bootstrap/58386
      	Revert:
      
      	2013-09-10  Gary Benson  <gbenson@redhat.com>
      
      	* cp-demangle.c: Include hashtab.h.
      	(struct d_print_info): New field saved_scopes.
      	(d_print_init): Initialize the above.
      	(d_print_free): New function.
      	(cplus_demangle_print_callback): Call the above.
      	(struct d_saved_scope): New structure.
      	(d_store_scope): New function.
      	(d_free_scope) Likewise.
      	(d_restore_scope) Likewise.
      	(d_hash_saved_scope) Likewise.
      	(d_equal_saved_scope) Likewise.
      	(d_print_comp): New variable saved_scope.
      	[DEMANGLE_COMPONENT_REFERENCE,
      	DEMANGLE_COMPONENT_RVALUE_REFERENCE]: Capture scope the first
      	time the component is traversed, and use the captured scope for
      	subsequent traversals.
      
      From-SVN: r202480
      Paolo Carlini committed
    • re PR target/58361 (Wrong floating point code generated for ARM target) · d742ff4b
      	PR target/58361
      	* arm/vfp.md (combine_vcvt_f32_<FCVTI32typename>): Fix pattern to
      	support conditional execution.
      	(combine_vcvt_f64_<FCVTI32typename>): Likewise.
      
      From-SVN: r202475
      Richard Earnshaw committed
    • Add PR's section · 1329f0c4
      From-SVN: r202473
      Kai Tietz committed
    • gnu-versioned-namespace.ver: Add thunk _ZTv0_n12_NS* like in gnu.ver. · 6da10826
      	PR/54314
      	* config/abi/pre/gnu-versioned-namespace.ver: Add thunk _ZTv0_n12_NS*
      	like in gnu.ver.
      
      From-SVN: r202472
      Kai Tietz committed
    • To prevent further confusion, remove myself as libvtv · 747fed27
      maintainer until (if) I am officially approved as such.
      
      From-SVN: r202471
      Caroline Tice committed
    • Move VTV_SUPPORTED check after AC_CANONICAL_SYSTEM · f5ebad64
      	PR other/58374
      	* configure.ac: Move VTV_SUPPORTED check after AC_CANONICAL_SYSTEM.
      	* configure: Regenerated.
      
      From-SVN: r202470
      H.J. Lu committed
    • lra.c (lra): Clear lra_optional_reload_pseudos before every constraint pass. · b0681c9e
      2013-09-10  Vladimir Makarov  <vmakarov@redhat.com>
      
      	* lra.c (lra): Clear lra_optional_reload_pseudos before every
      	constraint pass.
      	* lra-constraints.c (curr_insn_transform): Switch on optional
      	reloads.  Check destination too to check move insn.
      	(undo_optional_reloads): Add check that the original peudo did not
      	changed its allocation and the optional reload was inherited on
      	last inheritance pass.  Break loop after deciding to keep optional
      	reload.
      	(lra_undo_inheritance): Add check that inherited pseudo still in
      	memory.
      
      From-SVN: r202468
      Vladimir Makarov committed
    • [multiple changes] · 14c34330
      2013-09-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb: sem_ch3.adb:
      	(Replace_Anonymoous_Access_To_Protected_Subprogram): If the
      	return type is itself an access to function, recurse to emit
      	another anonymous type.
      	gcc-interface/decl.c (gnat_to_gnu_entity): In ASIS mode
      	(type_annotate_only) do not check whether access types have a set size.
      
      2013-09-10  Robert Dewar  <dewar@adacore.com>
      
      	* err_vars.ads (Warning_Doc_Switch): Ignored in VMS mode.
      	* errout.adb (Warning_Doc_Switch): Ignored in VMS mode.
      	* errout.ads (Warning_Doc_Switch): Ignored in VMS mode.
      	* inline.ads (Warnings): New component in Pending_Body_Info.
      	* sem_ch12.adb (Pending_Body_Info): Save and restore warnings
      	at instantiation point.
      	* warnsw.adb (Save_Warnings): New function (Restore_Warnings):
      	New procedure Remove special handling of Warning_Doc_Switch,
      	cleaner to handle the VMS case in errout, than to introduce
      	undocumented oddities here.
      	* warnsw.ads (Warning_Record) : New type.
      	(Save_Warnings): New function.
      	(Restore_Warnings): New procedure.
      
      From-SVN: r202467
      Arnaud Charlet committed
    • [multiple changes] · fb620b37
      2013-09-10  Robert Dewar  <dewar@adacore.com>
      
      	* sinput.adb (Check_For_BOM): Avoid reading past end of file.
      
      2013-09-10  Robert Dewar  <dewar@adacore.com>
      
      	* errout.adb (Error_Msg_Ada_2012_Feature): New procedure.
      	* errout.ads (Error_Msg_Ada_2012_Feature): New procedure.
      	* inline.ads: Save/Restore Ada_Version_Pragma.
      	* opt.adb: Save/Restore Ada_Version_Pragma.
      	* opt.ads (Ada_Version_Pragma): New variable.
      	* par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch4.adb, par-ch5.adb,
      	par-ch6.adb, par-ch8.adb, par-prag.adb: Use Error_Msg_Ada_2012_Feature.
      	* prj.adb: Initialize Ada_Version_Pragma.
      	* sem_attr.adb: Use Error_Msg_Ada_2012_Feature.
      	* sem_ch12.adb, sem_ch8.adb: Save/restore Ada_Version_Pragma.
      	* sem_prag.adb (Analyze_Pragma, cases Ada_xx): Set Ada_Version_Pragma.
      	* switch-c.adb: Initialize Ada_Version_Pragma.
      	* sem_ch12.adb: Minor reformatting.
      
      2013-09-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Process_Subtype): Discard constraint on access
      	to class-wide type. Such constraints are not supported and are
      	considered a language pathology.
      
      From-SVN: r202466
      Arnaud Charlet committed
    • gnatbind.adb: Correct starting date in --version string. · ac401891
      2013-09-10  Robert Dewar  <dewar@adacore.com>
      
      	* gnatbind.adb: Correct starting date in --version string.
      	* gnatdll.adb: Use Check_Version_And_Help_G to implement --help
      	and --version.
      	* gnatkr.adb: Use Check_Version_And_Help_G to implement --help
      	and --version.
      	* gnatlink.adb: Correct starting date in --version string.
      	* gnatls.adb: Correct starting date in --version string.
      	* make.adb: Correct starting date in --version string.
      
      From-SVN: r202465
      Robert Dewar committed
    • switch-c.adb: Minor reformatting. · f2c0ca66
      2013-09-10  Robert Dewar  <dewar@adacore.com>
      
      	* switch-c.adb: Minor reformatting.
      	* atree.ads (Original_Nodes): Add documentation on ASIS usage.
      	* sinfo.ads: Add section on ASIS mode (documentation only).
      
      From-SVN: r202464
      Robert Dewar committed
    • sem_prag.adb (Analyze_Pragma, [...]): Don't allow REASON parameter in compiler… · 7b64b700
      sem_prag.adb (Analyze_Pragma, [...]): Don't allow REASON parameter in compiler units (bootstrap issues).
      
      2013-09-10  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb (Analyze_Pragma, case Warnings): Don't allow
      	REASON parameter in compiler units (bootstrap issues).
      
      2013-09-10  Robert Dewar  <dewar@adacore.com>
      
      	* gnat1drv.adb (Adjust_Global_Switches): Output warning if
      	-gnateE specified for a target that does not support it.
      
      From-SVN: r202463
      Robert Dewar committed
    • [multiple changes] · 80e59506
      2013-09-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.adb (Analyze_Pragma, case SPARK_Mode): Handle properly
      	a subprogram body without previous spec.
      
      2013-09-10  Gary Dismukes  <dismukes@adacore.com>
      
      	* sem_ch4.adb: Minor typo fixes.
      
      2013-09-10  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* aspects.adb (Aspects_On_Body_OK): New routine.
      	* aspects.ads: Modify type Aspect_Expression to include
      	the Optional_XXX variants. Update the contents of
      	table Aspect_Argument. Add table Aspect_On_Body_OK.
      	(Aspects_On_Body_OK): New routine.
      	* par-ch13.adb (Get_Aspect_Specifications): Account for optional
      	names and expressions when parsing an aspect.
      	* sem_ch6.adb: Add with and use clause for Aspects.
      	(Analyze_Subprogram_Body_Helper): Do not emit an error when
      	analyzing a body with aspects that can be applied simultaneously
      	to both spec and body.
      	* sem_ch13.adb (Analyze_Aspect_Specifications): Insert the
      	corresponding pragma of an aspect that applies to a subprogram
      	body in the declarative part.
      	(Make_Aitem_Pragma): Do not generate a pragma with an empty argument
      	list.
      
      From-SVN: r202462
      Arnaud Charlet committed
    • [multiple changes] · 4bb9c7b9
      2013-09-10  Robert Dewar  <dewar@adacore.com>
      
      	* switch-c.adb: Diagnose -gnatc given after -gnatRm.
      	* gnat_ugn.texi: Add documentation for -gnatRm.
      	* usage.adb: Minor reorganization (put style entries in proper
      	order) Document -gnatRm switch.
      	* sinfo.ads: Minor comment fix.
      
      2013-09-10  Sergey Rybin  <rybin@adacore.com frybin>
      
      	* tree_io.ads: Update ASIS_Version_Number.
      
      2013-09-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Access_Subprogram_Declaration): Check whether the
      	designated type can appear in a parameterless call.
      	* sem_ch4.adb (Analyze_Call): Do not insert an explicit dereference
      	in the case of an indirect call through an access function that
      	returns an array type.
      	(Analyze_One_Call): Handle properly legal parameterless calls
      	whose result is indexed, in constructs of the for F.all (I)
      	* sem_ch6.ads (May_Need_Actuals): Make public, for use on access
      	to subprogram types.
      	* sem_res.adb (Resolve_Call): If the call is indirect, there is
      	no entity to set on the name in the call.
      
      From-SVN: r202461
      Arnaud Charlet committed
    • [multiple changes] · cdcf1c7a
      2013-09-10  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* aspects.adb: Add entries in the Has_Aspect_Specifications_Flag
      	table for package body and body stubs.
      	(Move_Or_Merge_Aspects): New routine.
      	(Remove_Aspects): New routine.
      	* aspects.ads (Move_Aspects): Update comment on usage.
      	(Move_Or_Merge_Aspects): New routine.
      	(Remove_Aspects): New routine.
      	* par-ch3.adb: Update the grammar of private_type_declaration,
      	private_extension_declaration, object_renaming_declaration,
      	and exception_renaming_declaration.
      	(P_Subprogram): Parse the
      	aspect specifications that apply to a body stub.
      	* par-ch6.adb: Update the grammar of subprogram_body_stub and
      	generic_instantiation.
      	* par-ch7.adb: Update the grammar of package_declaration,
      	package_specification, package_body, package_renaming_declaration,
      	package_body_stub.
      	(P_Package): Parse the aspect specifications
      	that apply to a body, a body stub and package renaming.
      	* par-ch9.adb: Update the grammar of entry_declaration,
      	protected_body, protected_body_stub, task_body,
      	and task_body_stub.
      	(P_Protected): Add local variable
      	Aspect_Sloc. Add local constant Dummy_Node.  Parse the aspect
      	specifications that apply to a protected body and a protected
      	body stub.
      	(P_Task): Add local variable Aspect_Sloc. Add local
      	constant Dummy_Node. Parse the aspect specifications that apply
      	to a task body and a task body stub.
      	* par-ch12.adb: Update the grammar of
      	generic_renaming_declaration.
      	(P_Generic): Parse the aspect
      	specifications that apply to a generic renaming.
      	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not emit
      	an error when analyzing aspects that apply to a body stub. Such
      	aspects are relocated to the proper body.
      	* sem_ch7.adb (Analyze_Package_Body_Helper): Analyze the aspect
      	specifications that apply to a body.
      	* sem_ch9.adb (Analyze_Protected_Body): Warn about user-defined
      	aspects not being supported on protected bodies. Remove the
      	aspect specifications.	(Analyze_Single_Protected_Declaration):
      	Analyze the aspects that apply to a single protected declaration.
      	(Analyze_Task_Body): Warn about user-defined aspects not being
      	supported on task bodies. Remove the aspect specifications.
      	* sem_ch10.adb: Add with and use clause for Aspects.
      	(Analyze_Package_Body_Stub): Propagate the aspect specifications
      	from the stub to the proper body.
      	* sem_ch13.adb (Analyze_Aspect_Specifications): Insert the
      	corresponding pragma of an aspect that applies to a body in the
      	declarations of the body.
      	* sinfo.ads: Update the gramma of expression_function,
      	private_type_declaration, private_extension_declaration,
      	object_renaming_declaration, exception_renaming_declaration,
      	package_renaming_declaration, subprogram_renaming_declaration,
      	generic_renaming_declaration, entry_declaration,
      	subprogram_body_stub, package_body_stub, task_body_stub,
      	generic_subprogram_declaration.
      
      2013-09-10  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_prag.adb (Analyze_Pragma): Add processing
      	for aspect/pragma SPARK_Mode when it applies to a [library-level]
      	subprogram or package [body].
      
      2013-09-10  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_ugn.texi: Document that -gnatc and -gnatR cannot be
      	given together.
      	* switch-c.adb (Scan_Front_End_Switches): Give error if both
      	-gnatR and -gnatc given.
      
      2013-09-10  Robert Dewar  <dewar@adacore.com>
      
      	* g-table.ads, g-table.adb (For_Each): New generic procedure
      	(Sort_Table): New generic procedure.
      
      From-SVN: r202460
      Arnaud Charlet committed
    • [multiple changes] · 3699edc4
      2013-09-10  Thomas Quinot  <quinot@adacore.com>
      
      	* adaint.c (__gnat_is_executable_file_attr): Should be true
      	for an executable regular file only only (not for a directory
      	that has the executable permission).
      
      2013-09-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_res.adb: Further work on operator calls in ASIS.
      
      2013-09-10  Yannick Moy  <moy@adacore.com>
      
      	* sinfo.ads, sem_prag.ads, sem_ch13.adb: Minor correction and comment
      	update.
      
      From-SVN: r202459
      Arnaud Charlet committed