aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2015-05-22atree.adb, [...]: Change name Needs_Actuals_Check to Check_Actuals.Robert Dewar5-54/+162
2015-05-22 Robert Dewar <dewar@adacore.com> * atree.adb, atree.ads, treepr.adb: Change name Needs_Actuals_Check to Check_Actuals. * exp_ch4.adb (Expand_N_Op_Expon): Optimize 2**x in modular and overflow cases. From-SVN: r223538
2015-05-22[multiple changes]Arnaud Charlet3-1/+22
2015-05-22 Eric Botcazou <ebotcazou@adacore.com> * exp_pakd.adb (Install_PAT): Propagate representation aspects from the original array type to the PAT. 2015-05-22 Robert Dewar <dewar@adacore.com> * treepr.adb (Print_Node_Header): Add output of Needs_Actuals_Check. From-SVN: r223537
2015-05-22atree.adb, atree.ads (Needs_Actuals_Check): New flag.Robert Dewar3-21/+61
2015-05-22 Robert Dewar <dewar@adacore.com> * atree.adb, atree.ads (Needs_Actuals_Check): New flag. From-SVN: r223536
2015-05-22sem_prag.adb (Analyze_Pragma): Remove the detection of a useless Part_Of ↵Hristian Kirtchev4-79/+63
indicator when... 2015-05-22 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Analyze_Pragma): Remove the detection of a useless Part_Of indicator when the related item is a constant. (Check_Matching_Constituent): Do not emit an error on a constant. (Check_Missing_Part_Of): Do not check for a missing Part_Of indicator when the related item is a constant. (Collect_Body_States): Code cleanup. (Collect_Visible_States): Code cleanup. (Report_Unused_States): Do not emit an error on a constant. * sem_util.ads, sem_util.adb (Has_Variable_Input): Removed. From-SVN: r223535
2015-05-22[multiple changes]Arnaud Charlet9-58/+70
2015-05-22 Eric Botcazou <ebotcazou@adacore.com> * sem_ch8.adb (Analyze_Object_Renaming): Copy Has_Volatile_Full_Access from renamed to renaming entities. * sem_prag.adb (Process_Atomic_Independent_Shared_Volatile): Tidy up and remove redundant setting of Has_Volatile_Full_Access. 2015-05-22 Hristian Kirtchev <kirtchev@adacore.com> * ghost.adb (Check_Ghost_Completion): Update references to SPARK RM 6.9 rules. (Check_Ghost_Policy): Update references to SPARK RM 6.9 rules. * sem_ch3.adb (Analyze_Object_Declaration): Update references to SPARK RM 6.9 rules. (Check_Completion): Ghost entities do not require a special form of completion. * sem_ch6.adb (Analyze_Generic_Subprogram_Body): Update references to SPARK RM 6.9 rules. (Analyze_Subprogram_Body_Helper): Update references to SPARK RM 6.9 rules. * sem_ch7.adb (Analyze_Package_Body_Helper): Update references to SPARK RM 6.9 rules. (Requires_Completion_In_Body): Ghost entities do not require a special form of completion. 2015-05-22 Robert Dewar <dewar@adacore.com> * a-csquin.ads: Use Ada 2012 notation. * sem_ch8.adb: Minor reformatting. 2015-05-22 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): Aspect Import acts as a completion. From-SVN: r223534
2015-05-22[multiple changes]Arnaud Charlet3-8/+15
2015-05-22 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb: Minor reformatting. 2015-05-22 Jose Ruiz <ruiz@adacore.com> * a-reatim.adb: Minor change, fix typo. From-SVN: r223533
2015-05-22sem_util.ads: Minor addition of ??? comment.Robert Dewar5-4/+14
2015-05-22 Robert Dewar <dewar@adacore.com> * sem_util.ads: Minor addition of ??? comment. * sem_prag.adb, sem_util.adb: Minor reformatting. * sem_ch13.adb: minor reformatting. From-SVN: r223532
2015-05-22[multiple changes]Arnaud Charlet7-28/+114
2015-05-22 Robert Dewar <dewar@adacore.com> * a-reatim.ads: Add Compile_Time_Error to ensure Duration is 64-bits. * sem_ch13.adb: Improve error message. * exp_ch4.adb: Minor reformatting. 2015-05-22 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Analyze_Pragma): Constants without variable input do not require indicator Part_Of. (Check_Missing_Part_Of): Constants without variable input do not requrie indicator Part_Of. (Collect_Visible_States): Constants without variable input are not part of the hidden state of a package. * sem_util.ads, sem_util.adb (Has_Variable_Input): New routine. From-SVN: r223531
2015-05-22* doc/extend.texi: Use @pxref instead of @xref.Marek Polacek2-2/+6
From-SVN: r223530
2015-05-22gimple.h (gimple_expr_type): Refactor to make it concise.Aditya Kumar2-28/+23
2015-05-22 hiraditya <hiraditya@msn.com> * gimple.h (gimple_expr_type): Refactor to make it concise. Remove redundant if. From-SVN: r223529
2015-05-22re PR ipa/65701 (r221530 makes 187.facerec drop with -Ofast -flto on bdver2)Richard Biener2-21/+29
2015-05-22 Richard Biener <rguenther@suse.de> PR tree-optimization/65701 * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Move peeling cost models into one place. Peel for alignment for single loads only if an aligned load is cheaper than an unaligned load. From-SVN: r223528
2015-05-22re PR c/47043 (allow deprecating enum values)Marek Polacek18-19/+223
PR c/47043 * c-common.c (handle_deprecated_attribute): Allow CONST_DECL. * c-parser.c (c_parser_enum_specifier): Parse and apply enumerator attributes. * cp-tree.h (build_enumerator): Update declaration. * decl.c (build_enumerator): Add attributes parameter. Call cplus_decl_attributes. * init.c (constant_value_1): Pass tf_none to mark_used. * parser.c (cp_parser_enumerator_definition): Parse attributes and pass them down to build_enumerator. * pt.c (tsubst_enum): Pass decl attributes to build_enumerator. * semantics.c (finish_id_expression): Don't warn_deprecated_use here. * doc/extend.texi (Enumerator Attributes): New section. Document syntax of enumerator attributes. * c-c++-common/attributes-enum-1.c: New test. * c-c++-common/attributes-enum-2.c: New test. * g++.dg/cpp0x/attributes-enum-1.C: New test. * g++.dg/cpp1y/attributes-enum-1.C: New test. Co-Authored-By: Edward Smith-Rowland <3dw4rd@verizon.net> From-SVN: r223527
2015-05-22tree-vect-loop.c (get_reduction_op): New function.Richard Biener4-53/+65
2015-05-22 Richard Biener <rguenther@suse.de> * tree-vect-loop.c (get_reduction_op): New function. (vect_model_reduction_cost): Use it, add reduc_index parameter. Make ready for BB reductions. (vect_create_epilog_for_reduction): Use get_reduction_op. (vectorizable_reduction): Init reduc_index to a valid value. Adjust vect_model_reduction_cost call. * tree-vect-slp.c (vect_get_constant_vectors): Use the proper operand for reduction defaults. Add SAD_EXPR support. Assert we have a neutral op for SLP reductions. * tree-vect-stmts.c (vect_mark_stmts_to_be_vectorized): When walking pattern stmt ops only recurse to SSA names. From-SVN: r223526
2015-05-22tree-vect-patterns.c (vect_recog_dot_prod_pattern): Replace assert with ↵Richard Biener2-19/+22
guard, remove check on detected reduction. 2015-05-22 Richard Biener <rguenther@suse.de> * tree-vect-patterns.c (vect_recog_dot_prod_pattern): Replace assert with guard, remove check on detected reduction. (vect_recog_sad_pattern): Likewise. (vect_recog_widen_sum_pattern): Likewise. From-SVN: r223525
2015-05-22[multiple changes]Arnaud Charlet4-7/+77
2015-05-21 Robert Dewar <dewar@adacore.com> * exp_util.adb (Activate_Atomic_Synchronization): Do not set Atomic_Sync_Required for an object renaming declaration. * sem_ch8.adb (Analyze_Object_Renaming): Copy Is_Atomic and Is_Independent to renaming object. 2015-05-21 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): Diagnose various illegalities in iterators over arrays and containers: a) New function Get_Cursor_Type, to verify that the cursor is not a limited type at the point of iteration. b) If the container is a constant, an element_iterator is illegal if the container type does not have a Constant_Indexing aspect. c) If the iterate function has an in-out controlling parameter, the container cannot be a constant object. d) Reject additional cases of iterators over a discriminant-dependent component of a mutable object. From-SVN: r223524
2015-05-22[AArch64] Add __extension__ and __always_inline__ to crypto intrinsicsKyrylo Tkachov2-16/+38
* config/aarch64/arm_neon.h (vaeseq_u8): Add __extension__ and __always_inline__ attribute. (vaesdq_u8): Likewise. (vaesmcq_u8): Likewise. (vaesimcq_u8): Likewise. (vsha1cq_u32): Likewise. (vsha1mq_u32): Likewise. (vsha1pq_u32): Likewise. (vsha1h_u32): Likewise. (vsha1su0q_u32): Likewise. (vsha1su1q_u32): Likewise. (vsha256hq_u32): Likewise. (vsha256h2q_u32): Likewise. (vsha256su0q_u32): Likewise. (vsha256su1q_u32): Likewise. (vmull_p64): Likewise. (vmull_high_p64): Likewise. From-SVN: r223523
2015-05-22always define HAVE_peepholeTrevor Saunders5-7/+11
gcc/ChangeLog: 2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * final.c (final_scan_insn): Don't check HAVE_peephole with the preprocessor. * output.h: Likewise. * genconfig.c (main): Alwways define HAVE_peephole. * genpeep.c: Don't emit checks of HAVE_peephole. From-SVN: r223519
2015-05-22remove #if HAVE_conditional_moveTrevor Saunders7-44/+32
gcc/ChangeLog: 2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * combine.c, expmed.c, expr.c, optabs.c optabs.h, toplev.c: DOn't check HAVE_conditional_move with the preprocessor. From-SVN: r223518
2015-05-22always define HAVE_conditional_moveTrevor Saunders10-27/+21
gcc/ChangeLog: 2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * genconfig.c (main): Always define HAVE_conditional_move. * combine.c, expmed.c, expr.c, ifcvt.c, optabs.c, optabs.h, toplev.c, tree-ssa-phiopt.c: Don't check if HAVE_conditional_move is defined. From-SVN: r223517
2015-05-22don't compare ARG_FRAME_POINTER_REGNUM and FRAME_POINTER_REGNUM with the ↵Trevor Saunders8-37/+32
preprocessor gcc/ChangeLog: 2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * combine.c, df-problems.c, df-scan.c, emit-rtl.c, reginfo.c, reload.c, rtlanal.c: Remove comparison of ARG_FRAME_POINTER_REGNUM and FRAME_POINTER_REGNUM with the preprocessor. From-SVN: r223516
2015-05-22move default for STACK_PUSH_CODE to defaults.hTrevor Saunders4-16/+14
gcc/ChangeLog: 2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h: Add default for STACK_PUSH_CODE. * expr.c: Don't redefine STACK_PUSH_CODE. * recog.c: Likewise. From-SVN: r223515
2015-05-22remove most ifdef STACK_GROWS_DOWNWARDTrevor Saunders9-87/+79
gcc/c-family/ChangeLog: 2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * c-cppbuiltin.c (c_cpp_builtins): Use if instead of #if with STACK_GROWS_DOWNWARD. gcc/ChangeLog: 2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * builtins.c, dwarf2cfi.c, explow.c, expr.c, recog.c, sched-deps.c: Use if instead of preprocessor checks with STACK_GROWS_DOWNWARD. From-SVN: r223514
2015-05-22always define STACK_GROWS_DOWNWARDTrevor Saunders49-114/+81
gcc/c-family/ChangeLog: 2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * c-cppbuiltin.c (c_cpp_builtins): Check the value of STACK_GROWS_DOWNWARD rather than if it is defined. gcc/ChangeLog: 2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * *.c: Check the value of STACK_GROWS_DOWNWARD rather than if it is defined. * config/**/*.h: Define STACK_GROWS_DOWNWARD to an integer. * defaults.h: Provide default for STACK_GROWS_DOWNWARD. * doc/tm.texi.in: Update references to STACK_GROWS_DOWNWARD. * doc/tm.texi: Regenerate. From-SVN: r223513
2015-05-22Daily bump.GCC Administrator1-1/+1
From-SVN: r223512
2015-05-21simd.exp: Skip all tests if no arm_neon_ok effective target support.Sandra Loosemore116-226/+134
2015-05-21 Sandra Loosemore <sandra@codesourcery.com> gcc/testsuite/ * gcc.target/arm/simd/simd.exp: Skip all tests if no arm_neon_ok effective target support. If no arm_neon_hw support, do not attempt to execute the tests; only compile them. * gcc.target/arm/simd/vextf32_1.c: Remove explicit "dg-do run" and "dg-require-effective-target arm_neon_ok". * gcc.target/arm/simd/vextp16_1.c: Likewise. * gcc.target/arm/simd/vextp64_1.c: Likewise. * gcc.target/arm/simd/vextp8_1.c: Likewise. * gcc.target/arm/simd/vextQf32_1.c: Likewise. * gcc.target/arm/simd/vextQp16_1.c: Likewise. * gcc.target/arm/simd/vextQp64_1.c: Likewise. * gcc.target/arm/simd/vextQp8_1.c: Likewise. * gcc.target/arm/simd/vextQs16_1.c: Likewise. * gcc.target/arm/simd/vextQs32_1.c: Likewise. * gcc.target/arm/simd/vextQs64_1.c: Likewise. * gcc.target/arm/simd/vextQs8_1.c: Likewise. * gcc.target/arm/simd/vextQu16_1.c: Likewise. * gcc.target/arm/simd/vextQu32_1.c: Likewise. * gcc.target/arm/simd/vextQu64_1.c: Likewise. * gcc.target/arm/simd/vextQu8_1.c: Likewise. * gcc.target/arm/simd/vexts16_1.c: Likewise. * gcc.target/arm/simd/vexts32_1.c: Likewise. * gcc.target/arm/simd/vexts64_1.c: Likewise. * gcc.target/arm/simd/vexts8_1.c: Likewise. * gcc.target/arm/simd/vextu16_1.c: Likewise. * gcc.target/arm/simd/vextu32_1.c: Likewise. * gcc.target/arm/simd/vextu64_1.c: Likewise. * gcc.target/arm/simd/vextu8_1.c: Likewise. * gcc.target/arm/simd/vrev16p8_1.c: Likewise. * gcc.target/arm/simd/vrev16qp8_1.c: Likewise. * gcc.target/arm/simd/vrev16qs8_1.c: Likewise. * gcc.target/arm/simd/vrev16qu8_1.c: Likewise. * gcc.target/arm/simd/vrev16s8_1.c: Likewise. * gcc.target/arm/simd/vrev16u8_1.c: Likewise. * gcc.target/arm/simd/vrev32p16_1.c: Likewise. * gcc.target/arm/simd/vrev32p8_1.c: Likewise. * gcc.target/arm/simd/vrev32qp16_1.c: Likewise. * gcc.target/arm/simd/vrev32qp8_1.c: Likewise. * gcc.target/arm/simd/vrev32qs16_1.c: Likewise. * gcc.target/arm/simd/vrev32qs8_1.c: Likewise. * gcc.target/arm/simd/vrev32qu16_1.c: Likewise. * gcc.target/arm/simd/vrev32qu8_1.c: Likewise. * gcc.target/arm/simd/vrev32s16_1.c: Likewise. * gcc.target/arm/simd/vrev32s8_1.c: Likewise. * gcc.target/arm/simd/vrev32u16_1.c: Likewise. * gcc.target/arm/simd/vrev32u8_1.c: Likewise. * gcc.target/arm/simd/vrev64f32_1.c: Likewise. * gcc.target/arm/simd/vrev64p16_1.c: Likewise. * gcc.target/arm/simd/vrev64p8_1.c: Likewise. * gcc.target/arm/simd/vrev64qf32_1.c: Likewise. * gcc.target/arm/simd/vrev64qp16_1.c: Likewise. * gcc.target/arm/simd/vrev64qp8_1.c: Likewise. * gcc.target/arm/simd/vrev64qs16_1.c: Likewise. * gcc.target/arm/simd/vrev64qs32_1.c: Likewise. * gcc.target/arm/simd/vrev64qs8_1.c: Likewise. * gcc.target/arm/simd/vrev64qu16_1.c: Likewise. * gcc.target/arm/simd/vrev64qu32_1.c: Likewise. * gcc.target/arm/simd/vrev64qu8_1.c: Likewise. * gcc.target/arm/simd/vrev64s16_1.c: Likewise. * gcc.target/arm/simd/vrev64s32_1.c: Likewise. * gcc.target/arm/simd/vrev64s8_1.c: Likewise. * gcc.target/arm/simd/vrev64u16_1.c: Likewise. * gcc.target/arm/simd/vrev64u32_1.c: Likewise. * gcc.target/arm/simd/vrev64u8_1.c: Likewise. * gcc.target/arm/simd/vtrnf32_1.c: Likewise. * gcc.target/arm/simd/vtrnp16_1.c: Likewise. * gcc.target/arm/simd/vtrnp8_1.c: Likewise. * gcc.target/arm/simd/vtrnqf32_1.c: Likewise. * gcc.target/arm/simd/vtrnqp16_1.c: Likewise. * gcc.target/arm/simd/vtrnqp8_1.c: Likewise. * gcc.target/arm/simd/vtrnqs16_1.c: Likewise. * gcc.target/arm/simd/vtrnqs32_1.c: Likewise. * gcc.target/arm/simd/vtrnqs8_1.c: Likewise. * gcc.target/arm/simd/vtrnqu16_1.c: Likewise. * gcc.target/arm/simd/vtrnqu32_1.c: Likewise. * gcc.target/arm/simd/vtrnqu8_1.c: Likewise. * gcc.target/arm/simd/vtrns16_1.c: Likewise. * gcc.target/arm/simd/vtrns32_1.c: Likewise. * gcc.target/arm/simd/vtrns8_1.c: Likewise. * gcc.target/arm/simd/vtrnu16_1.c: Likewise. * gcc.target/arm/simd/vtrnu32_1.c: Likewise. * gcc.target/arm/simd/vtrnu8_1.c: Likewise. * gcc.target/arm/simd/vuzpf32_1.c: Likewise. * gcc.target/arm/simd/vuzpp16_1.c: Likewise. * gcc.target/arm/simd/vuzpp8_1.c: Likewise. * gcc.target/arm/simd/vuzpqf32_1.c: Likewise. * gcc.target/arm/simd/vuzpqp16_1.c: Likewise. * gcc.target/arm/simd/vuzpqp8_1.c: Likewise. * gcc.target/arm/simd/vuzpqs16_1.c: Likewise. * gcc.target/arm/simd/vuzpqs32_1.c: Likewise. * gcc.target/arm/simd/vuzpqs8_1.c: Likewise. * gcc.target/arm/simd/vuzpqu16_1.c: Likewise. * gcc.target/arm/simd/vuzpqu32_1.c: Likewise. * gcc.target/arm/simd/vuzpqu8_1.c: Likewise. * gcc.target/arm/simd/vuzps16_1.c: Likewise. * gcc.target/arm/simd/vuzps32_1.c: Likewise. * gcc.target/arm/simd/vuzps8_1.c: Likewise. * gcc.target/arm/simd/vuzpu16_1.c: Likewise. * gcc.target/arm/simd/vuzpu32_1.c: Likewise. * gcc.target/arm/simd/vuzpu8_1.c: Likewise. * gcc.target/arm/simd/vzipf32_1.c: Likewise. * gcc.target/arm/simd/vzipp16_1.c: Likewise. * gcc.target/arm/simd/vzipp8_1.c: Likewise. * gcc.target/arm/simd/vzipqf32_1.c: Likewise. * gcc.target/arm/simd/vzipqp16_1.c: Likewise. * gcc.target/arm/simd/vzipqp8_1.c: Likewise. * gcc.target/arm/simd/vzipqs16_1.c: Likewise. * gcc.target/arm/simd/vzipqs32_1.c: Likewise. * gcc.target/arm/simd/vzipqs8_1.c: Likewise. * gcc.target/arm/simd/vzipqu16_1.c: Likewise. * gcc.target/arm/simd/vzipqu32_1.c: Likewise. * gcc.target/arm/simd/vzipqu8_1.c: Likewise. * gcc.target/arm/simd/vzips16_1.c: Likewise. * gcc.target/arm/simd/vzips32_1.c: Likewise. * gcc.target/arm/simd/vzips8_1.c: Likewise. * gcc.target/arm/simd/vzipu16_1.c: Likewise. * gcc.target/arm/simd/vzipu32_1.c: Likewise. * gcc.target/arm/simd/vzipu8_1.c: Likewise. From-SVN: r223508
2015-05-21bb-slp-pr65935.c: Remove explicit "dg-do run".Sandra Loosemore10-12/+12
2015-05-21 Sandra Loosemore <sandra@codesourcery.com> gcc/testsuite/ * gcc.dg/vect/bb-slp-pr65935.c: Remove explicit "dg-do run". * gcc.dg/vect/pr59354.c: Likewise. * gcc.dg/vect/pr64252.c: Likewise. * gcc.dg/vect/pr64404.c: Likewise. * gcc.dg/vect/pr64493.c: Likewise. * gcc.dg/vect/pr64495.c: Likewise. * gcc.dg/vect/pr64844.c: Likewise. * gcc.dg/vect/pr65518.c: Likewise. * gcc.dg/vect/vect-aggressive-1.c: Likewise. From-SVN: r223507
2015-05-21re PR c++/66210 (Variable template specialization does not work with ↵Paolo Carlini2-2/+22
alias-declarations) 2015-05-21 Paolo Carlini <paolo.carlini@oracle.com> PR c++/66210 * g++.dg/cpp1y/var-templ28.C: New. From-SVN: r223506
2015-05-21Allow indirect branch via GOT slot for x32H.J. Lu10-0/+122
X32 doesn't support indirect branch via 32-bit memory slot since indirect branch will load 64-bit address from 64-bit memory slot. Since x32 GOT slot is 64-bit, we should allow indirect branch via GOT slot for x32. gcc/ PR target/66232 * config/i386/constraints.md (Bg): New constraint for GOT memory operand. * config/i386/i386.md (*call_got_x32): New pattern. (*call_value_got_x32): Likewise. * config/i386/predicates.md (GOT_memory_operand): New predicate. gcc/testsuite/ PR target/66232 * gcc.target/i386/pr66232-1.c: New test. * gcc.target/i386/pr66232-2.c: Likewise. * gcc.target/i386/pr66232-3.c: Likewise. * gcc.target/i386/pr66232-4.c: Likewise. * gcc.target/i386/pr66232-5.c: Likewise. From-SVN: r223505
2015-05-21re PR c++/60943 ([C++14] Return type deduction interferes with ref-qualifiers)Nathan Sidwell4-1/+28
cp/ PR c++/60943 * decl2.c (change_return_type): Propagate FUNCTION_REF_QUALIFIED. testsuite/ * g++.dg/cpp1y/pr60943.C: New. From-SVN: r223502
2015-05-21re PR tree-optimization/66233 (internal compiler error: in expand_fix, at ↵Jakub Jelinek4-9/+38
optabs.c:5358) PR tree-optimization/66233 * match.pd (ocvt (icvt@1 @0)): Don't handle vector types. Simplify. * gcc.c-torture/execute/pr66233.c: New test. From-SVN: r223500
2015-05-21re PR fortran/66176 (Handle conjg() in inline matmul)Thomas Koenig4-12/+104
2015-05-21 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/66176 * frontend-passes.c (check_conjg_variable): New function. (inline_matmul_assign): Use it to keep track of conjugated variables. 2015-05-21 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/66176 * gfortran.dg/inline_matmul_11.f90: New test From-SVN: r223499
2015-05-21pr32219-1.c: Use 'dg-require-effective-target pie' instead of listing ↵Andreas Tobler12-11/+36
several targets on its own. 2015-05-21 Andreas Tobler <andreast@gcc.gnu.org> * gcc.target/i386/pr32219-1.c: Use 'dg-require-effective-target pie' instead of listing several targets on its own. * gcc.target/i386/pr32219-2.c: Likewise. * gcc.target/i386/pr32219-3.c: Likewise. * gcc.target/i386/pr32219-4.c: Likewise. * gcc.target/i386/pr32219-5.c: Likewise. * gcc.target/i386/pr32219-6.c: Likewise * gcc.target/i386/pr32219-7.c: Likewise. * gcc.target/i386/pr32219-8.c: Likewise. * gcc.target/i386/pr39013-1.c: Likewise. * gcc.target/i386/pr39013-2.c: Likewise. * gcc.target/i386/pr64317.c: Likewise. From-SVN: r223498
2015-05-21pa.md (add-with-constant splitter): Use ASHIFT rather than MULT for shadd ↵Jeff Law4-4/+21
sequences. * config/pa/pa.md (add-with-constant splitter): Use ASHIFT rather than MULT for shadd sequences. * gcc.target/hppa/shadd-4.c: New test. From-SVN: r223495
2015-05-21alias.c (alias_stats): New static var.Jan Hubicka4-8/+70
* alias.c (alias_stats): New static var. (alias_sets_conflict_p, alias_sets_must_conflict_p): Update stats. (dump_alias_stats_in_alias_c): New function. * alias.h (dump_alias_stats_in_alias_c): Declare. * tree-ssa-alias.c (dump_alias_stats): Call it. From-SVN: r223491
2015-05-21See <https://gcc.gnu.org/ml/gcc-patches/2015-05/msg01977.html> forMarek Polacek2-2/+8
the rationale. Bootstrapped/regtested on x86_64-linux, applying to trunk. 2015-05-21 Marek Polacek <polacek@redhat.com> * c-typeck.c (inform_declaration): Use DECL_IS_BUILTIN instead of DECL_BUILT_IN. diff --git gcc/c/c-typeck.c gcc/c/c-typeck.c index ba8797b..f55d4c6 100644 --- gcc/c/c-typeck.c +++ gcc/c/c-typeck.c @@ -2853,9 +2853,10 @@ build_function_call (location_t loc, tree function, tree params) /* Give a note about the location of the declaration of DECL. */ -static void inform_declaration (tree decl) +static void +inform_declaration (tree decl) { - if (decl && (TREE_CODE (decl) != FUNCTION_DECL || !DECL_BUILT_IN (decl))) + if (decl && (TREE_CODE (decl) != FUNCTION_DECL || !DECL_IS_BUILTIN (decl))) inform (DECL_SOURCE_LOCATION (decl), "declared here"); } From-SVN: r223490
2015-05-21* typeck.c (warn_args_num): Don't print "declare here" for builtins.Marek Polacek2-2/+6
From-SVN: r223489
2015-05-21tree-vectorizer.h (struct _stmt_vec_info): Rename stride_load_p to strided_p.Michael Matz8-52/+233
* tree-vectorizer.h (struct _stmt_vec_info): Rename stride_load_p to strided_p. (STMT_VINFO_STRIDE_LOAD_P): Rename to ... (STMT_VINFO_STRIDED_P): ... this. * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Adjust. (vect_verify_datarefs_alignment): Likewise. (vect_enhance_data_refs_alignment): Likewise. (vect_analyze_data_ref_access): Likewise. (vect_analyze_data_refs): Accept strided stores. * tree-vect-stmts.c (vect_model_store_cost): Count strided stores. (vect_model_load_cost): Adjust for macro rename. (vectorizable_mask_load_store): Likewise. (vectorizable_load): Likewise. (vectorizable_store): Open code strided stores. testsuite/ * gcc.dg/vect/vect-strided-store.c: New test. * gfortran.dg/vect/fast-math-pr37021.f90: Adjust. * gfortran.dg/vect/fast-math-rnflow-trs2a2.f90: Adjust. From-SVN: r223486
2015-05-21Testsuite check for sqrt_insn. Move pow/sqrt synth test from ↵Kyrylo Tkachov5-3/+38
gcc.target/aarch64/ to to gcc.dg/ * lib/target-supports.exp (check_effective_target_sqrt_insn): New check. * gcc.dg/pow-sqrt-synth-1.c: New test. * gcc.target/aarch64/pow-sqrt-synth-1.c: Delete. * doc/sourcebuild.texi (7.2.3.9 Other hardware attributes): Document sqrt_insn. From-SVN: r223485
2015-05-21einfo.adb (Contract): This attribute now applies to constants.Hristian Kirtchev7-104/+193
2015-05-21 Hristian Kirtchev <kirtchev@adacore.com> * einfo.adb (Contract): This attribute now applies to constants. (Set_Contract): This attribute now applies to constants. (Write_Field34_Name): Add output for constants. * einfo.ads Attribute Contract now applies to constants. * sem_ch3.adb (Analyze_Object_Contract): Constants now have their Part_Of indicator verified. * sem_prag.adb (Analyze_Constituent): A constant is now a valid constituent. (Analyze_Global_Item): A constant cannot act as an output. (Analyze_Initialization_Item): Constants are now a valid initialization item. (Analyze_Initializes_In_Decl_Part): Rename global variable States_And_Vars to States_And_Objs and update all its occurrences. (Analyze_Input_Item): Constants are now a valid initialization item. Remove SPARM RM references from error messages. (Analyze_Pragma): Indicator Part_Of can now apply to a constant. (Collect_Body_States): Collect both source constants and variables. (Collect_States_And_Objects): Collect both source constants and variables. (Collect_States_And_Variables): Rename to Collect_States_And_Objects and update all its occurrences. (Collect_Visible_States): Do not collect constants and variables used to map generic formals to actuals. (Find_Role): The role of a constant is that of an input. Separate the role of a variable from that of a constant. (Report_Unused_Constituents): Add specialized wording for constants. (Report_Unused_States): Add specialized wording for constants. * sem_util.adb (Add_Contract_Item): Add processing for constants. * sem_util.ads (Add_Contract_Item): Update the comment on usage. (Find_Placement_In_State_Space): Update the comment on usage. From-SVN: r223484
2015-05-21re PR c++/66211 (Rvalue conversion in ternary operator causes internal ↵Richard Biener5-5/+29
compiler error) 2015-05-21 Richard Biener <rguenther@suse.de> PR c++/66211 * match.pd: Guard pattern optimzing (int)(float)int conversions to apply only on GIMPLE. * g++.dg/conversion/pr66211.C: New testcase. * gcc.dg/tree-ssa/forwprop-18.c: Adjust. From-SVN: r223483
2015-05-21[multiple changes]Arnaud Charlet3-10/+19
2015-05-21 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb: minor reformatting. 2015-05-21 Robert Dewar <dewar@adacore.com> * freeze.adb (Freeze_Entity): Properly tag -gnatw.z messages. From-SVN: r223482
2015-05-21combine.c (find_split_point): Handle ASHIFT like MULT to encourage ↵Jeff Law4-1/+61
multiply-accumulate/shift-add insn generation. * combine.c (find_split_point): Handle ASHIFT like MULT to encourage multiply-accumulate/shift-add insn generation. * gcc.target/hppa/shadd-2.c: New test. From-SVN: r223481
2015-05-21pa.c (pa_print_operand): New 'o' output modifier.Jeff Law8-3/+117
2015-05-20 Jeff Law <law@redhat.com> * config/pa/pa.c (pa_print_operand): New 'o' output modifier. (pa_mem_shadd_constant_p): Renamed from pa_shadd_constant_p. (pa_shadd_constant_p): Allow constants for shadd insns rather than valid scaling constants for memory addresses. * config/pa/pa-protos.h (pa_mem_shadd_constant_p): Add prototype. * config/pa/predicates.md (mem_shadd_operand): New predicate. * config/pa/pa.md (shift-add insns using MULT): Use mem_shadd_operand. (shift-add insns using ASHIFT): New patterns. * gcc.target/hppa/hppa.exp: New target test driver. * gcc.target/hppa/shadd-1.c: New test. From-SVN: r223480
2015-05-21re PR target/54236 ([SH] Improve addc and subc insn utilization)Oleg Endo4-2/+14
gcc/ PR target/54236 * config/sh/sh.md (*round_int_even): Reject pattern if operands[0] and operands[1] are the same. gcc/testsuite/ PR target/54236 * gcc.target/sh/pr54236-2.c: Fix typo in comment. From-SVN: r223479
2015-05-21[multiple changes]Arnaud Charlet6-85/+174
2015-05-21 Robert Dewar <dewar@adacore.com> * freeze.adb: Minor reformatting. * cstand.adb (Print_Standard): Fix bad printing of Duration low bound. * a-reatim.adb (Time_Of): Complete rewrite to properly detect out of range args. 2015-05-21 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb: add (useless) initial value. * sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram): Check whether the procedure has parameters before processing formals in ASIS mode. From-SVN: r223477
2015-05-21Minor reformatting.Arnaud Charlet1-3/+2
From-SVN: r223476
2015-05-21sem_ch13.adb (Check_Iterator_Functions): Emit error on Iterator aspect as ↵Ed Schonberg3-16/+53
well when indexing function is illegal. 2015-05-21 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Check_Iterator_Functions): Emit error on Iterator aspect as well when indexing function is illegal. (Valid_Default_Iterator): Handle properly somme illegal cases to prevent compilation abandoned messages. (Check_Primitive_Function): Verify that type and indexing function are in the same scope. * freeze.adb (Freeze_Record): Extend patch on the presence of indexing aspects to aspect Default_Iterator. From-SVN: r223475
2015-05-21re PR target/26702 (.size is not emitted for BSS variables)Ramana Radhakrishnan2-1/+6
Fix PR target/26702 For Kwok Cheung Yeung. From-SVN: r223473
2015-05-21re PR middle-end/66221 (lto1: error: type variant has different TYPE_ARG_TYPES)Ilya Enkovich5-1/+27
gcc/ PR middle-end/66221 * ipa-chkp.c (chkp_copy_function_type_adding_bounds): Use build_distinct_type_copy to copy bounds. gcc/testsuite/ PR middle-end/66221 * gcc.dg/lto/pr66221_0.c: New test. * gcc.dg/lto/pr66221_1.c: New test. From-SVN: r223471
2015-05-21re PR c/52952 (Wformat location info is bad (wrong column number))Manuel López-Ibáñez12-143/+298
gcc/testsuite/ChangeLog: 2015-05-21 Manuel López-Ibáñez <manu@gcc.gnu.org> PR c/52952 * gcc.dg/redecl-4.c: Update column numbers. * gcc.dg/format/bitfld-1.c: Likewise. * gcc.dg/format/attr-2.c: Likewise. * gcc.dg/format/attr-6.c: Likewise. * gcc.dg/format/attr-7.c (baz): Likewise. * gcc.dg/format/asm_fprintf-1.c: Likewise. * gcc.dg/format/attr-4.c: Likewise. * gcc.dg/format/branch-1.c: Likewise. * gcc.dg/format/c90-printf-1.c: Likewise. Add tests for column locations within strings with embedded escape sequences. gcc/c-family/ChangeLog: 2015-05-21 Manuel López-Ibáñez <manu@gcc.gnu.org> PR c/52952 * c-format.c (location_column_from_byte_offset): New. (location_from_offset): New. (struct format_wanted_type): Add offset_loc field. (check_format_info): Move handling of location for extra arguments closer to the point of warning. (check_format_info_main): Pass the result of location_from_offset to warning_at. (format_type_warning): Pass the result of location_from_offset to warning_at. From-SVN: r223470