Commit Graph

146670 Commits

Author SHA1 Message Date
David Malcolm 85ecd05c26 PR bootstrap/71481: fix input.c selftest
gcc/ChangeLog:
	PR bootstrap/71481
	* input.c (selftest::test_reading_source_line): Avoid reading from
	__FILE__ by creating a tempfile with known content and reading
	from that instead.

From-SVN: r237414
2016-06-13 21:20:10 +00:00
David Malcolm 2fe00b1fba pretty-print.c: skip color selftests if GCC_COLORS is set
gcc/ChangeLog:
	* pretty-print.c (assert_pp_format_colored): Skip the test if
	GCC_COLORS is set.
	(test_pp_format): Remove comment about GCC_COLORS.

From-SVN: r237411
2016-06-13 21:07:18 +00:00
David Malcolm 09765e3a0a selftests: improve reported failure locations
This patch introduce a selftest::location struct to wrap up __FILE__
and __LINE__ information (and __FUNCTION__) throughout the selftests,
allowing location information to be passed around.

It updates the helper functions in pretty-print.c to pass through
the precise location of each test, so that if a failure occurs, the
correct line number is printed, rather than a line within a helper
function.

gcc/ChangeLog:
	* input.c (test_reading_source_line): Use SELFTEST_LOCATION.
	* pretty-print.c (assert_pp_format_va): Add location param and use
	it with ASSERT_STREQ_AT.
	(assert_pp_format): Add location param and pass it to
	assert_pp_format_va.
	(assert_pp_format_colored): Likewise.
	(ASSERT_PP_FORMAT_1): New.
	(ASSERT_PP_FORMAT_2): New.
	(ASSERT_PP_FORMAT_3): New.
	(test_pp_format): Provide SELFTEST_LOCATION throughout, either
	explicitly, or implicitly via the above macros.
	* selftest.c (selftest::pass): Use a selftest::location rather
	than file and line.
	(selftest::fail): Likewise.  Print the function name.
	(selftest::fail_formatted): Likewise.
	(selftest::assert_streq): Use a selftest::location rather than
	file and line.
	* selftest.h (selftest::location): New struct.
	(SELFTEST_LOCATION): New macro.
	(selftest::pass): Accept a const location & rather than file
	and line.
	(selftest::fail): Likewise.
	(selftest::fail_formatted): Likewise.
	(selftest::assert_streq): Likewise.
	(ASSERT_TRUE): Update for above changes, using SELFTEST_LOCATION.
	(ASSERT_FALSE): Likewise.
	(ASSERT_EQ): Likewise.
	(ASSERT_NE): Likewise.
	(ASSERT_STREQ): Likewise.
	(ASSERT_PRED1): Likewise.
	(ASSERT_STREQ_AT): New macro.

From-SVN: r237410
2016-06-13 21:04:07 +00:00
Jakub Jelinek 0dda258b6f re PR sanitizer/71498 (ubsan bounds checking influenced by surrounding code)
PR sanitizer/71498
	* c-gimplify.c (ubsan_walk_array_refs_r): Set *walk_subtrees = 0 on
	all BIND_EXPRs, and on all BIND_EXPRs recurse also on BIND_EXPR_BODY.

	* c-c++-common/ubsan/bounds-13.c: New test.

From-SVN: r237409
2016-06-13 23:01:44 +02:00
Jakub Jelinek ef7cf206b6 re PR preprocessor/71183 (gcc -E always gives __DATE__ and __TIME__ as Jan 1 1970 00:00:00)
PR preprocessor/71183
	* c-ppoutput.c (init_pp_output): Set cb->get_source_date_epoch
	to cb_get_source_date_epoch.

	* gcc.dg/cpp/source_date_epoch-3.c: New test.

From-SVN: r237408
2016-06-13 23:00:07 +02:00
David Malcolm 755fa6662d selftest: show values when ASSERT_STREQ fails
Rework ASSERT_STREQ so that it prints the actual and expected values
to stderr when it fails (by moving it to a helper function).

