- 18 Sep, 2017 15 commits
-
-
sem_ch4.adb (Complete_Object_Operation): Do not insert 'Access for reference types in the access-to-access case. gcc/ada/ 2017-09-18 Bob Duff <duff@adacore.com> * sem_ch4.adb (Complete_Object_Operation): Do not insert 'Access for reference types in the access-to-access case. 2017-09-18 Eric Botcazou <ebotcazou@adacore.com> * sem_attr.adb (Analyze_Access_Attribute): Move check for the presence of the "aliased" keyword on the prefix from here to... (Resolve_Attribute) <Attribute_Access>: ...here. Remove useless call to Check_No_Implicit_Aliasing. * sinfo.ads (Non_Aliased_Prefix): Delete. (Set_Non_Aliased_Prefix): Likewise. * sinfo.adb (Non_Aliased_Prefix): Delete. (Set_Non_Aliased_Prefix): Likewise. 2017-09-18 Bob Duff <duff@adacore.com> * exp_ch5.adb (Build_Formal_Container_Iteration, Expand_Formal_Container_Element_Loop): Convert the container to the root type before passing it to the iteration operations, so it will be of the right type. 2017-09-18 Bob Duff <duff@adacore.com> * einfo.ads, validsw.ads, treepr.ads, sem_util.ads: Comment fixes. 2017-09-18 Bob Duff <duff@adacore.com> * exp_ch3.adb (Build_Array_Init_Proc): If validity checking is enabled, and it's a bit-packed array, pass False to the Consider_IS parameter of Needs_Simple_Initialization. 2017-09-18 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch6.adb (Check_Inline_Pragma): Link the newly generated spec to the preexisting body. * sem_prag.adb (Check_Inline_Always_Placement): New routine. (Process_Inline): Verify the placement of pragma Inline_Always. The pragma must now appear on the initial declaration of the related subprogram. 2017-09-18 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Analyze_Declarations): In ASIS mode, At the end of the declarative list in a subprogram body, analyze aspext specifications to provide basic semantic information, because otherwise the aspect specifications might only be snalyzed during expansion, when related subprograms are generated. 2017-09-18 Bob Duff <duff@adacore.com> * exp_ch9.adb (Is_Simple_Barrier_Name): Follow Original_Node, in case validity checks have rewritten the tree. 2017-09-18 Bob Duff <duff@adacore.com> * sem_util.adb: Comment fixes, and remove redundant Is_Itype check. 2017-09-18 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Save_References_In_Aggregate): When constructing a qualified exxpression for an aggregate in a generic unit, verify that the scope of the type is itself visible and not hidden, so that the qualified expression is correctly resolved in any instance. gcc/testsuite/ 2017-09-18 Bob Duff <duff@adacore.com> * gnat.dg/validity_check.adb: New testcase. 2017-09-18 Eric Botcazou <ebotcazou@adacore.com> * gnat.dg/overload.ads, gnat.dg/overload.adb: New testcase. 2017-09-18 Bob Duff <duff@adacore.com> * gnat.dg/tagged_prefix_call.adb: New testcase. From-SVN: r252916
Pierre-Marie de Rodat committed -
PR target/82145 * config/i386/i386.c (ix86_init_large_pic_reg): Revert 2017-09-01 changes. Turn CODE_LABEL into NOTE_INSN_DELETED_LABEL immediately. (ix86_init_pic_reg): Revert 2017-09-01 changes. From-SVN: r252915
Jakub Jelinek committed -
PR target/81361 * dwarf2cfi.c (add_cfis_to_fde): Do not generate DW_CFA_set_loc after switching to a new text section. From-SVN: r252914
Eric Botcazou committed -
2017-09-18 Bob Duff <duff@adacore.com> * sem_ch4.adb (Analyze_Qualified_Expression): Give an error if the type mark refers to the current instance. Set the type to Any_Type in that case, to avoid later crashes. 2017-09-18 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Replace_Discriminant_References): New procedure, subsidiary of Build_Assignment, used to handle the initialization code for a mutable record component whose default value is an aggregate that sets the values of the discriminants of the components. 2017-09-18 Ed Schonberg <schonberg@adacore.com> * gnat.dg/default_variants.adb: New testcase. 2017-09-18 Eric Botcazou <ebotcazou@adacore.com> * sem_ch13.adb (Analyze_Attribute_Definition_Clause) <Address>: Mark the entity as being volatile for an overlay that toggles the scalar storage order. 2017-09-18 Fedor Rybin <frybin@adacore.com> * doc/gnat_ugn/gnat_utility_programs.rst: Document that gnattest options -U main and --harness-only are not compatible. From-SVN: r252913
Pierre-Marie de Rodat committed -
2017-09-18 Hristian Kirtchev <kirtchev@adacore.com> * freeze.adb, sem_ch6.adb, sem_res.adb: Minor reformatting. 2017-09-18 Piotr Trojanek <trojanek@adacore.com> * einfo.ads (Is_Imported): Update comment, as this routine also applies to constants. 2017-09-18 Yannick Moy <moy@adacore.com> * sem_util.adb (Find_Placement_In_State_Space): Allow generic package holding state. 2017-09-18 Justin Squirek <squirek@adacore.com> * sem_prag.adb (Is_Non_Significant_Pragma_Reference): Change the constant indication for Pragma_Linker_Section. From-SVN: r252910
Pierre-Marie de Rodat committed -
2017-09-18 Bob Duff <duff@adacore.com> Alternate fix for PR ada/71358 * libgnat/g-comlin.adb (Getopt): Remove manual null access checks. Instead, make a local copy of Config, and if it's null, allocate an empty Command_Line_Configuration_Record, so we won't crash on null pointer dereference. From-SVN: r252909
Bob Duff committed -
PR target/81736 * gcc.target/i386/pr81736-3.c: Add -mno-omit-leaf-frame-pointer. * gcc.target/i386/pr81736-4.c: Likewise. From-SVN: r252908
Rainer Orth committed -
2017-09-18 Richard Biener <rguenther@suse.de> * download_prerequisites (isl): Bump version to 0.18. From-SVN: r252907
Richard Biener committed -
2017-09-18 Richard Biener <rguenther@suse.de> * graphite-scop-detection.c (scop_detection::stmt_has_simple_data_ref): Simplify. (build_alias_set): Reject aliases with no access function. From-SVN: r252906
Richard Biener committed -
2017-09-18 Richard Biener <rguenther@suse.de> PR tree-optimization/79622 * graphite-scop-detection.c (build_cross_bb_scalars_def): Properly handle PHIs. (build_cross_bb_scalars_use): Likewise. * gcc.dg/graphite/pr79622.c: New testcase. From-SVN: r252905
Richard Biener committed -
gcc/ * cgraph.h (cgraph_thunk_info): Fix a typo in a comment. From-SVN: r252904
Pierre-Marie de Rodat committed -
2017-09-18 Pierre-Marie de Rodat <derodat@adacore.com> * MAINTAINERS: Add myself as a maintainer for the Ada front end. From-SVN: r252903
Pierre-Marie de Rodat committed -
From-SVN: r252902
Pierre-Marie de Rodat committed -
rs6000_return_addr assumes that the stack link is at frame+0, which is true for count>0. For count==0, rs6000_return_addr is called with frame==frame_pointer_rtx and the stack link is *not* at frame+0 if -fstack-protector-all or -fsanitize=address because rs6000.h sets FRAME_GROWS_DOWNWARD for those options. PR target/81996 * gcc/config/rs6000/rs6000.c (rs6000_return_addr): Use stack_pointer_rtx for count 0. Update comments. Break up large rtl expression. From-SVN: r252901
Alan Modra committed -
From-SVN: r252900
GCC Administrator committed
-
- 17 Sep, 2017 5 commits
-
-
gcc: config/i386/i386.c: (xlogue_layout::STUB_NAME_MAX_LEN): Increase to 20 bytes. (xlogue_layout::s_stub_names): Add an additional size-2 diminsion. (xlogue_layout::get_stub_name): Modify to select the appropairate sse or avx version of the stub. gcc/testsuite: gcc.target/i386/pr82196-1.c: New test. gcc.target/i386/pr82196-2.c: Likewise. libgcc: config/i386/i386-asm.h (PASTE2): New macro. (ASMNAME): Modify to use PASTE2. (MS2SYSV_STUB_PREFIX): New macro for isa prefix. (MS2SYSV_STUB_BEGIN, MS2SYSV_STUB_END): New macros for stub headers. config/i386/resms64.S: Rename to a header file, use MS2SYSV_STUB_BEGIN instead of HIDDEN_FUNC and MS2SYSV_STUB_END instead of FUNC_END. config/i386/resms64f.S: Likewise. config/i386/resms64fx.S: Likewise. config/i386/resms64x.S: Likewise. config/i386/savms64.S: Likewise. config/i386/savms64f.S: Likewise. config/i386/avx_resms64.S: New file that only defines a macro and includes it's corresponding header file. config/i386/avx_resms64f.S: Likewise. config/i386/avx_resms64fx.S: Likewise. config/i386/avx_resms64x.S: Likewise. config/i386/avx_savms64.S: Likewise. config/i386/avx_savms64f.S: Likewise. config/i386/sse_resms64.S: Likewise. config/i386/sse_resms64f.S: Likewise. config/i386/sse_resms64fx.S: Likewise. config/i386/sse_resms64x.S: Likewise. config/i386/sse_savms64.S: Likewise. config/i386/sse_savms64f.S: Likewise. config/i386/t-msabi: Modified to add avx and sse versions of stubs. From-SVN: r252896
Daniel Santos committed -
preferred_stack_boundary may not be the minimum stack alignment. For leaf functions without TLS access, max_used_stack_slot_alignment may be smaller. We should update preferred_stack_boundary for leaf functions. gcc/ PR target/82166 * config/i386/i386.c (ix86_finalize_stack_frame_flags): Properly compute the minimum stack alignment. Also update preferred stack boundary for leaf functions. gcc/testsuite/ PR target/82166 * gcc.target/i386/pr82166.c: New test. From-SVN: r252895
H.J. Lu committed -
2017-09-17 Paul Thomas <pault@gcc.gnu.org> PR fortran/82173 * decl.c (gfc_get_pdt_instance): Use the component initializer expression for the default, rather than the parameter value. * resolve.c (resolve_pdt): New function. (resolve_symbol): Call it. Remove false error, prohibiting deferred type parameters for dummy arguments. PR fortran/60483 * primary.c (gfc_match_varspec): If the type of an associate name is unknown and yet there is a match, try resolving the target expression and using its type. 2017-09-17 Paul Thomas <pault@gcc.gnu.org> PR fortran/82173 * gfortran.dg/pdt_1.f03 : Eliminate spurious error checks. * gfortran.dg/pdt_2.f03 : The same. * gfortran.dg/pdt_3.f03 : The same. * gfortran.dg/pdt_4.f03 : Add 'modtype' and two new errors in module 'bad_vars'. Add error concerning assumed parameters and save attribute. * gfortran.dg/pdt_11.f03 : New test. PR fortran/60483 * gfortran.dg/associate_9.f90 : Remove XFAIL and change to run. * gfortran.dg/associate_25.f90 : New test. * gfortran.dg/pdt_12.f03 : New test. From-SVN: r252894
Paul Thomas committed -
gcc/brig/ * Make-lang.in (GO_TEXI_FILES): Rename to... (BRIG_TEXI_FILES): ... this. (doc/gccbrig.info, doc/gccbrig.dvi, doc/gccbrig.pdf, brig.info) (brig.srcinfo, brig.man, brig.srcman, brig.install-man) ($(DESTDIR)$(man1dir)/$(GCCBRIG_INSTALL_NAME)$(man1ext)): Uncomment/enable targets. (gccbrig.pod): New target. * gccbrig.texi: New file. From-SVN: r252893
Thomas Schwinge committed -
From-SVN: r252892
GCC Administrator committed
-
- 16 Sep, 2017 6 commits
-
-
This should have been after the early exit for non-vectorised statements. 2017-09-16 Richard Sandiford <richard.sandiford@linaro.org> gcc/ PR tree-optimization/82228 * tree-vect-loop.c (vectorizable_live_operation): Move initialization of ncopies. From-SVN: r252888
Richard Sandiford committed -
* libgnarl/a-intnam__rtems.ads: Update copyright date. * libgnarl/s-interr__hwint.adb: Likewise. * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise. * libgnarl/s-osinte__rtems.adb: Likewise. * libgnarl/s-osinte__rtems.ads: Likewise. From-SVN: r252877
Eric Botcazou committed -
in nds32_option_optimization_table. gcc/ * common/config/nds32/nds32-common.c (nds32_option_optimization_table): Refine formatting. (nds32_option_optimization_table): Use -fsched-pressure and -fomit-frame-pointer for specific optimization level. From-SVN: r252876
Chung-Ju Wu committed -
gcc/ * config/nds32/nds32.c: Refine formatting and comments. * config/nds32/nds32.h: Likewise. * config/nds32/nds32.md: Likewise. * config/nds32/nds32-cost.c: Likewise. * config/nds32/nds32-isr.c: Likewise. * config/nds32/nds32-md-auxiliary.c: Likewise. * config/nds32/nds32-multiple.md: Likewise. * config/nds32/nds32-predicates.c: Likewise. From-SVN: r252874
Chung-Ju Wu committed -
2017-09-16 Tom de Vries <tom@codesourcery.com> PR c/81875 * c-parser.c (c_parser_omp_for_loop): Fold only operands of cond, not cond itself. * testsuite/libgomp.c-c++-common/pr81875.c: New test. From-SVN: r252873
Tom de Vries committed -
From-SVN: r252870
GCC Administrator committed
-
- 15 Sep, 2017 14 commits
-
-
Patch by Rainer Orth. Reviewed-on: https://go-review.googlesource.com/64170 From-SVN: r252866
Ian Lance Taylor committed -
It is possible to do this check in backend, by walking the block and check whether the last statement is a goto. But it seems easier to do it in the frontend, where it can simply use is_fallthrough. Reviewed-on: https://go-review.googlesource.com/63690 From-SVN: r252851
Ian Lance Taylor committed -
* c-common.h (cxx_dialect): Add cxx2a as a dialect. * opt.c: Add options for -std=c++2a and -std=gnu++2a. * c-opts.c (set_std_cxx2a): New. (c_common_handle_option): Set options when -std=c++2a is enabled. (c_common_post_options): Adjust comments. (set_std_cxx14, set_std_cxx17): Likewise. * doc/cpp.texi (__cplusplus): Document value for -std=c++2a or -std=gnu+2a. * doc/invoke.texi: Document -std=c++2a and -std=gnu++2a. * lib/target-supports.exp (check_effective_target_c++17): Return 1 also if check_effective_target_c++2a. (check_effective_target_c++17_down): New. (check_effective_target_c++2a_only): New. (check_effective_target_c++2a): New. * g++.dg/cpp2a/cplusplus.C: New. * include/cpplib.h (c_lang): Add CXX2A and GNUCXX2A. * init.c (lang_defaults): Add rows for CXX2A and GNUCXX2A. (cpp_init_builtins): Set __cplusplus to 201709L for C++2a. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r252850
Andrew Sutton committed -
Otherwise, a zero length is created in the backend and the backend doesn't know there is an error. Reviewed-on: https://go-review.googlesource.com/61610 From-SVN: r252849
Ian Lance Taylor committed -
2017-09-15 Steve Ellcey <sellcey@cavium.com> PR target/82066 * doc/extend.texi (Common Function Attributes): Add references to ARM, AArch64, and S/390 specific attributes. (Function Specific Option Pragmas): Add AArch64 and S/390 to list of back ends that support the target pragma. From-SVN: r252848
Steve Ellcey committed -
C11 semantics for excess precision (from N1531) are that an implicit conversion (from the usual arithmetic conversions, not by assignment) from integer to floating point has a result in the corresponding evaluation format of that floating-point type, so possibly with excess precision (whereas a cast or conversion by assignment from integer to floating point must produce a value without excess range or precision, as always). This patch makes GCC support those semantics if flag_isoc11 (which in turn means that conditional expressions need to support generating a result with excess precision even if neither operand had excess precision). C99 is less than entirely clear in this regard, but my reading as outlined at <https://gcc.gnu.org/ml/gcc-patches/2008-11/msg00105.html> is that the results of conversions from integer to floating-point types are always expected to be representable in the target type without excess precision, and this patch conservatively keeps these semantics for pre-C11 (i.e. if an older standard is explicitly selected). Bootstrapped with no regressions on x86_64-pc-linux-gnu. PR c/82071 gcc/c: * c-typeck.c (ep_convert_and_check): Just call convert_and_check for C11. (build_conditional_expr): For C11, generate result with excess precision when one argument is an integer and the other is of a type using excess precision. gcc/testsuite: * gcc.target/i386/excess-precision-8.c: New test. From-SVN: r252847
Joseph Myers committed -
re PR c++/64644 ("warning: anonymous union with no members" should be an error with -pedantic-errors) /cp 2017-09-15 Manuel Lopez-Ibanez <manu@gcc.gnu.org> Paolo Carlini <paolo.carlini@oracle.com> PR c++/64644 * decl2.c (finish_anon_union): Complain about "anonymous union with no members" with a pedwarn. /testsuite 2017-09-15 Manuel Lopez-Ibanez <manu@gcc.gnu.org> Paolo Carlini <paolo.carlini@oracle.com> PR c++/64644 * g++.dg/other/anon-union4.C: New. * g++.old-deja/g++.law/union4.C: Adjust. * g++.old-deja/g++.other/anon1.C: Likewise. Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com> From-SVN: r252835
Manuel López-Ibáñez committed -
https://gcc.gnu.org/ml/gcc-patches/2017-09/msg01051.html ReviewedBy: Sandra Loosemore <sandra@codesourcery.com> * doc/standards.texi: Fix C++17 description. Update URLs for C++11 & 14. From-SVN: r252834
Nathan Sidwell committed -
From-SVN: r252833
Nathan Sidwell committed -
2017-09-15 Bernd Edlinger <bernd.edlinger@hotmail.de> * common.opt (Wcast-align=strict): New warning option. * doc/invoke.texi: Document -Wcast-align=strict. c: 2017-09-15 Bernd Edlinger <bernd.edlinger@hotmail.de> * c-typeck.c (build_c_cast): Implement -Wcast-align=strict. cp: 2017-09-15 Bernd Edlinger <bernd.edlinger@hotmail.de> * typeck.c (build_reinterpret_cast_1, build_const_cast_1): Implement -Wcast-align=strict. testsuite: 2017-09-15 Bernd Edlinger <bernd.edlinger@hotmail.de> * c-c++-common/Wcast-align.c: New test. From-SVN: r252832
Bernd Edlinger committed -
c-pragma.c (handle_pragma_scalar_storage_order): Expand on error message for non-uniform endianness and issue a warning in C++. * c-pragma.c (handle_pragma_scalar_storage_order): Expand on error message for non-uniform endianness and issue a warning in C++. From-SVN: r252831
Eric Botcazou committed -
re PR c++/78648 (ICE on invalid C++ code on x86_64-linux-gnu (Segmentation fault, contains_struct_check)) 2017-09-13 Paolo Carlini <paolo.carlini@oracle.com> PR c++/78648 * g++.dg/cpp0x/lambda/lambda-ice21.C: New. From-SVN: r252829
Paolo Carlini committed -
This commit adds comments to fields in the cgraph_thunk_info structure declaration from cgraph.h. They will hopefully answer questions that people like myself can ask while discovering the thunk machinery. I also made an assertion stricter in cgraph_node::create_thunk. Bootsrapped and regtested on x86_64-linux. gcc/ * cgraph.h (cgraph_thunk_info): Add comments. * cgraph.c (cgraph_node::create_thunk): Adjust comment, make assert for VIRTUAL_* arguments stricter. From-SVN: r252828
Pierre-Marie de Rodat committed -
2017-09-15 Jackson Woodruff <jackson.woodruff@arm.com> PR tree-optimization/71026 * match.pd: Move RDIV patterns from fold-const.c * fold-const.c (distribute_real_division): Removed. (fold_binary_loc): Remove calls to distribute_real_divison. PR tree-optimization/71026 * gcc/testsuire/gcc.dg/fold-div-1.c: Use -O1. From-SVN: r252827
Jackson Woodruff committed
-