aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2016-12-21re PR fortran/78866 (ICE in gimplify_adjust_omp_clauses_1, at gimplify.c:8721)Jakub Jelinek7-1/+71
PR fortran/78866 * openmp.c (resolve_omp_clauses): Diagnose assumed size arrays in OpenMP map, to and from clauses. * trans-openmp.c: Include diagnostic-core.h, temporarily redefining GCC_DIAG_STYLE to __gcc_tdiag__. (gfc_omp_finish_clause): Diagnose implicitly mapped assumed size arrays. * gfortran.dg/gomp/map-1.f90: Add expected error. * gfortran.dg/gomp/pr78866-1.f90: New test. * gfortran.dg/gomp/pr78866-2.f90: New test. From-SVN: r243860
2016-12-21costmodel-bb-slp-9a-pr63175.c: XFAIL lwz on AIX.David Edelsohn2-1/+6
* gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c: XFAIL lwz on AIX. From-SVN: r243859
2016-12-21[ARM] Updating testcase unsigned-extend-2.cAndre Vieira2-2/+6
gcc/testsuite/ChangeLog: 2016-12-21 Andre Vieira <andre.simoesdiasvieira@arm.com> * gcc.target/arm/unsigned-extend-2.c: Update testcase. From-SVN: r243858
2016-12-21Do not suggest -fsanitize=all (PR driver/78863).Martin Liska4-0/+28
PR driver/78863 * gcc.c (driver::build_option_suggestions): Do not add -fsanitize=all as a suggestion candidate. PR driver/78863 * gcc.dg/spellcheck-options-13.c: New test. From-SVN: r243857
2016-12-21nvptx: adjust testcase for 'shared' attributeAlexander Monakov2-1/+6
* gcc.target/nvptx/decl-shared.c (v_common): Add 'common' attribute to explicitly request the desired storage class. From-SVN: r243856
2016-12-21nvptx: do not assume that crtl->is_leaf is unsetAlexander Monakov2-5/+12
PR target/78831 * config/nvptx/nvptx.c (init_softstack_frame): Remove assert. Compute crtl->is_leaf only if unset. Adjust comment. From-SVN: r243855
2016-12-21re PR testsuite/52641 (Test cases fail for 16-bit int targets)Georg-Johann Lay8-5/+26
gcc/testsuite/ PR testsuite/52641 * gcc.dg/builtin-object-size-16.c (ia0, ia1, ia9): Handle case where neither short nor int has a size of 4; use long. * gcc.dg/builtin-object-size-17.c: Same. * gcc.dg/builtin-stringop-chk-1.c (test2) <struct S>: Use int32_t for components as 4 components are supposed to occupy 16 bytes. * gcc.dg/pr78408-1.c: Require target size32plus. * gcc.dg/pr78408-2.c: Same. * gcc.dg/tree-ssa/pr78428.c. Require target int32plus. * gcc.dg/tree-ssa/tailcall-7.c: Require target trampolines. From-SVN: r243854
2016-12-21MIPS: Relax instruction order check in msa-builtins.c.Toma Tabacu2-1/+5
gcc/testsuite * gcc.target/mips/msa-builtins.c (msa_insert_d): Tweak expected output. From-SVN: r243848
2016-12-21PR 78867 Function returning string ICE with -fltoJanne Blomqvist4-13/+40
The fix for PR 78757 was slightly too cautious, and covered only the case of functions returning pointers to characters. By moving the block above the if statement the DECL_EXPR is created also for functions returning non-pointer characters. Regtested on x86_64-pc-linux-gnu. fortran ChangeLog: 2016-12-21 Janne Blomqvist <jb@gcc.gnu.org> PR fortran/78867 * trans-expr.c (gfc_conv_procedure_call): Emit DECL_EXPR also for non-pointer character results. testsuite ChangeLog: 2016-12-21 Janne Blomqvist <jb@gcc.gnu.org> PR fortran/78867 * gfortran.dg/string_length_4.f90: New test. From-SVN: r243842
2016-12-21iresolve.c (gfc_resolve_ftell): Call "ftell" instead of "ftell2".Francois-Xavier Coudert2-1/+5
* iresolve.c (gfc_resolve_ftell): Call "ftell" instead of "ftell2". * gfortran.map: Remove _gfortran_ftell2. * io/intrinsics.c (ftell): Remove. (ftell2): Rename to ftell. From-SVN: r243841
2016-12-21mmcu: New folder for compile-tests with -mmcu=.Georg-Johann Lay5-3/+112
* gcc.target/avr/mmcu: New folder for compile-tests with -mmcu=. * gcc.target/avr/mmcu/avr-mmcu.exp: New file. * gcc.target/avr/pr58545.c: Move to gcc.target/avr/mmcu. * gcc.target/avr/tiny-caller-save.c: Dito. * gcc.target/avr/tiny-memx.c: Dito. From-SVN: r243840
2016-12-21match.pd (max:c @0 (plus@2 @0 INTEGER_CST@1)): New Pattern.Naveen H.S5-0/+72
2016-12-22 Andrew Pinski <apinski@cavium.com> Naveen H.S <Naveen.Hurugalawadi@cavium.com> gcc * match.pd (max:c @0 (plus@2 @0 INTEGER_CST@1)): New Pattern. (min:c @0 (plus@2 @0 INTEGER_CST@1)) : New Pattern. gcc/testsuite * gcc.dg/max.c: New Testcase. * gcc.dg/min.c: New Testcase. From-SVN: r243838
2016-12-21Daily bump.GCC Administrator1-1/+1
From-SVN: r243835
2016-12-21re PR c/77767 (Side-effect from VLA array parameters lost)Jakub Jelinek4-2/+39
PR c/77767 * c-decl.c (grokdeclarator): If *expr is non-NULL, append expression to *expr instead of overwriting it. * gcc.c-torture/execute/pr77767.c: New test. From-SVN: r243832
2016-12-20Use the middle-end boolean_type_nodeJanne Blomqvist2-4/+4
Use the boolean_type_node setup by the middle-end instead of redefining it. boolean_type_node is not used in GFortran for any ABI-visible stuff, only internally as the type of boolean expressions. There appears to be one exception to this, namely the caf_get* and caf_send* calls which have boolean_type_node arguments. However, on the library side they seem to use C _Bool, so I suspect this might be a case of a argument mismatch that hasn't affected anything so far. The practical effect of this is that the size of such variables will be the same as a C _Bool or C++ bool, that is, on most targets a single byte. Previously we redefined boolean_type_node to be a Fortran default logical kind sized variable, that is 4 or 8 bytes depending on compile options. This might enable slightly more compact code, in case the optimizer determines that the result of such a generated comparison expression needs to be stored in some temporary location rather than being used immediately. Regression tested on x86_64-pc-linux-gnu. 2016-12-20 Janne Blomqvist <jb@gcc.gnu.org> * trans-types.c (gfc_init_types): Don't redefine boolean type node. From-SVN: r243830
2016-12-20sms-3.c: Add -fno-sched-pressure for powerpc.Pat Haugen3-1/+7
* gcc.dg/sms-3.c: Add -fno-sched-pressure for powerpc. * gcc.dg/sms-6.c: Likewise. From-SVN: r243829
2016-12-20* gcc.dg/pr70859-2.c: Define _ISOC99_SOURCE on AIX.David Edelsohn2-0/+4
From-SVN: r243828
2016-12-20* gcc.dg/tls/alias-1.c: dg-add-options tls.David Edelsohn2-0/+5
From-SVN: r243827
2016-12-20pr78255-2.c: Fix to work for targets that do not optimize for tailcall.Andre Vieira2-1/+6
2016-12-20 Andre Vieira <andre.simoesdiasvieira@arm.com> * gcc.target/arm/pr78255-2.c: Fix to work for targets that do not optimize for tailcall. From-SVN: r243826
2016-12-20pr78796.c: dg-add-options tls.David Edelsohn4-2/+10
* gcc.dg/tls/pr78796.c: dg-add-options tls. * gcc.target/powerpc/fold-vec-mult-int.c: power8-vector. * gcc.target/powerpc/fold-vec-mult-longlong.c: -maix64. From-SVN: r243825
2016-12-20[Patch] Turn -fexcess-precision=fast on when in -ffast-mathJames Greenhalgh4-6/+25
* common.opt (excess_precision): Tag as SetByCombined. * opts.c (set_fast_math_flags): Also set flag_excess_precision_cmdline. (fast_math_flags_set_p): Also check flag_excess_precision_cmdline. * doc/invoke.texi (-fexcess-precision): Drop text saying the option has no effect under -ffast-math, make it clear that -ffast-math will cause -fexcess-precision=fast by default even for standards compliant modes. (-ffast-math): Document that this sets -fexcess-precision=fast. From-SVN: r243824
2016-12-20gimple-parser.c (c_parser_gimple_compound_statement): Improve error recovery.Richard Biener2-9/+26
2016-12-20 Richard Biener <rguenther@suse.de> c/ * gimple-parser.c (c_parser_gimple_compound_statement): Improve error recovery. (c_parser_gimple_statement): Only build assigns for non-error stmts. (c_parser_gimple_postfix_expression_after): Improve error recovery. From-SVN: r243823
2016-12-20passes.c (execute_one_pass): Handle going out of SSA w/o hitting pass_startwith.Richard Biener4-1/+23
2016-12-20 Richard Biener <rguenther@suse.de> * passes.c (execute_one_pass): Handle going out of SSA w/o hitting pass_startwith. Handle skipping property providers. * gcc.dg/gimplefe-19.c: New testcase. From-SVN: r243822
2016-12-20[ARM] PR target/78694: Avoid invalid RTL sharing in minipool codeKyrylo Tkachov4-5/+136
PR target/78694 * config/arm/arm.c (dump_minipool): Copy mp->value before emitting it in the minipool to avoid invalid RTL sharing. * gcc.c-torture/compile/pr78694.c: New test. From-SVN: r243820
2016-12-20Fix PR testsuite/71232 entry.Eric Botcazou1-1/+1
From-SVN: r243819
2016-12-20re PR tree-optimization/71237 (scev tests failing after pass reorganization)Eric Botcazou7-6/+16
PR testsuite/71237 * gnat.dg/vect1.adb: Add -fno-vect-cost-model to dg-options. * gnat.dg/vect2.adb: Likewise. * gnat.dg/vect3.adb: Likewise. * gnat.dg/vect4.adb: Likewise. * gnat.dg/vect5.adb: Likewise. * gnat.dg/vect6.adb: Likewise. From-SVN: r243818
2016-12-20Daily bump.GCC Administrator1-1/+1
From-SVN: r243817
2016-12-19trans-decl.c (create_main_function): Remove unused elements to the ↵Francois-Xavier Coudert2-22/+12
set_options call. * trans-decl.c (create_main_function): Remove unused elements to the set_options call. * runtime/compile_options.c (set_options): Remove unused elements. From-SVN: r243814
2016-12-19rs6000-protos.h (expand_strn_compare): Declare.Aaron Sawdey5-4/+430
* config/rs6000/rs6000-protos.h (expand_strn_compare): Declare. * config/rs6000/rs6000.md (UNSPEC_CMPB): New unspec. (cmpb<mode>3): pattern for generating cmpb. (cmpstrnsi): pattern to expand strncmp (). * config/rs6000/rs6000.opt (mstring-compare-inline-limit): Add a new target option for controlling how much code inline expansion of strncmp() will be allowed to generate. * config/rs6000/rs6000.c (expand_strncmp_align_check): generate code for runtime page crossing check of strncmp () args. (expand_strn_compare): Function to do builtin expansion of strncmp (). From-SVN: r243813
2016-12-19print_rtx_function: update example in commentDavid Malcolm2-23/+26
The patch updates the example dump in the comment for print_rtx_function to reflect various changes: - r241593: addition of insn UIDs - r241908: removal of trailing "(nil)" and other default values - r242023: addition of "param" directives - r243798: change of format of regnos in non-virtual pseudos (from "$2" to "<2>") gcc/ChangeLog: * print-rtl-function.c (print_rtx_function): Update example in comment to reflect current format. From-SVN: r243812
2016-12-19i386.md (*popcounthi2_1): New insn_and_split pattern.Uros Bizjak4-15/+49
* config/i386/i386.md (*popcounthi2_1): New insn_and_split pattern. testsuite/ChangeLog: * gcc.target/i386/pr59874-3.c: New test. From-SVN: r243811
2016-12-19cpp.texi: Clean up anachronistic C99 references and remove discussion of ↵Sandra Loosemore2-219/+52
very old GCC... 2016-12-19 Sandra Loosemore <sandra@codesourcery.com> gcc/ * doc/cpp.texi: Clean up anachronistic C99 references and remove discussion of very old GCC versions. (Differences from previous versions): Delete entire section. From-SVN: r243810
2016-12-19Fix formatting.David Edelsohn1-6/+1
From-SVN: r243809
2016-12-19Move my updates to the correct ChangeLog.Will Schmidt1-0/+10
2016-12-19 Will Schmidt <will_schmidt@vnet.ibm.com> Move my updates to the correct ChangeLog. (ChangeLog->gcc/ChangeLog) From-SVN: r243808
2016-12-19rs6000.c: Add handling for early expansion of vector multiply builtins.Will Schmidt11-12/+237
2016-12-19 Will Schmidt <will_schmidt@vnet.ibm.com> * config/rs6000/rs6000.c: Add handling for early expansion of vector multiply builtins. [gcc/testsuite] 2016-12-19 Will Schmidt <will_schmidt@vnet.ibm.com> * gcc.dg/vmx/mult-even-odd-be-order.c : Mark variables as volatile. * gcc.target/powerpc/fold-vec-mult-char.c : New. * gcc.target/powerpc/fold-vec-mult-float.c : New. * gcc.target/powerpc/fold-vec-mult-floatdouble.c : New. * gcc.target/powerpc/fold-vec-mult-int.c : New. * gcc.target/powerpc/fold-vec-mult-int128-p8.c : New. * gcc.target/powerpc/fold-vec-mult-int128-p9.c : New. * gcc.target/powerpc/fold-vec-mult-longlong.c : New. * gcc.target/powerpc/fold-vec-mult-short.c : New. From-SVN: r243807
2016-12-19rs6000.c (rs6000_gimple_fold_builtin): Add handling for early expansion of ↵Will Schmidt9-0/+279
vector subtract builtins. 2016-12-19 Will Schmidt <will_schmidt@vnet.ibm.com> * config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Add handling for early expansion of vector subtract builtins. [gcc/testsuite] 2016-12-19 Will Schmidt <will_schmidt@vnet.ibm.com> * gcc.target/powerpc/fold-vec-sub-char.c: New. * gcc.target/powerpc/fold-vec-sub-float.c: New. * gcc.target/powerpc/fold-vec-sub-floatdouble.c: New. * gcc.target/powerpc/fold-vec-sub-int.c: New. * gcc.target/powerpc/fold-vec-sub-int128.c: New. * gcc.target/powerpc/fold-vec-sub-longlong.c: New. * gcc.target/powerpc/fold-vec-sub-short.c: New. From-SVN: r243806
2016-12-19runtime: copy cgo support from Go 1.7 runtimeIan Lance Taylor1-1/+1
Remove support for _cgo_allocate. It was removed from the gc toolchain in Go 1.5, so it is unlikely that anybody is trying to use it. Reviewed-on: https://go-review.googlesource.com/34557 From-SVN: r243805
2016-12-19trans.h: Remove gfor_fndecl_stop_numeric_f08.Francois-Xavier Coudert4-9/+8
* trans.h: Remove gfor_fndecl_stop_numeric_f08. * trans-decl.c: Remove gfor_fndecl_stop_numeric_f08. * trans-stmt.c (gfc_trans_stop): Use gfor_fndecl_stop_numeric instead of gfor_fndecl_stop_numeric_f08. * gfortran.map: Remove _gfortran_stop_numeric_f08. * runtime/stop.c: Rename stop_numeric_f08 into stop_numeric. From-SVN: r243803
2016-12-19print-rtl.c: use '<' and '>' rather than % for pseudos in compact modeDavid Malcolm3-6/+13
gcc/ChangeLog: * print-rtl.c (rtx_writer::print_rtx_operand_code_r): For non-virtual pseudos in compact mode, wrap the regno in '<' and '>' rather than using a '%' prefix. * rtl-tests.c (selftest::test_dumping_regs): Update for above change. From-SVN: r243798
2016-12-19re PR fortran/78545 (Possible correction to online LTIME documentation)Janus Weil2-11/+23
2016-12-19 Janus Weil <janus@gcc.gnu.org> PR fortran/78545 * intrinsic.texi: Minor documentation fixes for non-standard time-related intrinsics. Add references to standard intrinsics and linkify some existing references. From-SVN: r243794
2016-12-19PR target/78748: S/390: Fix ICE with ANDC splitter.Dominik Vogt4-1/+30
gcc/ChangeLog: 2016-12-19 Dominik Vogt <vogt@linux.vnet.ibm.com> PR target/78748 * config/s390/s390.md ("*andc_split_<mode>"): Allow memory destination only if it coincides with operand 2. gcc/testsuite/ChangeLog: 2016-12-19 Dominik Vogt <vogt@linux.vnet.ibm.com> PR target/78748 * gcc.c-torture/compile/pr78748.c: New test. From-SVN: r243793
2016-12-19combine: Omit redundant AND in change_zero_ext.Dominik Vogt2-2/+11
This is another micro-optimisation in change_zero_ext. If an (and (lshiftrt ... (N)) (M)) generated by change_zero_ext is equivalent to just (lshiftrt ... (N)) (because the AND constant selects the N rightmost bits of the result), strip off the AND. gcc/ChangeLog: 2016-12-19 Dominik Vogt <vogt@linux.vnet.ibm.com> * combine.c (change_zero_ext): Skip generation of redundant AND. From-SVN: r243792
2016-12-19netbsd.h (LINK_EH_SPEC): Define.Krister Walfridsson2-0/+8
2016-12-19 Krister Walfridsson <krister.walfridsson@gmail.com> * config/netbsd.h (LINK_EH_SPEC): Define. From-SVN: r243791
2016-12-19Daily bump.GCC Administrator1-1/+1
From-SVN: r243788
2016-12-18re PR fortran/78545 (Possible correction to online LTIME documentation)Dominique d'Humieres2-9/+34
2016-12-18 Dominique d'Humieres <dominiq@lps.ens.fr> PR fortran/78545 * intrinsic.texi: Fix documentation for GMTIME and LTIME. * intrinsics/date_and_time.c: Fix comments for GMTIME and LTIME. From-SVN: r243785
2016-12-18re PR fortran/78848 ([OOP] ICE on writing CLASS variable with non-typebound ↵Janus Weil4-26/+68
DTIO procedure) 2016-12-18 Janus Weil <janus@gcc.gnu.org> PR fortran/78848 * trans-io.c (get_dtio_proc): Generate non-typebound DTIO call for class variables, if no typebound DTIO procedure is available. 2016-12-18 Janus Weil <janus@gcc.gnu.org> PR fortran/78848 * gfortran.dg/dtio_22.f90: New test. From-SVN: r243784
2016-12-18re PR fortran/78592 (ICE in gfc_find_specific_dtio_proc, at ↵Janus Weil4-12/+53
fortran/interface.c:4939) 2016-12-18 Janus Weil <janus@gcc.gnu.org> PR fortran/78592 * interfac.c (gfc_find_specific_dtio_proc): Fixup for r243005, making sure that the generic list is followed through until the end. 2016-12-18 Janus Weil <janus@gcc.gnu.org> PR fortran/78592 * gfortran.dg/dtio_21.f90: New test. From-SVN: r243783
2016-12-18lra-constraints.c (process_address): Add forward declaration.Eric Botcazou2-13/+31
* lra-constraints.c (process_address): Add forward declaration. (simplify_operand_subreg): In the MEM case, if the adjusted memory reference is not sufficient aligned and the address was invalid, reload the address before reloading the original memory reference. Fix long lines and add a final return for the sake of clarity. From-SVN: r243782
2016-12-18Daily bump.GCC Administrator1-1/+1
From-SVN: r243781
2016-12-17re PR fortran/78746 (charlen_03, charlen_10 ICE)Steven G. Kargl3-18/+6
2016-12-17 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/78746 * charlen_03.f90: Remove test. * charlen_10.f90: Ditto. From-SVN: r243778