gcc/ChangeLog:
	* selftest.c (selftest::fail_formatted): New function.
	(selftest::assert_streq): New function.
	* selftest.h (selftests::fail_formatted): New decl.
	(selftest::assert_streq): New decl.
	(ASSERT_STREQ): Reimplement in terms of selftest::assert_streq.

From-SVN: r237404
2016-06-13 20:58:08 +00:00
Jeff Law a73786e39f re PR tree-optimization/71403 (wrong code (segfault) at -O3 on x86_64-linux-gnu)
PR tree-optimization/71403
	* tree-ssa-threadbackward.c
	(convert_and_register_jump_thread_path): No longer accept reference
	to path.  Do not pop items off the path anymore.
	(fsm_find_control_statement_thread_paths): Do not allow threading
	to a deeper loop nest.  Pop the last item off the path here rather
	than in convert_and_register_jump_thread_path.

	PR tree-optimization/71403
	* c-c++-common/ubsan/pr71403-1.c: New test.
	* c-c++-common/ubsan/pr71403-2.c: New test.
	* c-c++-common/ubsan/pr71403-3.c: New test.

From-SVN: r237403
2016-06-13 14:55:59 -06:00
Evandro Menezes 79a2bc2dc9 [AArch64] Emit division using the Newton series
2016-06-13  Evandro Menezes  <e.menezes@samsung.com>
            Wilco Dijkstra  <Wilco.Dijkstra@arm.com>

gcc/
	* config/aarch64/aarch64-protos.h
	(cpu_approx_modes): Add new member "division".
	(aarch64_emit_approx_div): Declare new function.
	* config/aarch64/aarch64.c
	(generic_approx_modes): New member "division".
	(exynosm1_approx_modes): Likewise.
	(xgene1_approx_modes): Likewise.
	(aarch64_emit_approx_div): Define new function.
	* config/aarch64/aarch64.md ("div<mode>3"): New expansion.
	* config/aarch64/aarch64-simd.md ("div<mode>3"): Likewise.
	* config/aarch64/aarch64.opt (-mlow-precision-div): Add new option.
	* doc/invoke.texi (-mlow-precision-div): Describe new option.

From-SVN: r237397
2016-06-13 19:03:00 +00:00
Evandro Menezes 98daafa0b3 [AArch64] Emit square root using the Newton series
2016-06-13  Evandro Menezes  <e.menezes@samsung.com>
            Wilco Dijkstra  <wilco.dijkstra@arm.com>

gcc/
	* config/aarch64/aarch64-protos.h
	(aarch64_emit_approx_rsqrt): Replace with new function
	"aarch64_emit_approx_sqrt".
	(cpu_approx_modes): New member "sqrt".
	* config/aarch64/aarch64.c
	(generic_approx_modes): New member "sqrt".
	(exynosm1_approx_modes): Likewise.
	(xgene1_approx_modes): Likewise.
	(aarch64_emit_approx_rsqrt): Replace with new function
	"aarch64_emit_approx_sqrt".
	(aarch64_override_options_after_change_1): Handle new option.
	* config/aarch64/aarch64-simd.md
	(rsqrt<mode>2): Use new function instead.
	(sqrt<mode>2): New expansion and insn definitions.
	* config/aarch64/aarch64.md: Likewise.
	* config/aarch64/aarch64.opt
	(mlow-precision-sqrt): Add new option description.
	* doc/invoke.texi (mlow-precision-sqrt): Likewise.

From-SVN: r237396
2016-06-13 19:02:56 +00:00
Evandro Menezes 9acc9cbeb8 [AArch64] Add more choices for the reciprocal square root approximation
Allow a target to prefer such operation depending on the operation mode.

