aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2014-08-01[multiple changes]Arnaud Charlet10-7489/+3061
2014-08-01 Gary Dismukes <dismukes@adacore.com> * makeutl.ads, opt.ads: Minor grammar fixes. * makeutl.adb: Minor code reorganization. 2014-08-01 Arnaud Charlet <charlet@adacore.com> * gcc-interface/Makefile.in, gcc-interface/Make-lang.in, gnatsym.adb: Remove gnatsym (VMS only tool). 2014-08-01 Ben Brosgol <brosgol@adacore.com> * gnat_ugn.texi, projects.texi, xgnatugn.adb: Removed all VMS conditionalization from gnat_ugn.texi and projects.texi, and updated (considerably simplified) xgnatugn.adb, to be removed soon. From-SVN: r213427
2014-08-01[Patch] Not very subtle fix for pr61510James Greenhalgh2-1/+7
gcc/ PR regression/61510 * cgraphunit.c (analyze_functions): Use get_create rather than get for decls which are clones of abstract functions. From-SVN: r213425
2014-08-01debug.adb: Remove doc for gnatmake/gprbuild switch -ds.Vincent Celier7-14/+34
2014-08-01 Vincent Celier <celier@adacore.com> * debug.adb: Remove doc for gnatmake/gprbuild switch -ds. * make.adb (List_Bad_Compilations): Use Opt.No_Exit_Message instead of Debug.Debug_Flag_S. * makeutl.adb (Finish_Program, Fail_Program): Use Opt flag No_Exit_Message instead of Debug.Debug_Flag_S to suppress exit error messages. * makeutl.ads (No_Exit_Message_Option): New constant string for switch --no-exit-message. * opt.ads (No_Exit_Message): New Boolean flag, defaulted to False. * switch-m.adb (Scan_Make_Switches): Recognize new switch --no-exit-message. From-SVN: r213424
2014-08-01[multiple changes]Arnaud Charlet72-1873/+502
2014-08-01 Arnaud Charlet <charlet@adacore.com> * exp_vfpt.adb, exp_vfpt.ads: Removed, no longer used. * gcc-interface/Make-lang.in: Remove exp_vfpt.o 2014-08-01 Javier Miranda <miranda@adacore.com> * inline.ads (Inlined_Calls, Backend_Calls, Backend_Inlined_Subps, Backend_Not_Inlined_Subps): Declarations moved to inline.adb (Cannot_Inline): Update documentation. (Check_And_Build_Body_To_Inline): Renamed. (List_Inlining_Info): Subprogram moved here from package exp_ch6. * inline.adb (Check_Inlining_Restrictions): New local variable. (Inlined_Calls, Backend_Calls, Backend_Inlined_Subps, Backend_Not_Inlined_Subps): Declarations moved here from inline.ads (Number_Of_Statements): Removed. (Remove_Pragmas): Avoid duplicated version of this subprogram. (Build_Body_To_Inline): Code cleanup. (Build_Body_To_Inline.Has_Excluded_Statament): Removed. (Check_And_Build_Body_To_Inline): Renamed. Code cleanup. (Check_Body_To_Inline): Removed. (Generate_Body_To_Inline): Renamed as Generate_Subprogram_Body. (Has_Excluded_Declaration): No action if not Check_Inlining_Restrictions. (Has_Excluded_Statement): No action if not Check_Inlining_Restrictions. (Initialize): Initialize the lists of inlined calls and subprograms. (List_Inlining_Info): Subprogram moved here from package exp_ch6. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Update call to Check_And_Build_Body_To_Inline since it has been renamed as Check_And_Split_Unconstrained_Function * exp_ch6.ad[sb] (List_Inlining_Info): Subprogram moved to package inline. * gnat1drv.adb Update call to Inline.List_Inlining_Info. 2014-08-01 Vincent Celier <celier@adacore.com> * debug.adb: Add documentation for new debug switch -ds. * make.adb (List_Bad_Compilations): Do not issue any message when switch -ds is specified. * makeutl.adb (Fail_Program): Do not issue any message when -ds is specified. (Finish_Program): Ditto. 2014-08-01 Robert Dewar <dewar@adacore.com> * s-exnint.adb, s-exnint.ads, s-wwdwch.ads, s-carsi8.ads, s-casi32.ads, indepsw.adb, a-timoau.ads, s-explli.adb, s-explli.ads, s-casi16.ads, s-powtab.ads, g-wistsp.ads, a-ztmoau.adb, indepsw-gnu.adb, s-imgllb.ads, types.adb, gnat.ads, s-proinf.adb, indepsw-aix.adb, s-caun64.ads, s-imgllw.ads, s-traces-default.adb, s-vxwork-x86.ads, s-expllu.adb, s-exnlli.adb, s-exnlli.ads, s-traces.adb, widechar.ads, stand.adb, s-expint.adb, s-tratas-default.adb, s-expint.ads, s-geveop.ads, s-caun32.ads, s-expuns.adb, s-mantis.adb, s-mantis.ads, s-caun16.ads, s-tasinf.adb, s-memcop.ads, s-dsaser.ads, s-imgbiu.ads, a-szmzco.ads, g-strspl.ads, s-casi64.ads, g-zstspl.ads, indepsw-mingw.adb, tree_io.adb, s-boarop.ads, uname.ads, s-fore.adb, s-fore.ads, g-timsta.adb, g-timsta.ads, s-assert.adb, s-vector.ads, s-tratas.adb, s-tratas.ads: Minor fix to copyright notices. 2014-08-01 Eric Botcazou <ebotcazou@adacore.com> * sinfo.ads: Remove long obsolete comment. From-SVN: r213423
2014-08-01sem_util.adb: Add guard to setting of No_Predicate_On_Actual.Ed Schonberg2-6/+11
* sem_util.adb: Add guard to setting of No_Predicate_On_Actual. * sem_ch3.adb: Minor reformatting. From-SVN: r213422
2014-08-01sem_util.adb: Add guard to setting of No_Predicate_On_Actual.Ed Schonberg1-0/+5
2014-08-01 Ed Schonberg <schonberg@adacore.com> * sem_util.adb: Add guard to setting of No_Predicate_On_Actual. * sem_ch3.adb: Minor reformatting. From-SVN: r213421
2014-08-01cstreams.c: Only enable large file support on know supported platforms.Pascal Obry2-1/+36
2014-08-01 Pascal Obry <obry@adacore.com> * cstreams.c: Only enable large file support on know supported platforms. Add missing defines/includes. From-SVN: r213420
2014-08-012014-08-01 Ed Schonberg <schonberg@adacore.com>Ed Schonberg8-15/+189
* einfo.ads, einfo.adb New flags No_Predicate_On_Actual and No_Dynamic_Predicate_On_Actual, to enforce the generic contract on generic units that contain constructs that forbid subtypes with predicates. * sem_ch3.adb (Analyze_Subtype_Declaration, Process_Subtype): Inherit flags indicating the presence of predicates in subtype declarations with and without constraints. (Inherit_Predicate_Flags): Utility for the above. * sem_util.adb (Bad_Predicated_Subtype_Use): In a generic context, indicate that the actual cannot have predicates, and preserve warning. In an instance, report error if actual has predicates and the construct appears in a package declaration. * sem_ch12.adb (Diagnose_Predicated_Actual): Report error for an actual with predicates, if the corresponding formal carries No_Predicate_On_Actual or (in the case of a loop) No_Dynamic_Predicate_On_Actual. * sem_ch13.adb (Build_Predicate_Functions); Do not build a Static_Predicate function if the type is non-static (in the presence of previous errors), * sem_ch5.adb (Analyze_Loop_Parameter_Specification): Set flag No_Dynamic_Predicate_On_Actual in a generic context, to enforce generic contract on actuals that cannot have predicates. From-SVN: r213418
2014-08-01IPA ICF pass 1/NMartin Liska7-9/+42
* gimple-iterator.h (gsi_next_nonvirtual_phi): New function. * ipa-prop.h (count_formal_params): Global function created from static. * ipa-prop.c (count_formal_params): Likewise. * ipa-utils.c (ipa_merge_profiles): Be more tolerant if we merge profiles for semantically equivalent functions. * passes.c (do_per_function): If we load body of a function during WPA, this condition should behave same. * varpool.c (ctor_for_folding): More tolerant assert for variable aliases created during WPA. From-SVN: r213417
2014-08-01a-direct.adb (C_Size): Returns an int64.Pascal Obry4-4/+12
2014-08-01 Pascal Obry <obry@adacore.com> * a-direct.adb (C_Size): Returns an int64. * osint.adb (System.CRTL): New with clause. (File_Length.Internal): Returns an int64. * s-os_lib.ads (File_Length): Returns an int64. From-SVN: r213416
2014-08-01* gcc-interface/decl.c, gcc-interface/trans.c: Remove VMS handling.Robert Dewar3-16/+8
From-SVN: r213415
2014-08-01gnatchop.adb, [...]: Minor reformatting.Robert Dewar30-557/+144
2014-08-01 Robert Dewar <dewar@adacore.com> * gnatchop.adb, gnatcmd.adb, make.adb, mlib-prj.adb, bindgen.adb, mlib.ads, butil.adb, clean.adb, binde.adb, gnatls.adb, gnatname.adb, osint.adb, krunch.adb: Minor reformatting. 2014-08-01 Robert Dewar <dewar@adacore.com> * inline.adb, inline.ads, fe.h, einfo.adb, einfo.ads, sem_util.adb, sem_util.ads, exp_ch4.adb, exp_ch11.adb, exp_ch6.adb, cstand.adb, sem_mech.adb, sem_ch6.adb, sem_ch8.adb, sem_ch11.adb, snames.ads-tmpl: Remove VMS-specific code. From-SVN: r213414
2014-08-01binde.adb, [...]: Remove VMS handling.Arnaud Charlet18-629/+251
2014-08-01 Arnaud Charlet <charlet@adacore.com> * binde.adb, bindgen.adb, butil.adb, clean.adb, gnatbind.adb, gnatchop.adb, gnatcmd.adb, gnatls.adb, gnatname.adb, krunch.adb, make.adb, makeutl.adb, memtrack.adb, mlib-prj.adb, mlib.adb, mlib.ads, tempdir.adb: Remove VMS handling. From-SVN: r213413
2014-08-01adaint.h, adaint.c (__gnat_file_length): Returns an __int64.Pascal Obry7-13/+29
2014-08-01 Pascal Obry <obry@adacore.com> * adaint.h, adaint.c (__gnat_file_length): Returns an __int64. (__gnat_named_file_length): Likewise. (__gnat_file_length_attr): Likewise. * a-direct.adb (C_Size): Use size_t as returned type. * osint.adb (File_Length): Adjust spec for Internal routine (returns size_t). * s-os_lib.adb (File_Length): Now returns a CRTL.size_t. (System.CRTL): With claused moved to spec. * s-os_lib.ads (System.CRTL): With clause moved to here. From-SVN: r213412
2014-08-01adaint.h, adaint.c (__gnat_open): Added.Pascal Obry4-1/+28
2014-08-01 Pascal Obry <obry@adacore.com> * adaint.h, adaint.c (__gnat_open): Added. * s-crtl.ads (open): Import __gnat_open for large file support. From-SVN: r213411
2014-08-01[multiple changes]Arnaud Charlet5-446/+263
2014-08-01 Robert Dewar <dewar@adacore.com> * sem_case.adb (Dup_Choice): Improve message for integer constants. 2014-08-01 Arnaud Charlet <charlet@adacore.com> * gnatlink.adb: Remove special handling of VMS, RTX and JVM. 2014-08-01 Pascal Obry <obry@adacore.com> * adaint.h (GNAT_OPEN): Defines as open64 where supported. * adaint.c (GNAT_OPEN): Uses new macro where needed. From-SVN: r213410
2014-08-01invoke.texi (Options That Control Optimization): Documentation for ↵Martin Liska2-4/+31
-foptimize-strlen introduced. * doc/invoke.texi (Options That Control Optimization): Documentation for -foptimize-strlen introduced. Optimization levels default options fixed. From-SVN: r213407
2014-08-01opts.c (common_handle_option): Handle -fsanitize=alignment.Jakub Jelinek29-74/+785
* opts.c (common_handle_option): Handle -fsanitize=alignment. * ubsan.h (enum ubsan_null_ckind): Add UBSAN_CTOR_CALL. (ubsan_expand_bounds_ifn, ubsan_expand_null_ifn): Change return type to bool. * stor-layout.h (min_align_of_type): New prototype. * asan.c (pass_sanopt::execute): Don't perform gsi_next if ubsan_expand* told us not to do it. Remove the extra gsi_end_p check. * ubsan.c: Include builtins.h. (ubsan_expand_bounds_ifn): Change return type to bool, always return true. (ubsan_expand_null_ifn): Change return type to bool, change argument to gimple_stmt_iterator *. Handle both null and alignment sanitization, take type from ckind argument's type rather than first argument. (instrument_member_call): Removed. (instrument_mem_ref): Remove t argument, add mem and base arguments. Handle both null and alignment sanitization, don't say whole struct access is member access. Build 3 argument IFN_UBSAN_NULL call instead of 2 argument. (instrument_null): Adjust instrument_mem_ref caller. Don't instrument calls here. (pass_ubsan::gate, pass_ubsan::execute): Handle SANITIZE_ALIGNMENT like SANITIZE_NULL. * stor-layout.c (min_align_of_type): New function. * flag-types.h (enum sanitize_code): Add SANITIZE_ALIGNMENT. Or it into SANITIZE_UNDEFINED. * doc/invoke.texi (-fsanitize=alignment): Document. cp/ * cp-gimplify.c (cp_genericize_r): For -fsanitize=null and/or -fsanitize=alignment call ubsan_maybe_instrument_reference for casts to REFERENCE_TYPE and ubsan_maybe_instrument_member_call for calls to member functions. c-family/ * c-common.h (min_align_of_type): Removed prototype. * c-common.c (min_align_of_type): Removed. * c-ubsan.h (ubsan_maybe_instrument_reference, ubsan_maybe_instrument_member_call): New prototypes. * c-ubsan.c: Include stor-layout.h and builtins.h. (ubsan_maybe_instrument_reference_or_call, ubsan_maybe_instrument_reference, ubsan_maybe_instrument_call): New functions. testsuite/ * c-c++-common/ubsan/align-1.c: New test. * c-c++-common/ubsan/align-2.c: New test. * c-c++-common/ubsan/align-3.c: New test. * c-c++-common/ubsan/align-4.c: New test. * c-c++-common/ubsan/align-5.c: New test. * c-c++-common/ubsan/attrib-4.c: New test. * g++.dg/ubsan/align-1.C: New test. * g++.dg/ubsan/align-2.C: New test. * g++.dg/ubsan/align-3.C: New test. * g++.dg/ubsan/attrib-1.C: New test. * g++.dg/ubsan/null-1.C: New test. * g++.dg/ubsan/null-2.C: New test. From-SVN: r213406
2014-08-01Don't run cproj-fails-with-broken-glibc for broken glibcTom de Vries3-0/+47
2014-08-01 Tom de Vries <tom@codesourcery.com> * lib/target-supports.exp (check_effective_target_glibc) (check_effective_target_glibc_2_12_or_later) (check_effective_target_not_glibc_2_11_or_earlier): New proc. * gcc.dg/cproj-fails-with-broken-glibc.c: Require effective target not_glibc_2_11_or_earlier. From-SVN: r213403
2014-08-01Convert tree-ssa-tail-merge to inchashAndi Kleen2-12/+14
gcc/: 2014-07-31 Andi Kleen <ak@linux.intel.com> * tree-ssa-tail-merge.c (same_succ_hash): Convert to inchash. From-SVN: r213400
2014-08-01Convert tree-ssa-sccvn to inchashAndi Kleen3-24/+35
gcc/: 2014-07-31 Andi Kleen <ak@linux.intel.com> * tree-ssa-sccvn.c (vn_reference_op_compute_hash): Convert to inchash. (vn_reference_compute_hash): Dito. (vn_nary_op_compute_hash): Dito. (vn_phi_compute_hash): Dito. * tree-ssa-sccvn.h (vn_hash_constant_with_type): Dito. From-SVN: r213399
2014-08-01Convert tree-ssa-dom to inchashAndi Kleen2-42/+47
gcc/: 2014-07-31 Andi Kleen <ak@linux.intel.com> * tree-ssa-dom.c (iterative_hash_exprs_commutative): Rename to inchash:add_expr_commutative. Convert to inchash. (iterative_hash_hashable_expr): Rename to inchash:add_hashable_expr. Convert to inchash. (avail_expr_hash): Dito. From-SVN: r213398
2014-08-01Convert ipa-devirt to inchashAndi Kleen2-15/+17
gcc/: 2014-07-31 Andi Kleen <ak@linux.intel.com> * ipa-devirt.c (polymorphic_call_target_hasher::hash): Convert to inchash. From-SVN: r213397
2014-08-01Convert asan.c to inchashAndi Kleen2-3/+8
gcc/: 2014-07-31 Andi Kleen <ak@linux.intel.com> * asan.c (asan_mem_ref_hasher::hash): Convert to inchash. From-SVN: r213396
2014-08-01RTL & dwarf2out changesAndi Kleen7-139/+220
Convert dwarf2out and rtl.c to the new inchash interface. gcc/: 2014-07-31 Andi Kleen <ak@linux.intel.com> * Makefile.in (OBJS): Add rtlhash.o * dwarf2out.c (addr_table_entry_do_hash): Convert to inchash. (loc_checksum): Dito. (loc_checksum_ordered): Dito. (hash_loc_operands): Dito. (hash_locs): Dito. (hash_loc_list): Dito. * rtl.c (iterative_hash_rtx): Moved to rtlhash.c * rtl.h (iterative_hash_rtx): Moved to rtlhash.h * rtlhash.c: New file. * rtlhash.h: New file. From-SVN: r213395
2014-08-01Change inchash to name space.Andi Kleen7-40/+86
Change class inchash to move into a inchash namespace as requested. The class is now inchash::hash Rename iterative_hstate_expr to inchash::add_expr ... and convert existing users. It wasn't possible to use hash::, because that lead to name space conflicts with cp and objc. So class inchash is now inchash::hash and iterative_hstate_expr is now inchash::add_expr. gcc/: 2014-07-31 Andi Kleen <ak@linux.intel.com> * inchash.h (inchash): Change inchash class to namespace. (class hash): ... Rename from inchash. (add_object): Move from macro to class template. * lto-streamer-out.c (hash_tree): Change inchash to inchash::hash. * tree.c (build_type_attribute_qual_variant): Dito. (type_hash_list): Dito. (attribute_hash_list): Dito. (iterative_hstate_expr): Rename to inchash::add_expr (build_range_type_1): Change inchash to inchash::hash and use hash::add_expr. (build_array_type_1): Dito. (build_function_type): Dito (build_method_type_directly): Dito. (build_offset_type): Dito. (build_complex_type): Dito. (make_vector_type): Dito. * tree.h (iterative_hash_expr): Dito. gcc/lto/: 2014-07-31 Andi Kleen <ak@linux.intel.com> * lto.c (hash_canonical_type): Use inchash::hash and use inchash::add_expr. (iterative_hash_canonical_type): Dito. From-SVN: r213394
2014-08-01Daily bump.GCC Administrator1-1/+1
From-SVN: r213391
2014-07-31* gcc.c (do_spec_1): Allocate enough space for saved_suffix.Chen Gang2-1/+5
From-SVN: r213387
2014-07-31Remove superfluous function declarationTom de Vries2-2/+4
2014-07-31 Tom de Vries <tom@codesourcery.com> * gcc.dg/pr51879-7.c: Remove superfluous declaration of bar. From-SVN: r213383
2014-07-31[AArch64] arm_neon.h - add vpaddd_f64, vpaddd_s64, vpaddd_u64 intrinsicsJames Greenhalgh7-57/+173
gcc/ * config/aarch64/arm_neon.h (vpadd_<suf><8,16,32,64>): Move to correct alphabetical position. (vpaddd_f64): Rewrite using builtins. (vpaddd_s64): Move to correct alphabetical position. (vpaddd_u64): New. gcc/testsuite/ * gcc.target/aarch64/scalar_intrinsics.c (test_vpaddd_f64): New. (test_vpaddd_s64): Likewise. (test_vpaddd_s64): Likewise. * gcc.target/aarch64/simd/vpaddd_f64: New. * gcc.target/aarch64/simd/vpaddd_s64: New. * gcc.target/aarch64/simd/vpaddd_u64: New. From-SVN: r213382
2014-07-31re PR target/61844 (ICE when building libgcc for sh64 cross-compiler)Oleg Endo3-0/+43
gcc/ PR target/61844 * config/sh/sh.c (sh_legitimate_address_p, sh_legitimize_reload_address): Handle reg+reg address modes when ALLOW_INDEXED_ADDRESS is false. * config/sh/predicates.md (general_movsrc_operand, general_movdst_operand): Likewise. From-SVN: r213381
2014-07-31[AArch64_be] Don't fold reduction intrinsics.James Greenhalgh2-0/+20
gcc/ * config/aarch64/aarch64-builtins.c (aarch64_gimple_fold_builtin): Don't fold reduction operations for BYTES_BIG_ENDIAN. From-SVN: r213379
2014-07-31[AArch64_be] Fix vec_select hi/lo mask confusions.James Greenhalgh5-54/+81
gcc/ * config/aarch64/aarch64.c (aarch64_simd_vect_par_cnst_half): Vary the generated mask based on BYTES_BIG_ENDIAN. (aarch64_simd_check_vect_par_cnst_half): New. * config/aarch64/aarch64-protos.h (aarch64_simd_check_vect_par_cnst_half): New. * config/aarch64/predicates.md (vect_par_cnst_hi_half): Refactor the check out to aarch64_simd_check_vect_par_cnst_half. (vect_par_cnst_lo_half): Likewise. * config/aarch64/aarch64-simd.md (aarch64_simd_move_hi_quad_<mode>): Always use vec_par_cnst_lo_half. (move_hi_quad_<mode>): Always generate a low mask. From-SVN: r213378
2014-07-31invoke.texi (AVR Options): Add documentation about __AVR_DEVICE_NAME__ ↵Senthil Kumar Selvaraj2-0/+13
built-in macro. * doc/invoke.texi (AVR Options): Add documentation about __AVR_DEVICE_NAME__ built-in macro. From-SVN: r213377
2014-07-31re PR target/61948 ([ARM] [4.10 regression] ICE with DImode shift by 1 bit ↵Charles Baylis4-2/+34
(in copyprop_hardreg_forward_1)) PR target/61948 gcc/ChangeLog: 2014-07-29 Charles Baylis <charles.baylis@linaro.org> PR target/61948 * config/arm/neon.md (ashldi3_neon): Don't emit arm_ashldi3_1bit unless constraints are satisfied. (<shift>di3_neon): Likewise. gcc/testsuite/ChangeLog: 2014-07-29 Charles Baylis <charles.baylis@linaro.org> PR target/61948 * gcc.target/arm/pr61948.c: New test case. From-SVN: r213376
2014-07-31re PR tree-optimization/61964 (krb5 database propagation enters infinite ↵Richard Biener4-11/+47
loop; reduced test case) 2014-07-31 Richard Biener <rguenther@suse.de> PR tree-optimization/61964 * tree-ssa-tail-merge.c (gimple_equal_p): Handle non-SSA LHS solely by structural equality. * gcc.dg/torture/pr61964.c: New testcase. From-SVN: r213375
2014-07-31utils.c (lookup_and_insert_pad_type): New function extracted from...Eric Botcazou3-28/+46
2014-07-31 Eric Botcazou <ebotcazou@adacore.com> * gcc-interface/utils.c (lookup_and_insert_pad_type): New function extracted from... (maybe_pad_type): ...here. Call it to canonicalize the pad type. * gcc-interface/gigi.h: Update comment. From-SVN: r213374
2014-07-31[multiple changes]Arnaud Charlet10-514/+620
2014-07-31 Javier Miranda <miranda@adacore.com> * debug.adb Remove documentation of -gnatd.k (no longer needed). * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Code cleanup. * inline.ads (Backend_Inlined_Subps): New Elist. (Backend_Not_Inlined_Subps): New Elist. (Has_Excluded_Declaration): Declaration previously located in * inline.adb (Has_Excluded_Statement): Declaration previously located in inline.adb * inline.adb (Has_Single_Return): Moved out of Build_Body_To_Inline to avoid having duplicated code. (Number_Of_Statements): New subprogram. (Register_Backend_Inlined_Subprogram): New subprogram. (Register_Backend_Not_Inlined_Subprogram): New subprogram. (Add_Inlined_Subprogram): Register backend inlined subprograms and also register subprograms that cannot be inlined by the backend. (Has_Excluded_Declaration): Moved out of Build_Body_To_Inline to avoid having duplicated code. Replace occurrences of Debug_Flag_Dot_K by Back_End_Inlining. * sem_res.adb (Resolve_Call): Code cleanup. * exp_ch6.adb (Expand_Call): Complete previous patch. Replace occurrence of Debug_Flag_Dot_K by Back_End_Inlining. (List_Inlining_Info): Add listing of subprograms passed to the backend and listing of subprograms that cannot be inlined by the backend. * sem_ch12.adb, sem_ch3.adb Replace occurrences of Debug_Flag_Dot_K by Back_End_Inlining. 2014-07-31 Robert Dewar <dewar@adacore.com> * nlists.ads: Minor code fix (remove unwise Inline for List_Length). From-SVN: r213373
2014-07-31(gnatlib-shared-vms): Remove.Arnaud Charlet1-29/+0
From-SVN: r213372
2014-07-31[multiple changes]Arnaud Charlet9-144/+54
2014-07-31 Arnaud Charlet <charlet@adacore.com> * einfo.adb: Remove VMS specific code. * exp_attr.adb: Remove VAX specific code. * set_targ.adb: Remove handling of VAX_Float. * sem_vfpt.adb: Remove references to Vax_Native. * sem_attr.adb (Is_VAX_Float): Remove ref to VAX_Native. 2014-07-31 Robert Dewar <dewar@adacore.com> * sem_ch4.adb: Minor reformatting. From-SVN: r213371
2014-07-31trans.c, misc.c: Remove references to VMS.Arnaud Charlet3-62/+37
* gcc-interface/trans.c, gcc-interface/misc.c: Remove references to VMS. Misc clean ups. From-SVN: r213370
2014-07-31cstand.adb, [...]: Remove obsolete VMS-specific code.Robert Dewar25-1345/+124
2014-07-31 Robert Dewar <dewar@adacore.com> * cstand.adb, einfo.adb, einfo.ads, errout.adb, exp_attr.adb, exp_prag.adb, frontend.adb, interfac.ads, par-prag.adb, s-auxdec.ads, s-filofl.ads, s-fishfl.ads, s-fvadfl.ads, s-fvaffl.ads, s-fvagfl.ads, s-vaflop.ads, sem_attr.adb, sem_attr.ads, sem_ch13.adb, sem_ch3.adb, sem_ch8.adb, sem_prag.adb, snames.adb-tmpl, snames.ads-tmpl: Remove obsolete VMS-specific code. From-SVN: r213369
2014-07-31[multiple changes]Arnaud Charlet56-19684/+46
2014-07-31 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, sem_ch13.adb: Minor reformatting. 2014-07-31 Arnaud Charlet <charlet@adacore.com> * a-intnam-linux.ads: Minor: update obsolete comments. * s-taasde.adb: Minor: fix comment header. 2014-07-31 Arnaud Charlet <charlet@adacore.com> * s-auxdec-vms-ia64.adb, s-parame-vms-alpha.ads, s-asthan-vms-alpha.adb, s-tpopde-vms.adb, s-mastop-vms.adb, s-tpopde-vms.ads, s-taprop-vms.adb, mlib-tgt-vms_common.adb, mlib-tgt-vms_common.ads, s-inmaop-vms.adb, g-enblsp-vms-alpha.adb, s-ransee-vms.adb, s-osprim-vms.adb, s-osprim-vms.ads, g-socthi-vms.adb, g-socthi-vms.ads, system-vms_64.ads, s-osinte-vms.adb, s-osinte-vms.ads, g-eacodu-vms.adb, s-vaflop-vms-alpha.adb, s-parame-vms-ia64.ads, a-dirval-vms.adb, a-caldel-vms.adb, mlib-tgt-specific-vms-alpha.adb, s-tasdeb-vms.adb, symbols-vms.adb, a-intnam-vms.ads, g-expect-vms.adb, symbols-processing-vms-alpha.adb, mlib-tgt-specific-vms-ia64.adb, s-traent-vms.adb, s-traent-vms.ads, i-cstrea-vms.adb, a-numaux-vms.ads, symbols-processing-vms-ia64.adb, s-interr-vms.adb, s-memory-vms_64.adb, s-memory-vms_64.ads, g-enblsp-vms-ia64.adb, s-taspri-vms.ads, s-auxdec-vms_64.ads, s-intman-vms.adb, s-intman-vms.ads, s-tpopsp-vms.adb, s-asthan-vms-ia64.adb, a-calend-vms.adb, a-calend-vms.ads, system-vms-ia64.ads, s-auxdec-vms-alpha.adb: Removed. * namet.h (Is_Non_Ada_Error): Remove. From-SVN: r213368
2014-07-31cpp.texi (__SANITIZE_ADDRESS__): Updated description.Yury Gribov7-22/+87
2014-07-31 Yury Gribov <y.gribov@samsung.com> * doc/cpp.texi (__SANITIZE_ADDRESS__): Updated description. * doc/invoke.texi (-fsanitize=kernel-address): Describe new option. * flag-types.h (SANITIZE_USER_ADDRESS, SANITIZE_KERNEL_ADDRESS): New enums. * gcc.c (sanitize_spec_function): Support new option. (SANITIZER_SPEC): Remove now redundant check. * opts.c (common_handle_option): Support new option. (finish_options): Check for incompatibilities. * toplev.c (process_options): Split userspace-specific checks. From-SVN: r213367
2014-07-31[multiple changes]Arnaud Charlet11-96/+191
2014-07-31 Robert Dewar <dewar@adacore.com> * exp_util.adb, lib-writ.adb, sem_ch12.adb, s-direio.adb: Minor reformatting. 2014-07-31 Hristian Kirtchev <kirtchev@adacore.com> * exp_attr.adb (Expand_Loop_Entry_Attribute): Update the comment which demonstrates the expansion of while loops subject to attribute 'Loop_Entry. The condition of a while loop along with related condition actions is now wrapped in a function. Instead of repeating the condition, the expansion now calls the function. 2014-07-31 Ed Schonberg <schonberg@adacore.com> * sem_case.adb (Check_Against_Predicate): Correct off-by-one error when reporting of missing values in a case statement for a type with a static predicate. (Check_Choices): Reject a choice given by a subtype to which a Dynamic_Predicate applies. * sem_ch3.adb (Analyze_Subtype_Declaration): Inherit Has_Dynamic_Predicate_Aspect flag from parent. 2014-07-31 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): A predicate cannot apply to a subtype of an incomplete type. (Is_Static_Choice): Treat an Others_Clause as static. The staticness of the expression and of the range are checked elsewhere. 2014-07-31 Pascal Obry <obry@adacore.com> * adaint.h (__gnat_ftell64): Added. (__gnat_fseek64): Added. (__int64): Added. * cstreams.c (__int64): Removed. From-SVN: r213366
2014-07-31[multiple changes]Arnaud Charlet13-84/+91
2014-07-31 Pascal Obry <obry@adacore.com> * a-stream.ads (Stream_Element_Offset): Now a signed 64bit type. * i-cstrea.ads, s-crtl.ads (fseek64): Offset is always a 64bit value. (ftell64): Always returns a 64bit value. * cstreams.c (int64): New definition. (_FILE_OFFSET_BITS): Set to 64 to enable 64bit offset support. (__gnat_ftell64): Always returns a 64bit value. The implemenation now uses ftello() on UNIX. (__gnat_fseek64): Offset is always a 64bit value. The implementation now uses fseeko() on UNIX. * a-ststio.adb, s-direio.adb (Set_Position): Simplify code, always use fseek64 to set the offset. (Size): Simplify code, always use fseek64/ftell64. * s-direio.ads (Count): Now an int64. * g-socket.ads (Vector_Element): Adjust definition for Length to be a size_t. This matches the C definition and avoid using a 64bit integer on 32bit platforms now that Count is always 64bit. * g-socthi-mingw.adb (Ada.Streams): Removed as not used anymore. (C_Recvmsg): Change some conversion to account for change in Vector_Element. (C_Sendmsg): Likewise. 2014-07-31 Robert Dewar <dewar@adacore.com> * cstand.adb (Create_Standard): Remove handling of -gnatdm flag. * debug.adb: Remove documentation of -gnatdm flag. * gnat1drv.adb (Adjust_Global_Switches): Remove handling of -gnatdm flag. From-SVN: r213365
2014-07-31[multiple changes]Arnaud Charlet10-99/+396
2014-07-31 Arnaud Charlet <charlet@adacore.com> * lib-writ.adb (Write_Unit_Information): Fix case where U = No_Unit. 2014-07-31 Claire Dross <dross@adacore.com> * exp_util.adb, exp_util.ads (Get_First_Parent_With_External_Axiomatization_For_Entity): New routine to find the first parent of an entity with a pragma Annotate (GNATprove, External_Axiomatization). (Has_Annotate_Pragma_For_External_Axiomatization): New function to check if a package has a pragma Annotate (GNATprove, External_Axiomatization). * einfo.ads, einfo.adb (Is_Generic_Actual_Subprogram): New flag on the entity for the declaration created for a formal subprogram in an instance. This is a renaming declaration, or in GNATprove_Mode the declaration of an expression function that captures the axiomatization of the actual. * sem_ch6.adb (Analyze_Expression_Function): For a Generic_Actual_Subprogram, place body immediately after the declaration because it may be used in a subsequent declaration in the instance. * sem_ch12.adb (Build_Wrapper): Add code to handle instances where the actual is a function, not an operator. Handle functions with one and two parameters and binary and unary operators. 2014-07-31 Pascal Obry <obry@adacore.com> * cstreams.c (__gnat_is_regular_file_fd): Removed. * adaint.c (__gnat_is_regular_file_fd): Added. From-SVN: r213364
2014-07-31[multiple changes]Arnaud Charlet3-2/+154
2014-07-31 Robert Dewar <dewar@adacore.com> * exp_strm.adb: Minor reformatting. 2014-07-31 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Build_Wrapper): New procedure, subsidiary to Analyze_Associations, to create a wrapper around operators that are actuals to formal subprograms. This is done in GNATProve mode in order to propagate the contracts of the operators to the body of the instance. From-SVN: r213363
2014-07-31sem_attr.adb (Analyze_Attribute, case 'Old): The reference is legal if ↵Ed Schonberg2-4/+13
within an aspect specification for a generic subprogram. 2014-07-31 Ed Schonberg <schonberg@adacore.com> * sem_attr.adb (Analyze_Attribute, case 'Old): The reference is legal if within an aspect specification for a generic subprogram. From-SVN: r213362
2014-07-31[multiple changes]Arnaud Charlet5-29/+90
2014-07-31 Javier Miranda <miranda@adacore.com> * gnat1drv.adb (Back_End_Inlining): Set to false if Suppress_All_Inlining is set. * debug.adb: Adding documentation for -gnatd.z. * inline.adb (Add_Inlined_Body): Extend the -gnatn2 processing to -gnatn1 for calls to Inline_Always routines. (Add_Inlined_Subprogram): Remove previous patch. 2014-07-31 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Check_One_Function): Apply properly the static semantic rules for indexing aspects and the functions they denote. From-SVN: r213361