aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-12-13Add C testcases for PR 86659Andrew Pinski3-0/+89
testsuite/ChangeLog: 2019-12-13 Andrew Pinski <apinski@marvell.com> * gcc.c-torture/execute/pr86659-1.c: New test. * gcc.c-torture/execute/pr86659-2.c: New test. From-SVN: r279338
2019-12-13libgomp/openacc.f90 – clean-up public/private attributesTobias Burnus2-9/+20
libgomp/ * openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark all symbols as public except for the 'use …, only' imported symbol, which is private. (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark all symbols from module openacc_kinds as PUBLIC; add missing PUBLIC attributes for acc_copyout_finalize and acc_delete_finalize. From-SVN: r279337
2019-12-13[rs6000] Adjust vectorization cost for scalar COND_EXPRKewen Lin2-0/+30
We found that the vectorization cost modeling on scalar COND_EXPR is a bit off on rs6000. One typical case is 548.exchange2_r, -Ofast -mcpu=power9 -mrecip -fvect-cost-model=unlimited is better than -Ofast -mcpu=power9 -mrecip (the default is -fvect-cost-model=dynamic) by 1.94%. Scalar COND_EXPR is expanded into compare + branch or compare + isel normally, either of them should be priced more than the simple FXU operation. This patch is to add additional vectorization cost onto scalar COND_EXPR on top of builtin_vectorization_cost. The idea to use additional cost value 2 instead of the others: 1) try various possible value candidates from 1 to 5, 2 is the best measured on Power9. 2) from latency view, compare takes 3 cycles and isel takes 2 on Power9, it's 2.5 times of simple FXU instruction which takes cost 1 in the current modeling, it's close. 3) get fine SPEC2017 ratio on Power8 as well. gcc/ChangeLog * config/rs6000/rs6000.c (adjust_vectorization_cost): New function. (rs6000_add_stmt_cost): Call adjust_vectorization_cost and update stmt_cost. From-SVN: r279336
2019-12-13PR c++/92496 - ICE with <=> and no #include <compare>.Jason Merrill3-1/+22
* typeck.c (cp_build_binary_op): Handle error from spaceship_type. From-SVN: r279331
2019-12-13Daily bump.GCC Administrator1-1/+1
From-SVN: r279330
2019-12-13re PR target/92904 (varargs for __int128 is placed at an unaligned location ↵Jakub Jelinek4-0/+413
and uses movdqa for the load) PR target/92904 * config/i386/i386.c (ix86_gimplify_va_arg): If need_intregs and not need_temp, decrease alignment of the read because the GPR save area only guarantees 8-byte alignment. * gcc.c-torture/execute/pr92904.c: New test. From-SVN: r279327
2019-12-12re PR fortran/92898 (ICE in gfc_check_is_contiguous, at fortran/check.c:7157)Harald Anlauf4-3/+19
2019-12-12 Harald Anlauf <anlauf@gmx.de> PR fortran/92898 * check.c (gfc_check_is_contiguous): Simplify check to handle arbitrary NULL() argument. PR fortran/92898 * gfortran.dg/pr92898.f90: New test. From-SVN: r279314
2019-12-12[Committed, testsuite] Fix PR92870Sudakshina Das2-1/+9
With my recent commit, I added a test that is not passing on all targets. My change was valid for targets that have a vector/scalar shift/rotate optabs (optab that supports vector shifted by scalar). Since it does not seem to be easy to find out which targets would support it, I am limiting the test to the targets that I know pass. gcc/testsuite/ChangeLog 2019-12-12 Sudakshina Das <sudi.das@arm.com> PR testsuite/92870 * gcc.dg/vect/vect-shift-5.c: Add target to scan-tree-dump. From-SVN: r279310
2019-12-12Add support for some more AVR devices from avrxmega3 family.Georg-Johann Lay3-1/+22
* config/avr/avr-mcus.def (attiny1604, attiny1606, attiny1607) (attiny402, attiny404, attiny406) (attiny804, attiny806, attiny807) (attiny202, attiny204): Add AVR_MCU lines to support them. * doc/avr-mmcu.texi: Regenerate. From-SVN: r279309
2019-12-12libstdc++: Simplify std::common_comparison_categoryJonathan Wakely2-31/+30
* libsupc++/compare (common_comparison_category): Define without using concepts and optimise for compilation time. (__detail::__cmp_cat_ids): Remove. (__detail::__common_cmp_cat): Replace class template and specializations with constexpr function. From-SVN: r279307
2019-12-12ipa-prop.c (read_ipcp_transformation_info): Fix undefined ordering of ↵Jan Hubicka2-2/+8
execution of function call parameters. * ipa-prop.c (read_ipcp_transformation_info): Fix undefined ordering of execution of function call parameters. From-SVN: r279306
2019-12-12[Ada] Spurious warning about change of representastion in callEd Schonberg2-0/+15
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * sem_ch13.adb (Same_Reprewentation): if the actual in a call is a generic actual type, use its bsae type to determine whether a change of representastion may be necessary for proper parameter passing. From-SVN: r279305
2019-12-12[Ada] Spurious error on universal access equality operatorEd Schonberg2-2/+10
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * sem_type.adb (Find_Unique_Type): A call to the universal access equality operator requires one operand to be a universal access, and the other to be an access type. There is no requirement, as previously implied by this routine, that pool-specific access types were illegal in this context. From-SVN: r279304
2019-12-12[Ada] Tighten up semantic checking for protected subprogram declarationsSteve Baird2-13/+62
2019-12-12 Steve Baird <baird@adacore.com> gcc/ada/ * sem_ch6.adb (New_Overloaded_Entity.Check_Conforming_Paramters): Add new Conformance_Type parameter. With the value of Subtype_Conformant, the behavior of Check_Conforming_Parameters is unchanged. The call in Matching_Entry_Or_Subprogram to instead passes in Type_Conformant. This corresponds to the use of "type conformant" in Ada RM 9.4(11.4/3). (New_Overloaded_Entity.Has_Matching_Entry_Or_Subprogram): Add new Normalized_First_Parameter_Type function to help in ignoring the distinction between protected and access-to-protected first parameters when checking prefixed-view profile matching. Replace computations of the type of the first parameter with calls to this function as appropriate. From-SVN: r279303
2019-12-12[Ada] Missing dereference in bound of slice in element iteratorEd Schonberg2-0/+30
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * sem_ch5.adb: (Analyze_Iterator_Specification): If the iteration is over a slice, complete the resolution of its bounds, which may be aebitrary expressions. The previous pre-analysis may have created itypes for the slice but has not performed the expansion that for example may introduce actions that specify explicit dereferences and run-time checks. From-SVN: r279302
2019-12-12[Ada] Improve error message for dispatching subprogram formalsEd Schonberg2-3/+13
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * sem_ch8.adb: Improve error message for dispatching subprogram formals. From-SVN: r279301
2019-12-12[Ada] Fix related to handling up-level references in protected entriesGary Dismukes2-1/+9
2019-12-12 Gary Dismukes <dismukes@adacore.com> gcc/ada/ * exp_ch9.adb (Build_Protected_Entry): Set the Scope of the new block to be the entity of the procedure created for the entry. From-SVN: r279300
2019-12-12[Ada] Improved handling of circular compilation dependenciesSteve Baird2-0/+21
2019-12-12 Steve Baird <baird@adacore.com> gcc/ada/ * sem_ch10.adb (Install_With_Clause): Check for the case of a circular dependency involving a predefined (or GNAT-defined) unit and handle that case by generating an appropropriate error message. From-SVN: r279299
2019-12-12[Ada] Fix various typos, plus minor reformattingGary Dismukes3-6/+10
2019-12-12 Gary Dismukes <dismukes@adacore.com> gcc/ada/ * sem_ch4.adb, sem_res.adb: Minor reformatting. From-SVN: r279298
2019-12-12[Ada] Broken privacy on Controlled type extensionsJustin Squirek2-2/+57
2019-12-12 Justin Squirek <squirek@adacore.com> gcc/ada/ * sem_ch4.adb (Analyze_One_Call): Add condition to check for incorrectly resolved hidden controlled primitives. From-SVN: r279297
2019-12-12[Ada] Fix processing of standard predefined operatorsEd Schonberg2-1/+9
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * sem_res.adb: Fix processing of standard predefined operators. From-SVN: r279296
2019-12-12[Ada] Fix Global contract for the predefined Yield procedurePiotr Trojanek2-1/+7
2019-12-12 Piotr Trojanek <trojanek@adacore.com> gcc/ada/ * libgnarl/a-dispat.ads (Yield): Update Global contract. From-SVN: r279295
2019-12-12[Ada] Fix repeated words and typos in doc and commentsPiotr Trojanek19-40/+60
2019-12-12 Piotr Trojanek <trojanek@adacore.com> gcc/ada/ * libgnat/g-altive.ads: Fix typo in comment. * bindo-graphs.adb: Fix repeated words in comment. * exp_ch4.adb: Likewise. * exp_ch5.adb: Likewise. * exp_ch7.adb: Likewise. * exp_pakd.adb: Likewise. * exp_unst.adb: Likewise. * exp_util.adb: Likewise. * freeze.adb: Likewise. * inline.adb: Likewise. * layout.adb: Likewise. * sem_ch12.adb: Likewise. * sem_ch13.adb: Likewise. * sem_ch4.adb: Likewise. * sem_ch9.adb: Likewise. * sem_elab.adb: Likewise. * doc/gnat_ugn/gnat_and_program_execution.rst: Fix repeated words in user documentation. * gnat_ugn.texi: Regenerate. From-SVN: r279294
2019-12-12[Ada] Fix wrong value of 'Size for slices of bit-packed arrays (2)Eric Botcazou3-7/+16
2019-12-12 Eric Botcazou <ebotcazou@adacore.com> gcc/ada/ * exp_attr.adb (Expand_Size_Attribute): Look directly at the prefix to detect the bit-packed slices. Apply the checks last in case the attribute needs to be processed by the back-end. * exp_ch4.adb (Expand_N_Slice): Do not create a temporary for a prefix of the Size attribute. From-SVN: r279293
2019-12-12[Ada] Implement AI12-0036 (a new legality check for instantiations)Steve Baird2-0/+35
2019-12-12 Steve Baird <baird@adacore.com> gcc/ada/ * sem_ch12.adb (Instantiate_Type.Validate_Derived_Type_Instance): Implement the legality check of AI12-0036 From-SVN: r279292
2019-12-12[Ada] Spurious visibility error on subunit with optimizationEd Schonberg2-0/+14
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * sem_ch10.adb (Analyze_Subunit): Fix spurious visibility error on subunit with optimization. From-SVN: r279291
2019-12-12[Ada] Define __gnat_personality_v0 for SEHArnaud Charlet2-0/+17
2019-12-12 Arnaud Charlet <charlet@adacore.com> gcc/ada/ * raise-gcc.c (__gnat_personality_v0): Define for SEH. From-SVN: r279290
2019-12-12[Ada] Handling up-level references in protected entries and freeze nodesGary Dismukes2-0/+42
2019-12-12 Gary Dismukes <dismukes@adacore.com> gcc/ada/ * exp_ch9.adb (Build_Protected_Entry): Analyze the block created to hold the declarations and statements of the protected entry body right after it's created, and then call Reset_Scopes_To on that block to reset the Scope of nested entities to the block scope. (Reset_Scope): Add handling for N_Freeze_Entity nodes, calling Reset_Scopes recursively on the Actions of such nodes. Also, for subprogram bodies that are encountered that might not have a separate declaration (such as type init procedures), reset the Scope of the subprogram's entity. From-SVN: r279289
2019-12-12[Ada] Missing error on incorrect use of Result attributeJustin Squirek2-0/+6
2019-12-12 Justin Squirek <squirek@adacore.com> gcc/ada/ * sem_attr.adb (Analyze_Attribute): Add error message for invalid usage of Attribute_Result. From-SVN: r279288
2019-12-12[Ada] Crash on Descriptor_Size attributeBob Duff2-0/+10
2019-12-12 Bob Duff <duff@adacore.com> gcc/ada/ * sem_attr.adb (Eval_Attribute): Never mark T'Descriptor_Size as static, even if T is a static subtype, because otherwise we will request the value of the attribute, which will crash because we have not evaluated it. From-SVN: r279287
2019-12-12[Ada] Missing length check on private type with unknown discriminantsEd Schonberg2-7/+23
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * exp_ch5.adb (Expand_N_Assognment_Statement): Extend the processing involving private types with unknown discriminants to handle the case where the full view of the type is an unconstrained array type. From-SVN: r279286
2019-12-12[Ada] Compiler crash on prefix call in generic bodyBob Duff2-46/+50
2019-12-12 Bob Duff <duff@adacore.com> gcc/ada/ * sem_ch4.adb (Transform_Object_Operation): Deal properly with prefix notation in instances. From-SVN: r279285
2019-12-12[Ada] Use correct subtype for call to Last in formal vectorsClaire Dross3-2/+7
2019-12-12 Claire Dross <dross@adacore.com> gcc/ada/ * libgnat/a-cofove.adb, libgnat/a-cfinve.adb (Find_Index): Use Extended_Index for call to Last. From-SVN: r279284
2019-12-12[Ada] Fix a number of typos, plus minor reformattingGary Dismukes3-17/+19
2019-12-12 Gary Dismukes <dismukes@adacore.com> gcc/ada/ * sem_ch3.adb, sem_util.adb: Minor reformatting. From-SVN: r279283
2019-12-12[Ada] Update gnatmetric documentation for average lengthsBob Duff2-4/+7
2019-12-12 Bob Duff <duff@adacore.com> gcc/ada/ * doc/gnat_ugn/gnat_utility_programs.rst: Update gnatmetric documentation for average lengths From-SVN: r279282
2019-12-12[Ada] Constraint is ignored on constrained access record componentEd Schonberg6-18/+144
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * sem_ch3.adb (Constrain_Access): Remove obsolete comments and warning concerning component types of an access type whose designated type is a constrained record type. (Such constraints were previously ignored). Set scope of itype for component to the scope of the enclosing record. * sem_ch4.adb: Remove call to Set_Ekind. * sem_util.adb (Build_Actual_Subtype_Of_Component): Handle components whose type is an access to a constrained discriminant, where the constraints may be given by the discriminants of the enclosing type. New subprogram Build_Access_Record_Constraint. gcc/testsuite/ * gnat.dg/warn24.adb: Remove expected warning. From-SVN: r279281
2019-12-12[Ada] Crash on use of Loop_Entry, Result, and Old as actualsJustin Squirek3-1/+43
2019-12-12 Justin Squirek <squirek@adacore.com> gcc/ada/ * exp_ch6.adb (Expand_Call_Helper): Added null case for 'Loop_Entry, 'Old, and 'Result when calculating whether to create extra accessibility parameters. * sem_util.adb (Dynamic_Accessibility_Level): Added null case for 'Loop_Entry, 'Old, and 'Result when calculating accessibility level based on access-valued attributes. Also added special handling for uses of 'Loop_Entry when used in its indexed component form. From-SVN: r279280
2019-12-12[Ada] Remove references to VMSArnaud Charlet2-72/+7
2019-12-12 Arnaud Charlet <charlet@adacore.com> gcc/ada/ * raise-gcc.c: Remove references to VMS From-SVN: r279279
2019-12-12[Ada] Mark Ada subprograms and variables referenced from gigiEric Botcazou42-199/+352
2019-12-12 Eric Botcazou <ebotcazou@adacore.com> gcc/ada/ * atree.ads, comperr.ads, debug.ads, einfo.ads, elists.ads, err_vars.ads, errout.ads, exp_ch11.ads, exp_code.ads, exp_dbug.ads, exp_tss.ads, exp_util.ads, lib.ads, namet.ads, nlists.ads, opt.ads, repinfo.ads, restrict.ads, scos.ads, sem_aggr.ads, sem_aux.ads, sem_eval.ads, sem_util.ads, sinfo.ads, sinput.ads, stringt.ads, targparm.ads, types.ads, urealp.ads warnsw.ads: Add WARNING line(s) in commentary. * atree.h, elists.h, namet.h, nlists.h, repinfo.h, scos.h, stringt.h, types.h, uintp.h, urealp.h: Tidy up. * fe.h: Likewise. Document WARNING mark. From-SVN: r279278
2019-12-12[Ada] Improve end of command line arguments detectionDmitriy Anisimkov3-9/+46
2019-12-12 Dmitriy Anisimkov <anisimko@adacore.com> gcc/ada/ * libgnat/g-comlin.ads (Get_Argument): New routine similar to original Get_Argument but with one more out parameter End_Of_Arguments. (Get_Arguments): Comment improved. * libgnat/g-comlin.adb (Get_Argument): Implementation taken from original Get_Argument and improved. (Get_Argument): Calls new routine Get_Argument with additional parameter. From-SVN: r279277
2019-12-12[Ada] Remove implicit anonymous access conversion in testcasePierre-Marie de Rodat2-1/+6
2019-12-12 Pierre-Marie de Rodat <derodat@adacore.com> gcc/testsuite/ * gnat.dg/subp_inst_pkg.adb: Remove implicit anonymous access conversion. From-SVN: r279276
2019-12-12[ARC] generate signaling FDCMPF for hard float comparisonsVineet Gupta6-3/+45
PR 92846: ARC gcc generates FDCMP instructions which raises Invalid operation for signaling NaN only. This causes glibc iseqsig() primitives to fail (in the current ongoing glibc port to ARC) So break up the hard float compares into tw categories and for unordered compares generate the FDCMPF instructions which raised exception for either NaNs. With this fix testsuite/gcc.dg/torture/pr52451.c passes for ARC. Also no regressions for the glibc math testsuite, only 6 additional passes for test*iseqsig gcc/ xxxx-xx-xx Vineet Gupta <vgupta@synopsys.com> * config/arc/arc-modes.def (CC_FPUE): New Mode CC_FPUE which helps codegen generate exceptions even for quiet NaN. * config/arc/arc.c (arc_init_reg_tables): Handle New CC_FPUE mode. (get_arc_condition_code): Likewise. (arc_select_cc_mode): LT, LE, GT, GE to use the New CC_FPUE mode. * config/arc/arc.h (REVERSE_CONDITION): Handle New CC_FPUE mode. * config/arc/predicates.md (proper_comparison_operator): Likewise. * config/arc/fpu.md (cmpsf_fpu_trap): New Pattern for CC_FPUE. (cmpdf_fpu_trap): Likewise. Signed-off-by: Vineet Gupta <vgupta@synopsys.com> From-SVN: r279274
2019-12-12[ARC] Use hardware support for double-precision compare instructions.Claudiu Zissulescu2-2/+7
Allow the compiler to use the double-precision compare instructions. xxxx-xx-xx Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.md (iterator SDF): Check TARGET_FP_DP_BASE. (cstoredi4): Use TARGET_HARD_FLOAT. From-SVN: r279273
2019-12-12libstdc++: Fix tr1 definition ambiguity in versioned namespaceFrançois Dumont9-0/+40
* include/tr1/cctype: Add _GLIBCXX_BEGIN_VERSION_NAMESPACE and _GLIBCXX_END_VERSION_NAMESPACE. * include/tr1/cfenv: Likewise. * include/tr1/cinttypes: Likewise. * include/tr1/cstdint: Likewise. * include/tr1/cstdio: Likewise. * include/tr1/cstdlib: Likewise. * include/tr1/cwchar: Likewise. * include/tr1/cwctype: Likewise. From-SVN: r279272
2019-12-12libstdc++: Qualify isdigit call to fix versioned namespace build.François Dumont2-1/+7
* src/c++11/random.cc: Include <cctype>. (random_devise::_M_init_pretr1): Qualify isdigit call. From-SVN: r279271
2019-12-12Daily bump.GCC Administrator1-1/+1
From-SVN: r279270
2019-12-12opts.c (default_options_table): Move -ftree-loop-distribute-patterns entry ↵Jakub Jelinek3-3/+8
from -O3 or later section to -O2 or... * opts.c (default_options_table): Move -ftree-loop-distribute-patterns entry from -O3 or later section to -O2 or later section. * doc/invoke.texi (-ftree-loop-distribute-patterns): Mention the option is enabled by default at -O2+ rather than just at -O3. From-SVN: r279267
2019-12-12re PR fortran/92899 ([OpenMP] ICE in gfc_trans_omp_atomic, at ↵Jakub Jelinek4-2/+58
fortran/trans-openmp.c:3769) PR fortran/92899 * trans-openmp.c (gfc_trans_omp_atomic): For GFC_OMP_ATOMIC_SWAP, do look through conversion on expr2 if any. * testsuite/libgomp.fortran/atomic1.f90: New test. From-SVN: r279266
2019-12-12re PR target/92723 (ICE in expand_shift_1, at expmed.c:2635)Jakub Jelinek4-12/+24
PR target/92723 * tree-vect-patterns.c (vect_recog_rotate_pattern): If dt is not vect_internal_def, use oprnd1 as is, without trying to cast it. Formatting fix. * gcc.dg/vect/pr92723.c: New test. From-SVN: r279265
2019-12-11configure.ac: Factor out common cases for compare_exclusions.Matthias Klose3-4/+9
2019-12-11 Matthias Klose <doko@ubuntu.com> * configure.ac: Factor out common cases for compare_exclusions. * configure: Regenerate. From-SVN: r279250