gcc/
	* config/aarch64/aarch64-protos.h
	(AARCH64_APPROX_MODE): New macro.
	(AARCH64_APPROX_{NONE,ALL}): Likewise.
	(cpu_approx_modes): New structure.
	(tune_params): New member "approx_modes".
	* config/aarch64/aarch64-tuning-flags.def
	(AARCH64_EXTRA_TUNE_APPROX_RSQRT): Remove macro.
	* config/aarch64/aarch64.c
	({generic,exynosm1,xgene1}_approx_modes): New core
	"cpu_approx_modes" structures.
	(generic_tunings): New member "approx_modes".
	(cortexa35_tunings): Likewise.
	(cortexa53_tunings): Likewise.
	(cortexa57_tunings): Likewise.
	(cortexa72_tunings): Likewise.
	(exynosm1_tunings): Likewise.
	(thunderx_tunings): Likewise.
	(xgene1_tunings): Likewise.
	(use_rsqrt_p): New argument for the mode and use new member from
	"tune_params".
	(aarch64_builtin_reciprocal): Devise mode from builtin.
	(aarch64_optab_supported_p): New argument for the mode.
	* doc/invoke.texi (-mlow-precision-recip-sqrt): Reword description.

From-SVN: r237395
2016-06-13 19:02:52 +00:00
David Edelsohn d4f076c9b8 inclhack.def (aix_stdlib_malloc): New fix.
* inclhack.def (aix_stdlib_malloc): New fix.
(aix_stdlib_realloc): New fix.
(aix_stdlib_calloc): New fix.
(aix_stdlib_valloc): New fix.
* fixincl.x: Regenerate.
* test/base/stdlib.h [AIX_STDLIB_MALLOC]: New test.
[AIX_STDLIB_REALLOC]: New test.
[AIX_STDLIB_CALLOC]: New test.
[AIX_STDLIB_VALLOC]: New test.

From-SVN: r237394
2016-06-13 14:59:43 -04:00
Jakub Jelinek 0ac249bf93 re PR tree-optimization/71478 (ICE in tree-ssa-reassoc.c after r236564)
PR middle-end/71478
	* gcc.dg/pr71478.c: Remove dg-require-effective-target vect_int.
	Add -Wno-psabi -w to dg-options.

From-SVN: r237392
2016-06-13 20:54:25 +02:00
Kelvin Nilsen 402e60c546 rs6000.h (RS6000_BTM_COMMON): Add the RS6000_BTM_MODULO flag into the set of flags that are considered to be...
gcc/ChangeLog:

2016-06-13  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* config/rs6000/rs6000.h (RS6000_BTM_COMMON): Add the
	RS6000_BTM_MODULO flag into the set of flags that are considered
	to be part of the common configuration.

From-SVN: r237391
2016-06-13 18:30:40 +00:00
Kelvin Nilsen 5408a64ac4 altivec.h (vec_absd): New macro for vector absolute difference unsigned.
gcc/ChangeLog:

2016-06-13  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* config/rs6000/altivec.h (vec_absd): New macro for vector absolute
	difference unsigned.
	(vec_absdb): New macro for vector absolute difference unsigned
	byte.
	(vec_absdh): New macro for vector absolute difference unsigned
	half-word.
	(vec_absdw): New macro for vector absolute difference unsigned word.
	* config/rs6000/altivec.md (UNSPEC_VADU): New value.
	(vadu<mode>3): New insn.
	(*p9_vadu<mode>3): New insn.
	* config/rs6000/rs6000-builtin.def (vadub): New built-in
	definition.
	(vaduh): New built-in definition.
	(vaduw): New built-in definition.
	(vadu): New overloaded built-in definition.
	(vadub): New overloaded built-in definition.
	(vaduh): New overloaded built-in definition.
	(vaduw): New overloaded built-in definition.
	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
	overloaded vector absolute difference unsigned functions.
	* doc/extend.texi (PowerPC AltiVec Built-in Functions): Document
	the ISA 3.0 vector absolute difference unsigned built-in functions.

gcc/testsuite/ChangeLog:

