- 19 Nov, 2018 3 commits
-
-
2018-11-19 Martin Liska <mliska@suse.cz> * check_GNU_style_lib.py: Detect mixed usage of spaces and tabs. From-SVN: r266261
Martin Liska committed -
2018-11-18 Sandra Loosemore <sandra@codesourcery.com> PR other/40498 gcc/ * doc/extend.texi (Common Function Attributes): Document that no_instrument_function applies to -p and -pg, too. * doc/invoke.texi (Instrumentation Options): Add cross-references to docs for -p, -pg, and -finstrument-functions. From-SVN: r266260
Sandra Loosemore committed -
From-SVN: r266259
GCC Administrator committed
-
- 18 Nov, 2018 9 commits
-
-
libphobos/ChangeLog: 2018-11-19 Iain Buclaw <ibuclaw@gdcproject.org> * src/Makefile.am: Remove std.internal.digest.sha_SSSE3 and std.internal.math.biguintx86 modules. * src/Makefile.in: Rebuild. * src/std/internal/digest/sha_SSSE3.d: Remove. * src/std/internal/math/biguintx86.d: Remove. From-SVN: r266256
Iain Buclaw committed -
2018-11-16 Michele Pezzutti <mpezz@tiscali.it> Edward Smith-Rowland <3dw4rd@verizon.net> PR libstdc++/83566 - cyl_bessel_j returns wrong result for x>1000 for high orders. * include/tr1/bessel_function.tcc: Perform no fewer than nu/2 iterations of the asymptotic series (nu is the Bessel order). * testsuite/tr1/5_numerical_facilities/special_functions/ 09_cyl_bessel_j/check_value.cc: Add tests at nu=100, 1000<=x<=2000. * testsuite/tr1/5_numerical_facilities/special_functions/ 11_cyl_neumann/check_value.cc: Ditto. * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Ditto. * testsuite/special_functions/10_cyl_neumann/check_value.cc: Ditto. Co-Authored-By: Edward Smith-Rowland <3dw4rd@verizon.net> From-SVN: r266252
Michele Pezzutti committed -
2018-11-18 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/88073 * frontend-passes.c (combine_array_constructor): Do not do anything if in a WHERE statement. 2018-11-18 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/88073 * gfortran.dg/where_7.f90: New test. From-SVN: r266251
Thomas Koenig committed -
Also give target access to the gnu-user.h LINK_GCC_C_SEQUENCE_SPEC. * config/gnu-user.h (GNU_USER_TARGET_CRTI): Define. (GNU_USER_TARGET_STARTFILE_SPEC): Use it here. (GNU_USER_TARGET_CRTN): Define. (GNU_USER_TARGET_ENDFILE_SPEC): Use it here. (GNU_USER_TARGET_LINK_GCC_C_SEQUENCE_SPEC): Define. From-SVN: r266250
Alan Modra committed -
The HAVE_LD_PIE variant doesn't contain anything that will break linking when !HAVE_LD_PIE that isn't already broken if you choose to build PIEs with a linker that doesn't support PIE. All this HAVE_LD_PIE protects is the choice of different crt files, which is more about libc capability than linker capability. * config/gnu-user.h (GNU_USER_TARGET_STARTFILE_SPEC): Delete !HAVE_LD_PIE variant. (GNU_USER_TARGET_ENDFILE_SPEC): Likewise. From-SVN: r266249
Alan Modra committed -
2018-11-18 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/70260 * expr.c (gfc_check_assign): Reject assigning to an external symbol. (gfc_check_pointer_assign): Add suppress_type_test argument. Insert line after if. A non-proc pointer can not point to a constant. Only check types if suppress_type_test is false. * gfortran.h (gfc_check_pointer_assign): Add optional suppress_type_test argument. * resolve.c (gfc_resolve_code): Move up gfc_check_pointer_assign and give it the extra argument. (resolve_fl_procedure): Set error on value for a function with an inizializer. 2018-11-18 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/70260 * gfortran.dg/proc_ptr_result_5.f90: Add dg-error directive. * gfortran.dg/protected_4.f90: Split line to allow for extra error. * gfortran.dg/protected_6.f90: Likewise. * gfortran.dg/assign_11.f90: New test. * gfortran.dg/pointer_assign_12.f90: New test. From-SVN: r266248
Thomas Koenig committed -
From-SVN: r266247
Nick Clifton committed -
2018-11-17 Eric Gallager <egallager@gcc.gnu.org> Sandra Loosemore <sandra@codesourcery.com> PR driver/31357 gcc/ * doc/invoke.texi (Overall Options): Document that --help and --help=<value> options cannot be combined. Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com> From-SVN: r266246
Nick Clifton committed -
From-SVN: r266245
GCC Administrator committed
-
- 17 Nov, 2018 14 commits
-
-
Define the thread-safe pool resource, using a shared_mutex to allow multiple threads to concurrently allocate from thread-specific pools. Define new weak symbols for the pthread_rwlock_t functions, to avoid making libstdc++.so depend on libpthread.so When the necessary Gthread support is absent only define the feature-test macro to 1, rather than 201603. This is intended to imply incomplete support, because everything except synchronized_pool_resource works. Implement std::pmr::synchronized_pool_resource * config/abi/pre/gnu.ver: Add new symbols. * include/std/memory_resource [_GLIBCXX_HAS_GTHREADS] (__cpp_lib_memory_resource): Define to expected value, 201603. (synchronized_pool_resource): New class. [!_GLIBCXX_HAS_GTHREADS] (__cpp_lib_memory_resource): Define to 1. * include/std/shared_mutex (__glibcxx_rwlock_rdlock) (__glibcxx_rwlock_tryrdlock, __glibcxx_rwlock_wrlock) (__glibcxx_rwlock_trywrlock, __glibcxx_rwlock_unlock) (__glibcxx_rwlock_destroy, __glibcxx_rwlock_init) (__glibcxx_rwlock_timedrdlock, __glibcxx_rwlock_timedwrlock): Define weak symbols for POSIX rwlock functions. (__shared_mutex_pthread): Use weak symbols. * include/std/version (__cpp_lib_memory_resource): Define. * src/c++17/memory_resource.cc [_GLIBCXX_HAS_GTHREADS] (synchronized_pool_resource::_TPools): New class. (destroy_TPools): New function for pthread_key_create destructor. (synchronized_pool_resource::synchronized_pool_resource) (synchronized_pool_resource::~synchronized_pool_resource) (synchronized_pool_resource::release) (synchronized_pool_resource::do_allocate) (synchronized_pool_resource::do_deallocate): Define public members. (synchronized_pool_resource::_M_thread_specific_pools) (synchronized_pool_resource::_M_alloc_tpools) (synchronized_pool_resource::_M_alloc_shared_tpools): Define private members. * testsuite/20_util/synchronized_pool_resource/allocate.cc: New test. * testsuite/20_util/synchronized_pool_resource/cons.cc: New test. * testsuite/20_util/synchronized_pool_resource/is_equal.cc: New test. * testsuite/20_util/synchronized_pool_resource/multithreaded.cc: New test. * testsuite/20_util/synchronized_pool_resource/release.cc: New test. * testsuite/performance/20_util/memory_resource/pools.cc: Add multithreaded tests using pmr::synchronized_pool_resource. From-SVN: r266242
Jonathan Wakely committed -
gcc/ * config/riscv/riscv.c (epilogue_cfa_sp_offset): New. (riscv_restore_reg): If restoring HARD_FRAME_POINTER_REGNUM, and epilogue_cfa_sp_offset set, then add REG_CFA_DEF_CFA regnote. (riscv_expand_epilogue): Initialize epilogue_cfa_sp_offset. Set it to step2 if frame_pointer_needed and step1 is 0. From-SVN: r266241
Jim Wilson committed -
2018-11-17 Sandra Loosemore <sandra@codesourcery.com> PR c++/4225 gcc/ * doc/cpp.texi (System Headers): Add note about implicit extern "C" block on targets that define SYSTEM_IMPLICIT_EXTERN_C. From-SVN: r266240
Sandra Loosemore committed -
2018-11-17 Sandra Loosemore <sandra@codesourcery.com> PR c++/4025 gcc/ * doc/invoke.texi (C++ Dialect Options): Clarify usage of -fno-implicit-templates. From-SVN: r266239
Sandra Loosemore committed -
Backport from upstream phobos 2.079 for AArch64. Reviewed-on: https://github.com/dlang/phobos/pull/5965 From-SVN: r266238
Iain Buclaw committed -
PR tree-optimization/87546 * tree-vect-patterns.c (vect_look_through_possible_promotion): Add min_precision variable, initially set it to orig_precision, only does something if op_type's precision is <= min_precision and update min_precision whenever calling set_op. * gcc.dg/vect/O3-pr87546.c: New test. From-SVN: r266237
Jakub Jelinek committed -
PR rtl-optimization/88018 * cfgrtl.c (fixup_abnormal_edges): Guard moving insns to fallthru edge on the presence of fallthru edge, rather than if it is a USE or not. * g++.dg/tsan/pr88018.C: New test. From-SVN: r266236
Jakub Jelinek committed -
re PR ipa/87957 (ICE tree check: expected tree that contains ‘decl minimal’ structure, have ‘identifier_node’ in warn_odr, at ipa-devirt.c:1051 since r265519) PR ipa/87957 * ipa-devirt.c (warn_odr): Look for main variant to get TYPE_DECL. From-SVN: r266235
Jan Hubicka committed -
The D language expects the value to be the minimum alignment required for the type, not the preferred alignment. gcc/d/ChangeLog: 2018-11-17 Iain Buclaw <ibuclaw@gdcproject.org> PR d/87824 * d-target.cc (Target::alignsize): Return min_align_of_type. From-SVN: r266234
Iain Buclaw committed -
2018-11-16 Sandra Loosemore <sandra@codesourcery.com> gcc/ * doc/invoke.texi (Option Summary): Fix whitespace and line breaks in @gccoptlist environments. (Warning Options): Likewise. (Optimize Options): Likewise. (PowerPC SPE Options): Likewise. (RS/6000 and PowerPC Options): Likewise. From-SVN: r266233
Sandra Loosemore committed -
* config/mn10300/mn10300.md (adddi3_degenerate): Remove bogus gcc_assert. From-SVN: r266232
Jeff Law committed -
2018-11-16 Sandra Loosemore <sandra@codesourcery.com> PR middle-end/23197 gcc/ * doc/invoke.texi (Optimize Options): Update options enabled by fprofile-generate, -fprofile-use, and -fauto-profile. From-SVN: r266231
Sandra Loosemore committed -
2018-11-17 Jozef Lawrynowicz <jozef.l@mittosystems.com> PR middle-end/87854 * g++.dg/parse/concat1.C: Add dg-error for targets with size_t < 32 bits. Update comment. * gcc.dg/concat2.c: Likewise. * gcc.c-torture/compile/pr46534.c: Likewise. From-SVN: r266230
Jozef Lawrynowicz committed -
From-SVN: r266229
GCC Administrator committed
-
- 16 Nov, 2018 14 commits
-
-
re PR target/87927 (ICE: segmentation fault with patchable_function_entry attribute for msp430-elf -mlarge) 2018-11-16 Jozef Lawrynowicz <jozef.l@mittosystems.com> PR target/87927 * target-def.h: Initialize TARGET_ASM_{,UN}ALIGNED_P{S,D,T}I_OP. Add them to the TARGET_ASM_{,UN}ALIGNED_INT_OP structs. * target.def: Enumerate TARGET_ASM_{,UN}ALIGNED_P{S,D,T}I_OP in the byte_op hook. * target.h: Add psi, pdi, pti to struct asm_int_op definition. * targhooks.c (default_print_patchable_function_entry): Assert asm_int_op does not return a NULL string. * varasm.c (integer_asm_op): Return the op for a partial int type when the requested size does not correspond to an integer type. * config/msp430/msp430.c: Initialize TARGET_ASM_{,UN}ALIGNED_PSI_OP. * doc/tm.texi: Regenerate. From-SVN: r266226
Jozef Lawrynowicz committed -
PR c++/87269 * g++.dg/lookup/pr87269.C (std::size_t): New typedef. (operator"" _a) Change unsigned long type to std::size_t. From-SVN: r266225
Jakub Jelinek committed -
PR c++/52869 DR 1207 * parser.c (cp_parser_noexcept_specification_opt): Call inject_this_parameter. From-SVN: r266224
Kamlesh Kumar committed -
[[likely]] and [[unlikely]] are equivalent to the GNU hot/cold attributes, except that they can be applied to arbitrary statements as well as labels; this is most likely to be useful for marking if/else branches as likely or unlikely. Conveniently, PREDICT_EXPR fits the bill nicely as a representation. I also had to fix marking case labels as hot/cold, which didn't work before. Which then required me to force __attribute ((fallthrough)) to apply to the statement rather than the label. gcc/ * gimplify.c (gimplify_case_label_expr): Handle hot/cold attributes. gcc/c-family/ * c-lex.c (c_common_has_attribute): Handle likely/unlikely. * c-attribs.c (attr_cold_hot_exclusions): Make public. gcc/cp/ * tree.c (handle_likeliness_attribute): New. (std_attribute_table): Add likely/unlikely. * cp-gimplify.c (lookup_hotness_attribute, remove_hotness_attribute) (process_stmt_hotness_attribute, first_stmt): New. (genericize_if_stmt): Check for duplicate predictions. * parser.c (cp_parser_statement): Call process_stmt_hotness_attribute. (cp_parser_label_for_labeled_statement): Apply attributes to case. * decl.c (finish_case_label): Give label in template type void. * pt.c (tsubst_expr) [CASE_LABEL_EXPR]: Copy attributes. [PREDICT_EXPR]: Handle. From-SVN: r266223
Jason Merrill committed -
Backport from upstream druntime 2.083 for AArch64. Reviewed-on: https://github.com/dlang/druntime/pull/2257 From-SVN: r266222
Iain Buclaw committed -
[gcc] 2018-11-16 Michael Meissner <meissner@linux.ibm.com> * config/rs6000/constraints.md (wF constraint): Remove power9 fusion documentation. Just document wF's use for power8 fusion. * config/rs6000/predicates.md (p9_fusion_reg_operand): Delete. (fusion_gpr_addis): Delete power9 fusion support. Change power8 fusion support to require the upper 12 bits to be all 0's or all 1's. (fusion_gpr_mem_load): Add comment. (fusion_addis_mem_combo_load): Remove power9 fusion support. (fusion_addis_mem_combo_store): Delete. (fusion_offsettable_mem_operand): Delete. * config/rs6000/rs6000-cpus.def (ISA_2_7_MASKS_SERVER): Do not set power8 fusion here. (ISA_3_0_MASKS_SERVER): Delete power9 fusion. (POWERPC_MASKS): Delete power9 fusion. * config/rs6000/rs6000-protos.h (emit_fusion_load_store): Delete. (fusion_p9_p): Delete. (expand_fusion_p9_load): Delete. (expand_fusion_p9_store): Delete. (emit_fusion_p9_load): Delete. (emit_fusion_p9_store): Delete. * config/rs6000/rs6000.c (rs6000_debug_reg_global): Delete power9 fusion support. (rs6000_option_override_internal): Set power8 fusion based on whether we are tuning for power8. Delete power9 fusion support. (rs6000_opt_masks): Delete -mpower9-fusion switch. (emit_fusion_load): Rename emit_fusion_load_store to emit_fusion_load, and drop fusion store support. Update callers. (emit_fusion_load_store): Likewise. (emit_fusion_gpr_load): Likewise. (fusion_p9_p): Delete. (expand_fusion_p9_load): Delete. (expand_fusion_p9_store): Delete. (emit_fusion_p9_load): Delete. (emit_fusion_p9_store): Delete. * config/rs6000/rs6000.md (UNSPEC_FUSION_P9): Delete. (GPR_FUSION): Delete. (FPR_FUSION): Delete. (power9 fusion peephole2s): Delete. (fusion_gpr_<P:mode>_<GPR_FUSION:mode>_load): Delete. (fusion_gpr_<P:mode>_<GPR_FUSION:mode>_store): Delete. (fusion_vsx_<P:mode>_<FPR_FUSION:mode>_load): Delete. (fusion_vsx_<P:mode>_<FPR_FUSION:mode>_store): Delete. (fusion_p9_<mode>_constant): Delete. * config/rs6000/rs6000.opt (-mpower9-fusion): Delete undocumented power9 fusion switch. * doc/md.texi (PowerPC constraints): Update wF constraint documentation for power8 fusion only. [gcc/testsuite] 2018-11-16 Michael Meissner <meissner@linux.ibm.com> * gcc.target/powerpc/fusion3.c: Delete. * gcc.target/powerpc/fusion4.c: Delete. From-SVN: r266220
Michael Meissner committed -
PR rtl-optimization/87475 * cfgrtl.c (patch_jump_insn): Allow redirection failure for CROSSING_JUMP_P insns. (cfg_layout_redirect_edge_and_branch): Don't ICE if ret is NULL. * g++.dg/opt/pr87475.C: New test. From-SVN: r266219
Jakub Jelinek committed -
PR target/88051 * config/i386/i386.md (floatunsdidf2): Allow only 64bit AVX512F targets. * config/i386/sse.md (UNSPEC_MOVDI_TO_SSE): New UNSPEC. (movdi_to_sse): Rewrite using UNSPEC_MOVDI_TO_SSE unspec. From-SVN: r266218
Uros Bizjak committed -
PR middle-end/87854 * c-common.c (fix_string_type): Reject string literals larger than TYPE_MAX_VALUE (ssizetype) bytes. From-SVN: r266217
Jakub Jelinek committed -
PR middle-end/88032 * optabs.c (expand_binop): For op0_mode use GET_MODE (op0), unless it is VOIDmode, in which case use int_mode. Similarly for op1_mode. From-SVN: r266216
Jakub Jelinek committed -
When running the testsuite on boards that can't report an error status DejaGNU uses a special wrapper to print the exit code on stdout and parses stdout to find whether an execution failed or passed. In testcases that use "freopen (..., ..., stdout)" this special line is printed to the alternate location described in the freopen call and DejaGNU can't find the error code. This results in DejaGNU using a default return status of 2 and the test failing. This patch skips the two testcases that use freopen on stdout when testing a board that requires this wrapper. Testing done by running these two tests on arm-none-eabi cross build and observing that they are unsupported. gcc/testsuite/ChangeLog: 2018-11-16 Matthew Malcomson <matthew.malcomson@arm.com> * gcc.c-torture/execute/printf-2.c: Skip on wrapped boards. * gcc.c-torture/execute/user-printf.c: Likewise. From-SVN: r266214
Matthew Malcomson committed -
* tree-switch-conversion.h (switch_decision_tree::emit_case_nodes): Add location_t parameter. (switch_decision_tree::emit_cmp_and_jump_insns): Likewise. (switch_decision_tree::do_jump_if_equal): Likewise. * tree-switch-conversion.c (switch_decision_tree::emit): Pass location of switch statement to emit_case_nodes. (switch_decision_tree::emit_cmp_and_jump_insns): Add LOC parameter and set it on the newly built GIMPLE comparison statement. (switch_decision_tree::do_jump_if_equal): Likewise. (switch_decision_tree::emit_case_nodes): Add LOC parameter and pass it in calls to do_jump_if_equal as well as recursive calls. From-SVN: r266213
Eric Botcazou committed -
Remove ovl_used, it is no longer needed * cp-tree.h (OVL_USED_P): Delete. (lookup_keep): Delete. * friend.c (add_friend): Don't call it. * parser.c (lookup_literal_operator): Likewise. (cp_parser_primary_expression): Likewise. * semantics.c (perform_koenig_lookup): Likewise. * pt.c (tsubst_copy <OVERLOAD>): Don't assert OVL_USED_P. * tree.c (ovl_copy): Delete. (ovl_insert): Remove OVL_USED_P checks. (ovl_iterator::reveal_node): Likewise. (ovl_iterator::remove__node): Likewise. (ovl_used, lookup_keep): Delete. From-SVN: r266212
Nathan Sidwell committed -
The earlier PTWRITE builtin definition was unnecessarily restrictive, only allowing register input to PTWRITE. The instruction actually supports memory operands too, so allow that too. gcc/: 2018-11-16 Andi Kleen <ak@linux.intel.com> * config/i386/i386.md: Allow memory operands to ptwrite. From-SVN: r266211
Andi Kleen committed
-