1. 13 Jun, 2012 9 commits
    • targhooks.c (default_builtin_vectorized_conversion): Handle vec_construct, using… · a21892ad
      targhooks.c (default_builtin_vectorized_conversion): Handle vec_construct, using vectype to base cost on subparts.
      
      2012-06-13  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	* targhooks.c (default_builtin_vectorized_conversion): Handle
      	vec_construct, using vectype to base cost on subparts.
      	* target.h (enum vect_cost_for_stmt): Add vec_construct.
      	* tree-vect-stmts.c (vect_model_load_cost): Use vec_construct
      	instead of scalar_to-vec.
      	* config/spu/spu.c (spu_builtin_vectorization_cost): Handle
      	vec_construct in same way as default for now.
      	* config/i386/i386.c (ix86_builtin_vectorization_cost): Likewise.
      	* config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost):
      	Handle vec_construct, including special case for 32-bit loads.
      
      From-SVN: r188508
      Bill Schmidt committed
    • re PR fortran/53643 ([OOP] ICE (segfault) with INTENT(OUT) CLASS array) · 2be13164
      2012-06-13  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/53643
              * trans-decl.c (init_intent_out_dt): Fix for polymorphic arrays.
              * trans-array.c (structure_alloc_comps): Don't loop for
              scalar coarrays.
      
      2012-06-13  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/53643
              * gfortran.dg/intent_out_7.f90: New.
      
      From-SVN: r188507
      Tobias Burnus committed
    • re PR fortran/53597 (F95/F2003 constraint no longer triggers: un-SAVED… · d1f6dfe6
      re PR fortran/53597 (F95/F2003 constraint no longer triggers: un-SAVED default-initialized module variable)
      
      2012-06-13  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/53597
              * decl.c (match_attr_spec): Only mark module variables
              as SAVE_IMPLICIT for Fortran 2008 and later.
      
      2012-06-13  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/53597
              * gfortran.dg/save_4.f90: New.
      
      From-SVN: r188506
      Tobias Burnus committed
    • * ChangeLog: Fix whitespace. · 9c78662a
      From-SVN: r188505
      Uros Bizjak committed
    • * ChangeLog: Fix whitespace. · a3fac361
      From-SVN: r188504
      Uros Bizjak committed
    • arm.c (FL_IWMMXT2): New define. · 8fd03515
      	* config/arm/arm.c (FL_IWMMXT2): New define.
      	(arm_arch_iwmmxt2): New variable.
      	(arm_option_override): Enable use of iWMMXt with VFP.
      	Disable use of iWMMXt with NEON. Disable use of iWMMXt under
      	Thumb mode. Set arm_arch_iwmmxt2.
      	(arm_expand_binop_builtin): Accept VOIDmode op.
      	(enum arm_builtins): Revise built-in fcode.
      	(IWMMXT2_BUILTIN): New define.
      	(IWMMXT2_BUILTIN2): Likewise.
      	(iwmmx2_mbuiltin): Likewise.
      	(builtin_description bdesc_2arg): Revise built in declaration.
      	(builtin_description bdesc_1arg): Likewise.
      	(arm_init_iwmmxt_builtins): Revise built in initialization.
      	(arm_expand_builtin): Revise built in expansion.
      	(arm_output_iwmmxt_shift_immediate): New function.
      	(arm_output_iwmmxt_tinsr): Likewise.
      	* config/arm/arm-protos.h (arm_output_iwmmxt_shift_immediate): Declare.
      	(arm_output_iwmmxt_tinsr): Likewise.
      	* config/arm/iwmmxt.md (WCGR0, WCGR1, WCGR2, WCGR3): New constant.
      	(iwmmxt_psadbw, iwmmxt_walign, iwmmxt_tmrc, iwmmxt_tmcr): Delete.
      	(rorv4hi3, rorv2si3, rordi3): Likewise.
      	(rorv4hi3_di, rorv2si3_di, rordi3_di): Likewise.
      	(ashrv4hi3_di, ashrv2si3_di, ashrdi3_di): Likewise.
      	(lshrv4hi3_di, lshrv2si3_di, lshrdi3_di): Likewise.
      	(ashlv4hi3_di, ashlv2si3_di, ashldi3_di): Likewise.
      	(iwmmxt_tbcstqi, iwmmxt_tbcsthi, iwmmxt_tbcstsi): Likewise
      	(*iwmmxt_clrv8qi, *iwmmxt_clrv4hi, *iwmmxt_clrv2si): Likewise.
      	(tbcstv8qi, tbcstv4hi, tbsctv2si): New pattern.
      	(iwmmxt_clrv8qi, iwmmxt_clrv4hi, iwmmxt_clrv2si): Likewise.
      	(*and<mode>3_iwmmxt, *ior<mode>3_iwmmxt, *xor<mode>3_iwmmxt): Likewise.
      	(ror<mode>3, ror<mode>3_di): Likewise.
      	(ashr<mode>3_di, lshr<mode>3_di, ashl<mode>3_di): Likewise.
      	(ashli<mode>3_iwmmxt, iwmmxt_waligni, iwmmxt_walignr): Likewise.
      	(iwmmxt_walignr0, iwmmxt_walignr1): Likewise.
      	(iwmmxt_walignr2, iwmmxt_walignr3): Likewise.
      	(iwmmxt_setwcgr0, iwmmxt_setwcgr1): Likewise.
      	(iwmmxt_setwcgr2, iwmmxt_setwcgr3): Likewise.
      	(iwmmxt_getwcgr0, iwmmxt_getwcgr1): Likewise.
      	(iwmmxt_getwcgr2, iwmmxt_getwcgr3): Likewise.
      	(All instruction patterns): Add wtype attribute.
      	(*iwmmxt_arm_movdi, *iwmmxt_movsi_insn): iWMMXt coexist with vfp.
      	(iwmmxt_uavgrndv8qi3, iwmmxt_uavgrndv4hi3): Revise the pattern.
      	(iwmmxt_uavgv8qi3, iwmmxt_uavgv4hi3): Likewise.
      	(ashr<mode>3_iwmmxt, ashl<mode>3_iwmmxt, lshr<mode>3_iwmmxt): Likewise.
      	(iwmmxt_tinsrb, iwmmxt_tinsrh, iwmmxt_tinsrw):Likewise.
      	(eqv8qi3, eqv4hi3, eqv2si3, gtuv8qi3): Likewise.
      	(gtuv4hi3, gtuv2si3, gtv8qi3, gtv4hi3, gtv2si3): Likewise.
      	(iwmmxt_wunpckihh, iwmmxt_wunpckihw, iwmmxt_wunpckilh): Likewise.
      	(iwmmxt_wunpckilw, iwmmxt_wunpckehub, iwmmxt_wunpckehuh): Likewise.
      	(iwmmxt_wunpckehuw, iwmmxt_wunpckehsb, iwmmxt_wunpckehsh): Likewise.
      	(iwmmxt_wunpckehsw, iwmmxt_wunpckelub, iwmmxt_wunpckeluh): Likewise.
      	(iwmmxt_wunpckeluw, iwmmxt_wunpckelsb, iwmmxt_wunpckelsh): Likewise.
      	(iwmmxt_wunpckelsw, iwmmxt_wmadds, iwmmxt_wmaddu): Likewise.
      	(iwmmxt_wsadb, iwmmxt_wsadh, iwmmxt_wsadbz, iwmmxt_wsadhz): Likewise.
      	(iwmmxt2.md): Include.
      	* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __IWMMXT2__.
      	(TARGET_IWMMXT2): New define.
      	(TARGET_REALLY_IWMMXT2): Likewise.
      	(arm_arch_iwmmxt2): Declare.
      	* config/arm/mmintrin.h: Use __IWMMXT__ to enable iWMMXt intrinsics.
      	Use __IWMMXT2__ to enable iWMMXt2 intrinsics.
      	Use C name-mangling for intrinsics.
      	(__v8qi): Redefine.
      	(_mm_cvtsi32_si64, _mm_andnot_si64, _mm_sad_pu8): Revise.
      	(_mm_sad_pu16, _mm_align_si64, _mm_setwcx, _mm_getwcx): Likewise.
      	(_m_from_int): Likewise.
      	(_mm_sada_pu8, _mm_sada_pu16): New intrinsic.
      	(_mm_alignr0_si64, _mm_alignr1_si64, _mm_alignr2_si64): Likewise.
      	(_mm_alignr3_si64, _mm_tandcb, _mm_tandch, _mm_tandcw): Likewise.
      	(_mm_textrcb, _mm_textrch, _mm_textrcw, _mm_torcb): Likewise.
      	(_mm_torch, _mm_torcw, _mm_tbcst_pi8, _mm_tbcst_pi16): Likewise.
      	(_mm_tbcst_pi32): Likewise.
      	(_mm_abs_pi8, _mm_abs_pi16, _mm_abs_pi32): New iWMMXt2 intrinsic.
      	(_mm_addsubhx_pi16, _mm_absdiff_pu8, _mm_absdiff_pu16): Likewise.
      	(_mm_absdiff_pu32, _mm_addc_pu16, _mm_addc_pu32): Likewise.
      	(_mm_avg4_pu8, _mm_avg4r_pu8, _mm_maddx_pi16, _mm_maddx_pu16): Likewise.
      	(_mm_msub_pi16, _mm_msub_pu16, _mm_mulhi_pi32): Likewise.
      	(_mm_mulhi_pu32, _mm_mulhir_pi16, _mm_mulhir_pi32): Likewise.
      	(_mm_mulhir_pu16, _mm_mulhir_pu32, _mm_mullo_pi32): Likewise.
      	(_mm_qmulm_pi16, _mm_qmulm_pi32, _mm_qmulmr_pi16): Likewise.
      	(_mm_qmulmr_pi32, _mm_subaddhx_pi16, _mm_addbhusl_pu8): Likewise.
      	(_mm_addbhusm_pu8, _mm_qmiabb_pi32, _mm_qmiabbn_pi32): Likewise.
      	(_mm_qmiabt_pi32, _mm_qmiabtn_pi32, _mm_qmiatb_pi32): Likewise.
      	(_mm_qmiatbn_pi32, _mm_qmiatt_pi32, _mm_qmiattn_pi32): Likewise.
      	(_mm_wmiabb_si64, _mm_wmiabbn_si64, _mm_wmiabt_si64): Likewise.
      	(_mm_wmiabtn_si64, _mm_wmiatb_si64, _mm_wmiatbn_si64): Likewise.
      	(_mm_wmiatt_si64, _mm_wmiattn_si64, _mm_wmiawbb_si64): Likewise.
      	(_mm_wmiawbbn_si64, _mm_wmiawbt_si64, _mm_wmiawbtn_si64): Likewise.
      	(_mm_wmiawtb_si64, _mm_wmiawtbn_si64, _mm_wmiawtt_si64): Likewise.
      	(_mm_wmiawttn_si64, _mm_merge_si64): Likewise.
      	(_mm_torvscb, _mm_torvsch, _mm_torvscw): Likewise.
      	(_m_to_int): New define.
      	* config/arm/arm-cores.def (iwmmxt2): Add FL_IWMMXT2.
      	* config/arm/arm-arches.def (iwmmxt2): Likewise.
      	* config/arm/t-arm (MD_INCLUDES): Add marvell-f-iwmmxt.md and
      	iwmmxt2.md.
      	* config/arm/arm.md (marvell-f-iwmmxt.md): Include.
      	(arch): Add "iwmmxt2".
      	(arch_enabled): Handle "iwmmxt2".
      	(wtype): New attribute.
      	(UNSPEC_WMADDS, UNSPEC_WMADDU): Delete.
      	(UNSPEC_WALIGNI): New unspec.
      	* config/arm/predicates.md (imm_or_reg_operand): New predicate.
      	* config/arm/iterators.md (VMMX2): New mode_iterator.
      	* config/arm/marvell-f-iwmmxt.md: New file.
      	* config/arm/iwmmxt2.md: New file.
      
      From-SVN: r188497
      Xinyu Qi committed
    • os/user: Use Entersyscall. · 73b5b93a
      From-SVN: r188496
      Ian Lance Taylor committed
    • os: Use Entersyscall when reading directories. · 57d195e2
      From-SVN: r188494
      Ian Lance Taylor committed
    • Daily bump. · f1dd0d9f
      From-SVN: r188492
      GCC Administrator committed
  2. 12 Jun, 2012 31 commits
    • plugin-api.h (ld_plugin_output_file_type): Add LDPO_PIE. · b4cd65d1
      2012-06-12  Rafael Ávila de Espíndola <respindola@mozilla.com>
      
      	* plugin-api.h (ld_plugin_output_file_type): Add LDPO_PIE.
      
      From-SVN: r188484
      Rafael Ávila de Espíndola committed
    • re PR c/53532 (function call ignored when called with argument of incompatible,… · cce50861
      re PR c/53532 (function call ignored when called with argument of incompatible, undefined structure)
      
      	PR c/53532
      	PR c/51034
      	PR c/53196
      	* c-decl.c (build_compound_literal): Call c_incomplete_type_error
      	if type isn't complete.
      
      	* gcc.dg/pr53532.c: New test.
      	* gcc.dg/c99-complit-2.c: Add two new dg-error directives,
      	adjust line numbers.
      	* gcc.dg/noncompile/950825-1.c: Expect incomplete type error message.
      	* gcc.dg/Wcxx-compat-8.c: Likewise.
      	* gcc.dg/pr51034.c: New test.
      	* gcc.dg/pr53196-1.c: New test.
      	* gcc.dg/pr53196-2.c: New test.
      
      From-SVN: r188483
      Jakub Jelinek committed
    • compiler, reflect: Handle package path like gc compiler. · 9690ac05
      From-SVN: r188482
      Ian Lance Taylor committed
    • stackalign.exp: Combine stack alignment torture options with usual torture options. · b29e01b7
      	* gcc.dg/torture/stackalign/stackalign.exp: Combine stack
      	alignment torture options with usual torture options.
      	* gcc.dg/torture/stackalign/alloca-2.c: Use dg-additional-options
      	instead of dg-options.
      	* gcc.dg/torture/stackalign/alloca-3.c: Likewise.
      	* gcc.dg/torture/stackalign/alloca-4.c: Likewise.
      	* gcc.dg/torture/stackalign/alloca-5.c: Likewise.
      	* gcc.dg/torture/stackalign/alloca-6.c: Likewise.
      	* gcc.dg/torture/stackalign/push-1.c: Likewise.
      	* gcc.dg/torture/stackalign/vararg-3.c: Likewise.
      
      From-SVN: r188481
      Janis Johnson committed
    • di-longlong64-sync-withhelpers.c: Add comments to checks for multiple messages… · a637d2cb
      di-longlong64-sync-withhelpers.c: Add comments to checks for multiple messages reported for one line of source code.
      
      	* gcc.target/arm/di-longlong64-sync-withhelpers.c: Add comments
      	to checks for multiple messages reported for one line of source code.
      	* gcc.target/arm/di-longlong64-sync-withldrexd.c: Likewise.
      
      From-SVN: r188480
      Janis Johnson committed
    • sync-1.c: Add comments to checks for multiple messages reported for one line of source code. · 300407a7
      	* gcc.c-torture/compile/sync-1.c: Add comments to checks for multiple
      	messages reported for one line of source code.
      
      From-SVN: r188479
      Janis Johnson committed
    • 20031223-1.c: Add comments to check for multiple messages reported for one line of source code. · 3eae54ca
      	* gcc.dg/20031223-1.c: Add comments to check for multiple
      	messages reported for one line of source code.
      	* gcc.dg/Wconversion-integer.c: Likewise.
      	* gcc.dg/Wfatal-2.c: Likewise.
      	* gcc.dg/Wfatal.c: Likewise.
      	* gcc.dg/Wobjsize-1.c: Likewise.
      	* gcc.dg/c99-vla-jump-1.c: Likewise.
      	* gcc.dg/c99-vla-jump-2.c: Likewise.
      	* gcc.dg/c99-vla-jump-3.c: Likewise.
      	* gcc.dg/c99-vla-jump-4.c: Likewise.
      	* gcc.dg/c99-vla-jump-5.c: Likewise.
      	* gcc.dg/decl-9.c: Likewise.
      	* gcc.dg/declspec-10.c: Likewise.
      	* gcc.dg/declspec-18.c: Likewise.
      	* gcc.dg/mtune.c: Likewise.
      	* gcc.dg/parser-pr28152-2.c: Likewise.
      	* gcc.dg/parser-pr28152.c: Likewise.
      	* gcc.dg/pr14475.c: Likewise.
      	* gcc.dg/pr27953.c: Likewise.
      	* gcc.dg/pr28322-3.c: Likewise.
      	* gcc.dg/pr30457.c: Likewise.
      	* gcc.dg/pr30551-2.c: Likewise.
      	* gcc.dg/pr30551-3.c: Likewise.
      	* gcc.dg/pr30551-4.c: Likewise.
      	* gcc.dg/pr30551-5.c: Likewise.
      	* gcc.dg/pr30551-6.c: Likewise.
      	* gcc.dg/pr30551.c: Likewise.
      	* gcc.dg/pr45461.c: Likewise.
      	* gcc.dg/pr48552-1.c: Likewise.
      	* gcc.dg/pr48552-2.c: Likewise.
      	* gcc.dg/redecl-1.c: Likewise.
      	* gcc.dg/transparent-union-3.c: Likewise.
      	* gcc.dg/utf-dflt.c: Likewise.
      	* gcc.dg/utf-dflt2.c: Likewise.
      	* gcc.dg/vla-8.c: Likewise.
      	* gcc.dg/vla-init-1.c: Likewise.
      	* gcc.dg/wtr-int-type-1.c: Likewise.
      
      From-SVN: r188478
      Janis Johnson committed
    • raw-string-3.c: Add comments to checks for multiple messages reported for for one line of... · 526d4b72
      	* c-c++-common/raw-string-3.c: Add comments to checks for multiple
      	messages reported for for one line of source code.
      	* c-c++-common/raw-string-5.c: Likewise.
      	* c-c++-common/raw-string-4.c: Likewise.
      	* c-c++-common/raw-string-6.c: Likewise.
      	* c-c++-common/pr20000.c: Likewise.
      
      From-SVN: r188477
      Janis Johnson committed
    • include2a.c: Add comments to checks for multiple messages reported for one line of source code. · 9a3edfd4
      	* gcc.dg/cpp/include2a.c: Add comments to checks for multiple
      	messages reported for one line of source code.
      	* gcc.dg/cpp/pr30786.c: Likewise.
      	* gcc.dg/cpp/pr28709.c: Likewise.
      	* gcc.dg/cpp/missing-header-MD.c: Likewise.
      	* gcc.dg/cpp/macspace2.c: Likewise.
      	* gcc.dg/cpp/missing-header-1.c: Likewise.
      	* gcc.dg/cpp/missing-header-MMD.c: Likewise.
      	* gcc.dg/cpp/missing-sysheader-MD.c: Likewise.
      	* gcc.dg/cpp/missing-sysheader-MMD.c: Likewise.
      
      From-SVN: r188476
      Janis Johnson committed
    • sync.md (fetchop_name): Change ior attribute to "or". · 69c8c01f
      	* config/ia64/sync.md (fetchop_name): Change ior attribute to "or".
      
      From-SVN: r188475
      Uros Bizjak committed
    • pt.c (tsubst_expr): Instantiate local class. · 637f68e8
      	* pt.c (tsubst_expr) [TAG_DEFN]: Instantiate local class.
      	* class.c (finish_struct): Don't add a TAG_DEFN for a lambda.
      	* decl2.c (finish_static_data_member_decl): Avoid redundant error.
      
      From-SVN: r188474
      Jason Merrill committed
    • re PR c++/53599 (gcc-4.7.1_rc20120606 segfaults compiling boost.karma) · fdaf2f48
      	PR c++/53599
      	* name-lookup.c (pushtag_1): Add a DECL_EXPR for a local class.
      	* semantics.c (finish_cond): Build a COMPOUND_EXPR.
      	* pt.c (tsubst_expr) [COMPOUND_EXPR]: Handle.
      	[DECL_EXPR]: Don't call cp_finish_decl for an implicit typedef.
      	Don't return the decl.
      
      From-SVN: r188473
      Jason Merrill committed
    • utf8 · 0089c3bb
      From-SVN: r188472
      Jason Merrill committed
    • re PR target/53511 (SH Target: Add support for fma patterns) · 0ff67613
      	PR target/53511
      	* gcc.target/sh/pr51340-1.c: Delete obsolete test case.
      	* gcc.target/sh/pr51340-2.c: Likewise.
      	* gcc.target/sh/pr51340-3.c: Likewise.
      
      From-SVN: r188471
      Oleg Endo committed
    • sync.md (atomic_load, [...]): Use INT1 mode iterator instead of INT. · 126294f4
              * config/rs6000/sync.md (atomic_load, atomic_store): Use INT1 mode
              iterator instead of INT.
      
      From-SVN: r188463
      Richard Henderson committed
    • opts.c: Add -fhoist-adjacent-loads to -O2 and above. · 372a6eb8
      2012-06-12  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	* opts.c: Add -fhoist-adjacent-loads to -O2 and above.
      	* tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Add argument to forward
      	declaration.
      	(hoist_adjacent_loads, gate_hoist_loads): New forward declarations.
      	(tree_ssa_phiopt): Call gate_hoist_loads.
      	(tree_ssa_cs_elim): Add parm to tree_ssa_phiopt_worker call.
      	(tree_ssa_phiopt_worker): Add do_hoist_loads to formal arg list; call
      	hoist_adjacent_loads.
      	(local_mem_dependence): New function.
      	(hoist_adjacent_loads): Likewise.
      	(gate_hoist_loads): Likewise.
      	* common.opt (fhoist-adjacent-loads): New switch.
      	* Makefile.in (tree-ssa-phiopt.o): Added dependencies.
      
      From-SVN: r188457
      Bill Schmidt committed
    • [multiple changes] · 02e4edea
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
              * gcc-interface/Make-lang.in: Update dependencies.
      	* sem_ch9.ads, einfo.adb, einfo.ads, sem_prag.adb, freeze.adb,
      	sem_util.adb, sem_ch13.adb, sem_ch13.ads, exp_ch3.adb: Add comments.
      	Minor reformatting.
      
      2012-06-12  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Instantiate_Formal_Subprogram): Remove code that
      	implements AI05-0296, because the actual may be overloaded.
      	* sem_ch8.adb (Analyze_Subprogram_Renaming): and move it here,
      	to be applied once the actual subprogram is properly resolved.
      
      From-SVN: r188456
      Arnaud Charlet committed
    • [multiple changes] · b98e2969
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
      	* switch-c.adb, a-exexpr-gcc.adb: Minor reformatting.
      
      2012-06-12  Vincent Pucci  <pucci@adacore.com>
      
      	* checks.adb (Tag_Checks_Suppressed): Remove Kill_Tag_Checks check.
      	* einfo.adb (Universal_Aliasing): Apply to the implementation
      	base type instead of the base type.
      	(Get_Rep_Item_For_Entity):
      	Return a pragma if the pragma node is not present in the Rep
      	Item chain of the parent.
      	(Kill_Tag_Checks): Removed (unused flag).
      	(Set_Kill_Tag_Checks): Removed.
      	(Get_First_Rep_Item): New routine.
      	(Get_Rep_Pragma_For_Entity): New routine.
      	(Has_Rep_Item): New routine.
      	(Has_Rep_Pragma_For_Entity): New routine.
      	(Present_In_Rep_Item): New routine.
      	* einfo.ads (Kill_Tag_Checks): Removed.
      	(Set_Kill_Tag_Checks): Removed.
      	(Get_First_Rep_Item): New routine.
      	(Get_Rep_Pragma_For_Entity): New routine.
      	(Has_Rep_Item): New routine.
      	(Has_Rep_Pragma_For_Entity): New routine.
      	(Present_In_Rep_Item): New routine.
      	* exp_attr.adb, sem_attr.adb: Attribute_CPU,
      	Attribute_Dispatching_Domain and Attribute_Interrupt_Priority
      	case added.
      	* exp_ch13.adb (Expand_N_Attribute_Definition_Clause): For
      	attribute Storage_Size, insert the new assignement statement
      	after the Size variable declaration.
      	* exp_ch3.adb (Build_Init_Statements): Fill the CPU,
      	Dispatching_Domain, Priority and Size components with the Rep
      	Item expression (if any).
      	* exp_ch9.adb (Expand_N_Task_Type_Declaration): _CPU,
      	_Priority, _Domain fields are always present in the
      	corresponding record type.
      	(Find_Task_Or_Protected_Pragma): Removed.
      	(Get_Relative_Deadline_Pragma): New routine.
      	(Make_Initialize_Protection): Find_Task_Or_Protected_Pragma removed.
      	(Make_Task_Create_Call): Check CPU, Size or
      	Dispatching_Domain Rep Item is present using new routine Has_Rep_Item.
      	* freeze.adb (Freeze_All): Push_Scope_And_Install_Discriminants
      	and Uninstall_Discriminants_And_Pop_Scope calls added.
      	(Freeze_Entity): Evaluate_Aspects_At_Freeze_Point call added.
      	* sem_aux.adb (Nearest_Ancestor): Retrieve the nearest ancestor
      	for private derived types.
      	* sem_ch13.adb (Analyze_Aspect_Specifications): Clean-up
      	and reordering. Delay analysis for all aspects (except some
      	peculiar cases).
      	(Analyze_Attribute_Definition_Clause):
      	Attribute_CPU, Attribute_Dispatching_Domain,
      	Interrupt_Priority and Attribute_Priority cases added.
      	(Analyze_Freeze_Entity): Push_Scope_And_Install_Discriminants
      	and Uninstall_Discriminants_And_Pop_Scope calls added.
      	(Check_Aspect_At_Freeze_Point): Reordering and clean-up.
      	(Duplicate_Clause): Issue an explicit error msg when the current
      	clause duplicates an aspect specification, an attribute definition
      	clause or a pragma.
      	(Evaluate_Aspects_At_Freeze_Point): New routine.
      	* sem_ch13.ads (Evaluate_Aspects_At_Freeze_Point): New routine.
      	* sem_ch9.adb, sem_ch9.ads (Install_Discriminants): New routine.
      	(Push_Scope_And_Install_Discriminants): New routine.
      	(Uninstall_Discriminants): New routine.
      	(Uninstall_Discriminants_And_Pop_Scope): New routine.
      	* sem_prag.adb (Check_Duplicate_Pragma): Issue an explicit error
      	msg when the current pragma duplicates an aspect specification,
      	an attribute definition clause or a pragma.
      	(Analyze_Pragma): Remove use of flags Has_Pragma_CPU,
      	Has_Pragma_Priority and Has_Pragma_Dispatching_Domain.
      	* sem_util.adb (Compile_Time_Constraint_Error): Don't complain
      	about the type if the corresponding concurrent type doesn't come
      	from source.
      	* sinfo.adb, sinfo.ads (Has_Pragma_CPU): Removed.
      	(Has_Pragma_Dispatching_Domain): Removed.
      	(Has_Pragma_Priority): Removed.
      	(Has_Task_Info_Pragma): Removed.
      	(Has_Task_Name_Pragma): Removed.
      	(Set_Has_Pragma_CPU): Removed.
      	(Set_Has_Pragma_Dispatching_Domain): Removed.
      	(Set_Has_Pragma_Priority): Removed.
      	(Set_Has_Task_Info_Pragma): Removed.
      	(Set_Has_Task_Name_Pragma): Removed.
      	* snames.adb-tmpl (Get_Pragma_Id): Pragma_CPU,
      	Pragma_Dispatching_Domain and Pragma_Interrupt_Priority added.
      	(Is_Pragma_Name): Name_CPU, Name_Dispatching_Domain and
      	Name_Interrupt_Priority added.
      	* snames.ads-tmpl: Name_Dispatching_Domain, Name_CPU
      	and Name_Interrupt_Priority moved to the list of
      	Attribute_Name. Attribute_CPU, Attribute_Dispatching_Domain and
      	Attribute_Interrupt_Priority added.  Pragma_Dispatching_Domain,
      	Pragma_CPU and Pragma_Interrupt_Priority moved to the end of
      	the Pragma_Name list.
      
      From-SVN: r188455
      Arnaud Charlet committed
    • [multiple changes] · fc7d1319
      2012-06-12  Arnaud Charlet  <charlet@adacore.com>
      
      	* xref_lib.adb (Get_Full_Type): Add support for 'G'.
      
      2012-06-12  Tristan Gingold  <gingold@adacore.com>
      
      	* a-exexpr-gcc.adb (Unwind_Exception): Add 4 more private fields.
      
      2012-06-12  Fedor Rybin  <frybin@adacore.com>
      
      	* gnat_ugn.texi: Update doc on gnattest.
      
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch12.adb: Add comments.
      
      From-SVN: r188453
      Arnaud Charlet committed
    • switch-c.adb, [...]: Minor reformatting. · 2137e8a6
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
      	* switch-c.adb, inline.adb, usage.adb, opt.ads: Minor reformatting.
      
      From-SVN: r188452
      Robert Dewar committed
    • [multiple changes] · 4c7be310
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch12.adb: Minor reformatting.
      
      2012-06-12  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* opt.ads (Inline_Level): New variable.
      	* gnat1drv.adb (Adjust_Global_Switches): Set it based on optimization
      	level if it has not been set by the user.
      	* switch-c.adb (Scan_Front_End_Switches): Accept -gnatn1 and -gnatn2
      	and set Inline_Level accordingly.
      	* inline.adb (Add_Inlined_Body): Declate new Inline_Level_Type type.
      	(Must_Inline): Return Inline_Level_T instead of Boolean to indicate
      	whether the package of the inlined subprogram must be compiled.
      	If Inline_Level is set to 1, only compile packages of subprograms
      	directly called from the main unit.
      	* usage.adb (Usage): Adjust line for -gnatn switch.
      	* gnat_ugn.texi (Switches for gcc): Document -gnatn1 and -gnatn2.
      
      From-SVN: r188451
      Arnaud Charlet committed
    • sem_ch12.adb (Instantiate_Formal_Subprogram): Do not apply AI05-296 if the actual is overloaded. · 33738c60
      2012-06-12  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Instantiate_Formal_Subprogram): Do not apply
      	AI05-296 if the actual is overloaded. In this case The rule must
      	be applied after resolution, in Analyze_Subprogram_Renaming.
      
      From-SVN: r188450
      Ed Schonberg committed
    • [multiple changes] · e98668b1
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
      	* stringt.adb: Minor reformatting.
      
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
      	* ali-util.adb, stringt.ads: Minor reformatting.
      
      2012-06-12  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch7.adb (Process_Declarations): Handle the case where
      	the original context has been wrapped in a block to avoid
      	interference between exception handlers and At_End handlers.
      	(Wrap_HSS_In_Block): Mark the block which contains the original
      	statements of the context as being a finalization wrapper.
      	* sinfo.adb (Is_Finalization_Wrapper): New routine.
      	(Set_Is_Finalization_Wrapper): New routine.
      
      	* sinfo.ads: Add new attribute Is_Finalization_Wrapper applicable
      	to block statemnts.
      	(Is_Finalization_Wrapper): New routine with corresponding pragma Inline.
      	(Set_Is_Finalization_Wrapper): New routine with corresponding pragma
      	Inline.
      
      2012-06-12  Steve Baird  <baird@adacore.com>
      
      	* gnat1drv.adb (Adjust_Global_Switches): No longer need to set
      	Exception_Extra_Info in CodePeer_Mode.
      
      From-SVN: r188449
      Arnaud Charlet committed
    • alias.c (nonoverlapping_component_refs_p): Take two rtx arguments. · 175a7536
      	* alias.c (nonoverlapping_component_refs_p): Take two rtx arguments.
      	(nonoverlapping_memrefs_p): Don't call it here ...
      	(true_dependence_1): ... but here.
      
      testsuite/
      	* gcc.dg/torture/alias-1.c: New test.
      
      From-SVN: r188448
      Michael Matz committed
    • [multiple changes] · d3b00ce3
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
      	* sem_dist.adb, exp_ch7.adb, sem_type.adb, exp_attr.adb,
      	sinfo.ads, sem_ch7.adb, exp_alfa.adb, sem_scil.adb, sem_ch12.adb,
      	sem_util.adb, sem_res.adb, sem_attr.adb, sem_elab.adb, exp_ch6.adb,
      	sem_ch4.adb, sem_warn.adb, scil_ll.adb, exp_cg.adb: Minor code
      	reorganization.
      
      2012-06-12  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* s-tasini.ads: Minor fix in comment.
      
      2012-06-12  Thomas Quinot  <quinot@adacore.com>
      
      	* freeze.adb (Freeze_Record_Type): Warn on record with
      	Scalar_Storage_Order if there is no placed component.
      
      2012-06-12  Thomas Quinot  <quinot@adacore.com>
      
      	* sem_ch3.adb: Minor comment fix.
      
      2012-06-12  Vincent Celier  <celier@adacore.com>
      
      	* ali-util.adb (Time_Stamp_Mismatch): In minimal recompilation
      	mode, use Stringt Mark and Release to avoid growing the Stringt
      	internal tables uselessly.
      	* stringt.adb (Strings_Last): New global variable
      	(String_Chars_Last): New global variable.
      	(Mark, Release): New procedures.
      	* stringt.ads (Mark, Release) New procedures.
      
      From-SVN: r188445
      Arnaud Charlet committed
    • [multiple changes] · 9b168a8b
      2012-06-12  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch7.adb (Process_Transient_Objects): Renamed constant
      	Requires_Hooking to Must_Hook and replace all occurrences of the name.
      	(Requires_Hooking): New routine. Detect all contexts that require
      	transient variable export to the outer finalizer due to a potential
      	exception.
      
      2012-06-12  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* einfo.ads: Minor correction in comment.
      
      From-SVN: r188444
      Arnaud Charlet committed
    • [multiple changes] · 7c4d75bf
      2012-06-12  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb: Small adjustment.
      
      2012-06-12  Vincent Celier  <celier@adacore.com>
      
      	* vms_cmds.ads (Command_Type): New enumeration value Test
      	* vms_conv.adb (Initialize): Add component at index Test in
      	Command_List
      	* vms_data.ads (Test_Switches): New global variable for the
      	switches of gnattest, currently empty.
      
      From-SVN: r188443
      Arnaud Charlet committed
    • sem_ch3.adb (Analyze_Subtype_Declaration): if an incomplete type is tagged, so is a subtype of it. · 967e927f
      2012-06-12  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Analyze_Subtype_Declaration): if an incomplete
      	type is tagged, so is a subtype of it.
      	* sem_ch12.adb (Validate_Actual_Subprogram): implement AI05-0296,
      	concerning freeze rules in the presence of formal incomplete
      	types: a formal abstract subprogram cannot have an incomplete
      	controlling type, and the profile of the actual subprogram does
      	not freeze if it includes an incomplete untagged type.
      
      From-SVN: r188442
      Ed Schonberg committed
    • [multiple changes] · 02f58834
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
      	* a-direct.adb: Minor reformatting.
      
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_ugn.texi: Add missing documentation for -gnatw.v and
      	-gnatw.V.
      
      2012-06-12  Thomas Quinot  <quinot@adacore.com>
      
      	* sem_ch7.adb, sem_prag.adb, sem_ch12.adb, sem_ch4.adb,
      	sem_ch13.adb: Minor rewording of error messages for unchecked unions.
      
      From-SVN: r188441
      Arnaud Charlet committed
    • [multiple changes] · 05a0a2ea
      2012-06-12  Robert Dewar  <dewar@adacore.com>
      
      	* lib-xref.ads: Minor reformatting.
      
      2012-06-12  Pascal Obry  <obry@adacore.com>
      
      	* a-direct.adb (Delete_File): Delete symbolic links silently
      	instead of raising the Name_Error exception when the symbolic
      	link is pointing to a non existent file.
      
      From-SVN: r188440
      Arnaud Charlet committed