2016-06-13  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* gcc.target/powerpc/vadsdu-0.c: New test.
	* gcc.target/powerpc/vadsdu-1.c: New test.
	* gcc.target/powerpc/vadsdu-2.c: New test.
	* gcc.target/powerpc/vadsdu-3.c: New test.
	* gcc.target/powerpc/vadsdu-4.c: New test.
	* gcc.target/powerpc/vadsdu-5.c: New test.
	* gcc.target/powerpc/vadsdub-1.c: New test.
	* gcc.target/powerpc/vadsdub-2.c: New test.
	* gcc.target/powerpc/vadsduh-1.c: New test.
	* gcc.target/powerpc/vadsduh-2.c: New test.
	* gcc.target/powerpc/vadsduw-1.c: New test.
	* gcc.target/powerpc/vadsduw-2.c: New test.

From-SVN: r237390
2016-06-13 17:59:12 +00:00
Eric Botcazou ec67c62e3c tree-ssa-sccvn.c (vn_reference_lookup_3): Use a uniform test and update shared_lookup_references only once after changing...
* tree-ssa-sccvn.c (vn_reference_lookup_3): Use a uniform test and
	update shared_lookup_references only once after changing operands.

From-SVN: r237388
2016-06-13 17:44:12 +00:00
David Malcolm f7e4f2e3f3 C: fixits for named initializers
gcc/c/ChangeLog:
	* c-parser.c (c_parser_initelt): Provide location of name for new
	location_t param of set_init_label.
	* c-tree.h (set_init_label): Add location_t param.
	* c-typeck.c (set_init_index): Add "fieldname_loc" location_t
	param and use it when issuing error messages about unrecognized
	field names.  Attempt to provide a fixit hint if appropriate,
	otherwise update the error message to provide the type name.

gcc/testsuite/ChangeLog:
	* gcc.dg/c99-init-2.c (c): Update expected error message.
	* gcc.dg/init-bad-8.c (foo): Likewise.
	* gcc.dg/spellcheck-fields-3.c: New test case.

From-SVN: r237387
2016-06-13 17:14:42 +00:00
Thomas Schwinge 5a0fa90713 [PR middle-end/71373] Document missing OMP_CLAUSE_* in gcc/tree-nested.c
gcc/
	PR middle-end/71373
	* tree-nested.c (convert_nonlocal_omp_clauses)
	(convert_local_omp_clauses): Document missing OMP_CLAUSE_*.

From-SVN: r237386
2016-06-13 18:37:29 +02:00
Bernd Edlinger 7f6f6f3970 added "PR bootstrap/71481" to r237383's ChangeLog
From-SVN: r237385
2016-06-13 16:22:05 +00:00
Thomas Schwinge 1a0c3c3466 Fix CASE_CHAIN typos
gcc/
	* tree-cfg.c (edge_to_cases_cleanup): Fix CASE_CHAIN typo.
	* tree.def (CASE_LABEL_EXPR): Likewise.

From-SVN: r237384
2016-06-13 18:10:35 +02:00
Bernd Edlinger 10d2fc2324 input.c (test_builtins): Fix an assertion.
2016-06-13  Bernd Edlinger  <bernd.edlinger@hotmail.de>

	* input.c (test_builtins): Fix an assertion.

From-SVN: r237383
2016-06-13 15:45:54 +00:00
Uros Bizjak ac43f1a8c4 i386.md (paritydi2): Use ix86_expand_setcc.
* config/i386/i386.md (paritydi2): Use ix86_expand_setcc.
	(paritysi2): Ditto.
	(isinfxf2): Ditto.
	(isinf<mode>2): Ditto.

From-SVN: r237382
2016-06-13 16:38:51 +02:00
Uros Bizjak 30717592e2 ggc-tests.c (test_finalization): Only test need_finalization_p for GCC_VERSION >= 4003.
* ggc-tests.c (test_finalization): Only test need_finalization_p
	for GCC_VERSION >= 4003.

From-SVN: r237381
2016-06-13 16:27:01 +02:00
Martin Liska ad23a23ed2 Make 'loop iv compare' heuristics scanning more precise
* gcc.dg/predict-1.c: Distinguish between "loop iv compare"
	and "guess loop iv compared" heuristics.
	* gcc.dg/predict-2.c: Likewise.
	* gcc.dg/predict-3.c: Likewise.
	* gcc.dg/predict-4.c: Likewise.
	* gcc.dg/predict-5.c: Likewise.
	* gcc.dg/predict-6.c: Likewise.

