- 13 Jun, 2012 6 commits
-
-
From-SVN: r188505
Uros Bizjak committed -
From-SVN: r188504
Uros Bizjak committed -
* 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 -
From-SVN: r188496
Ian Lance Taylor committed -
From-SVN: r188494
Ian Lance Taylor committed -
From-SVN: r188492
GCC Administrator committed
-
- 12 Jun, 2012 34 commits
-
-
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, 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 -
From-SVN: r188482
Ian Lance Taylor committed -
* 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 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 -
* 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 -
* 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 -
* 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 -
* 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 -
* config/ia64/sync.md (fetchop_name): Change ior attribute to "or". From-SVN: r188475
Uros Bizjak committed -
* 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 -
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 -
From-SVN: r188472
Jason Merrill committed -
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 -
* config/rs6000/sync.md (atomic_load, atomic_store): Use INT1 mode iterator instead of INT. From-SVN: r188463
Richard Henderson committed -
From-SVN: r188461
Olivier Hainque committed -
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 -
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 -
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 -
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 -
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 -
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 -
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 -
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. (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 -
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 -
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 -
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 -
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 -
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 -
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 -
2012-06-12 Robert Dewar <dewar@adacore.com> * xref_lib.adb, sem_ch13.adb, lib-xref.adb: Minor reformatting. 2012-06-12 Javier Miranda <miranda@adacore.com> * lib-xref.ads Adding missing documentation. From-SVN: r188439
Arnaud Charlet committed -
2012-06-12 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch7.adb (Create_Finalizer): Add the exception reraise mechanism at the very end of the finalizer statements. This placement ensures that all objects are finalized, the secondary stack mark released and aborts undeferred before propagating an exception. 2012-06-12 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Remove_Unit_From_Visibility): if the unit is a wrapper package. remove from visibility the original subprogram instance. 2012-06-12 Javier Miranda <miranda@adacore.com> * sem_prag.adb (Process_Convention): Generate reference to entity exported to foreign language. Needed for GPS navigation. * xref_lib.adb (Parse_Identifier_Info): Parse exported entities. * lib-xref (Output_References): Output exported entities. 2012-06-12 Pascal Obry <obry@adacore.com> * prj-attr.adb: Add install package and corresponding attributes. * snames.ads-tmpl (Name_Active): New constant. (Name_Exec_Subdir): Likewise. (Name_Install): Likewise. (Name_Lib_Subdir): Likewise. (Name_Project_Subdir): Likewise. (Name_Sources_Subdir): Likewise. 2012-06-12 Bob Duff <duff@adacore.com> * sem_res.adb (Check_Infinite_Recursion): Suppress spurious warning on recursion after "raise with ...". From-SVN: r188438
Arnaud Charlet committed -
sem_prag.adb (Analyze_Pragma, [...]): Do not crash on illegal unchecked union that is a null record. 2012-06-12 Thomas Quinot <quinot@adacore.com> * sem_prag.adb (Analyze_Pragma, case Unchecked_Union): Do not crash on illegal unchecked union that is a null record. 2012-06-12 Thomas Quinot <quinot@adacore.com> * exp_ch4.adb (Has_Inferable_Discriminants): Reorganize code to treat implicit dereferences with a constrained unchecked union nominal subtype as having inferable discriminants. From-SVN: r188437
Thomas Quinot committed
-