From-SVN: r237380
2016-06-13 14:03:51 +00:00
Andreas Krebbel 548e7de920 S/390: vecintrin.h fix file description in comment
gcc/ChangeLog:

2016-06-13  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	* config/s390/vecintrin.h: Fix file description in comment.

From-SVN: r237378
2016-06-13 12:05:43 +00:00
Andreas Krebbel 25fb89dfb1 S/390: Change builtin type naming scheme to match builtin-types.def.
gcc/ChangeLog:

2016-06-13  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	* config/s390/s390-builtin-types.def: Change builtin type naming
	scheme to match builtin-types.def.

From-SVN: r237377
2016-06-13 12:04:57 +00:00
Marc Glisse b4817bd635 Move optimize_minmax_comparison to match.pd
2016-06-13  Marc Glisse  <marc.glisse@inria.fr>

	* fold-const.c (optimize_minmax_comparison): Remove.
	(fold_comparison): Remove call to the above.
	* match.pd (MIN (X, Y) == X, MIN (X, 5) == 0, MIN (X, C1) < C2):
	New transformations.

From-SVN: r237376
2016-06-13 11:21:45 +00:00
Alan Hayward 915794eb26 re PR tree-optimization/71416 (ICE at -O3 in 32-bit and 64-bit modes on x86_64-linux-gnu (vectorizable_live_operation))
2016-06-13  Alan Hayward  <alan.hayward@arm.com>

gcc/
	PR tree-optimization/71416
	* tree-vect-loop.c (vectorizable_live_operation): Let worklist have
	multiple entries

From-SVN: r237375
2016-06-13 11:07:35 +00:00
Martin Liska 46c1cff63f Change enum value to not to clash with a MSP430 private enum
* predict.c (enum predictor_reason): Prefix enum with REASON_.
	(combine_predictions_for_insn): Likewise.
	(prune_predictions_for_bb): Likewise.
	(combine_predictions_for_bb): Likewise.

From-SVN: r237370
2016-06-13 10:00:17 +00:00
Richard Biener 7a5824c6d7 re PR tree-optimization/71505 (-O3 internal compiler error in vect_analyze_data_ref_accesses, at tree-vect-data-refs.c:2596)
2016-06-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/71505
	* tree-vect-data-refs.c (vect_analyze_data_ref_accesses): Make
	assert match comment.

From-SVN: r237368
2016-06-13 09:44:51 +00:00
Marek Polacek 146c55da60 re PR middle-end/71476 (ICE in gimplify_switch_expr with -Wswitch-unreachable)
PR middle-end/71476
	* gimplify.c (maybe_warn_switch_unreachable): Factored out of
	gimplify_switch_expr.
	(warn_switch_unreachable_r): New function.

	* c-c++-common/Wswitch-unreachable-4.c: New test.
	* gcc.dg/Wswitch-unreachable-2.c: New test.
	* g++.dg/tm/jump1.C: Move dg-warning.

From-SVN: r237367
2016-06-13 08:57:02 +00:00
Andreas Krebbel f90eba2a3c S/390: Fix MAX_ARGS value.
gcc/ChangeLog:

2016-06-13  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	PR target/71379
	* config/s390/s390.c (s390_expand_builtin): Increase MAX_ARGS by
	one.

From-SVN: r237364
2016-06-13 08:34:45 +00:00
Richard Biener 50a593c7e2 download_prerequisites (ISL): Bump version to 0.16.1
2016-06-13  Richard Biener  <rguenther@suse.de>

	* download_prerequisites (ISL): Bump version to 0.16.1

From-SVN: r237363
2016-06-13 08:18:51 +00:00
Eric Botcazou 7cdb687133 decl.c (gnat_to_gnu_subprog_type): Build only a minimal PARM_DECL when the parameter type is dummy.
* gcc-interface/decl.c (gnat_to_gnu_subprog_type): Build only a minimal
	PARM_DECL when the parameter type is dummy.
	* gcc-interface/trans.c (Call_to_gnu): Translate formal types before
	formal objects.

From-SVN: r237362
2016-06-13 08:17:07 +00:00
Eric Botcazou 42e77cbc7d decl.c (gnat_to_gnu_entity): Deal with PLUS_EXPR in the expression of a renaming.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Deal with
	PLUS_EXPR in the expression of a renaming.

From-SVN: r237360
2016-06-13 08:00:17 +00:00
Paul Thomas 7474dcc1fe re PR fortran/70673 (ICE with module containing functions with allocatable character scalars)
2016-06-13  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/70673
	* frontend-passes.c (realloc_string_callback): Add a call to
	gfc_dep_compare_expr.

2016-06-13  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/70673
	* gfortran.dg/pr70673.f90: New test.

From-SVN: r237358
2016-06-13 07:48:25 +00:00
Jonathan Wakely 4eb27c4174 generate_libstdcxx_web_docs: Use realpath to get absolute path.
* generate_libstdcxx_web_docs: Use realpath to get absolute path.

	Add comment about LaTeX errors.

From-SVN: r237357
2016-06-13 08:47:13 +01:00
Eric Botcazou 0317e5a24c utils2.c (known_alignment): Deal specially with calls to malloc.
* gcc-interface/utils2.c (known_alignment) <CALL_EXPR>: Deal specially
	with calls to malloc.

From-SVN: r237356
2016-06-13 07:40:47 +00:00
Richard Biener f57f53d3a5 re PR middle-end/64516 (arm: wrong unaligned load generated)
2016-06-13  Richard Biener  <rguenther@suse.de>

	PR middle-end/64516
	* fold-const.c (fold_unary_loc): Preserve alignment when
	folding a VIEW_CONVERT_EXPR into a MEM_REF.

	* gcc.dg/align-3.c: New testcase.

From-SVN: r237355
2016-06-13 07:34:45 +00:00
Paolo Carlini f423253bd7 decl.c (grokdeclarator): Fix typo in pedwarn text.
2016-06-13  Paolo Carlini  <paolo.carlini@oracle.com>

	* decl.c (grokdeclarator): Fix typo in pedwarn text.

From-SVN: r237354
2016-06-13 07:28:33 +00:00
Martin Liska 5843a5f0a2 Do not enable -fcheck-pointer-bounds w/ -fsanitize=bounds
PR sanitizer/71458
	* toplev.c (process_options): Do not enable -fcheck-pointer-bounds
	w/ -fsanitize=bounds.
	* gcc.target/i386/pr71458.c: New test.

From-SVN: r237353
2016-06-13 07:17:16 +00:00
GCC Administrator 1d1ca0deaa Daily bump.
From-SVN: r237349
2016-06-13 00:16:21 +00:00
Uros Bizjak e449556dc8 i386.c (ix86_init_builtins): Calculate FLOAT128_FTYPE_CONST_STRING function type only once.
* config/i386/i386.c (ix86_init_builtins): Calculate
	FLOAT128_FTYPE_CONST_STRING function type only once.
	* doc/extend.texi (x86 Built-in Functions): Update text, __float128
	built-in functions are available for x86-32 and x86-64 targets.

From-SVN: r237342
2016-06-12 21:38:42 +02:00
Uros Bizjak ee38bd2e97 Add missing commit:
* doc/extend.texi (x86 Built-in Functions): Document
	__builtin_nanq and __builtin_nansq.

From-SVN: r237339
2016-06-12 20:05:36 +02:00
Uros Bizjak aa8fdb441f re PR target/71241 ([x86] Missing built-in functions for float128 NaNs)
PR target/71241
	* config/i386/i386.i386-builtin-types.def (CONST_STRING):
	New primitive type.
	(FLOAT128_FTYPE_CONST_STRING): New function type.
	* config/i386/i386.c (enum ix86_builtins) [IX86_BUILTIN_NANQ]: New.
	[IX86_BUILTIN_NANSQ]: Ditto.
	(ix86_fold_builtin): Handle IX86_BUILTIN_NANQ and IX86_BUILTIN_NANSQ.
	(ix86_init_builtin_types) Declare const_string_type_node.
	Add __builtin_nanq and __builtin_nansq builtin functions.
	(ix86_expand_builtin): Handle IX86_BUILTIN_NANQ and IX86_BUILTIN_NANSQ.
	* doc/extend.texi (x86 Built-in Functions): Document
	__builtin_nanq and __builtin_nansq.

testsuite/ChangeLog:

	PR target/71241
	* testsuite/gcc.dg/torture/float128-nan.c: New test.

From-SVN: r237338
2016-06-12 19:22:16 +02:00
GCC Administrator a543674d47 Daily bump.
From-SVN: r237336
2016-06-12 00:16:17 +00:00
Dominique d'Humieres 2043e4d760 re PR fortran/60751 (Extra comma in WRITE statement not diagnosed)
2016-06-12  Dominique d'Humieres  <dominiq@lps.ens.fr>

	PR target/60751
	* gfortran.dg/guality/pr41558.f90: Remove extra comma in WRITE
	statement.

From-SVN: r237332
2016-06-12 00:36:50 +02:00
Jiong Wang 5775d58c06 [ARM] length pop* pattern in epilogue correctly
PR target/71061
	* config/arm/arm-protos.h (arm_attr_length_pop_multi): New declaration.
	* config/arm/arm.c (arm_attr_length_pop_multi): New function to return
	length for pop patterns.
	(arm_attr_length_push_multi): Update comments.
	* config/arm/arm.md (*load_multiple_with_writeback): Set "length"
	attribute.
	(*pop_multiple_with_writeback_and_return): Likewise.
	(*pop_multiple_with_return): Likewise.

From-SVN: r237331
2016-06-11 20:42:26 +00:00
Dominique d'Humieres a0d6600253 re PR fortran/60751 (Extra comma in WRITE statement not diagnosed)
2016-06-11  Dominique d'Humieres  <dominiq@lps.ens.fr>

	PR target/60751
	* gfortran.dg/comma_IO_extension_1.f90: New test.
	* gfortran.dg/comma_IO_extension_2.f90: Likewise.

From-SVN: r237330
2016-06-11 21:21:22 +02:00
Dominique d'Humieres d3dc025d96 re PR fortran/60751 (Extra comma in WRITE statement not diagnosed)
2016-06-11  Dominique d'Humieres  <dominiq@lps.ens.fr>

	PR fortran/60751
	* io.c (gfc_resolve_dt): Replace GFC_STD_GNU with GFC_STD_LEGACY.

	* gfortran.dg/comma_IO_extension_1.f90: New test.
	* gfortran.dg/comma_IO_extension_2.f90: Likewise.
	* gfortran.dg/array_constructor_49.f90: Remove extra comma in WRITE
	statement.
	* gfortran.dg/graphite/pr38083.f90: Likewise.
	* gfortran.dg/integer_exponentiation_6.F90: Likewise and add
	missing format.

--This line

M    fortran/ChangeLog
M    fortran/io.c
M    testsuite/ChangeLog
M    testsuite/gfortran.dg/array_constructor_49.f90
M    testsuite/gfortran.dg/graphite/pr38083.f90
M    testsuite/gfortran.dg/integer_exponentiation_6.F90

From-SVN: r237329
2016-06-11 21:19:43 +02:00
Eric Botcazou aa18f65ad4 trans.c (build_binary_op_trapv): If no operand is a constant, use the generic implementation of the middle-end...
* gcc-interface/trans.c (build_binary_op_trapv): If no operand is a
	constant, use the generic implementation of the middle-end; otherwise
	turn the dynamic conditions into static conditions and simplify.

From-SVN: r237328
2016-06-11 12:07:54 +00:00