- 20 May, 2019 27 commits
-
-
https://gcc.gnu.org/ml/gcc-patches/2019-05/msg01245.html * cp-tree.h (struct lang_decl_ns): Remove usings field. (DECL_NAMESPACE_USING): Delete. * name-lookup.c (name_lookup::search_usings): Use namespace's binding scope. (name_lookup::queue_namespae): Likewise. (finish_namespace_using_directive, push_namespace): Likewise. (has_using_namespace_std_directive): Just search the entire binding stack. From-SVN: r271416
Nathan Sidwell committed -
Darwin doesn't emit a .file directive by default and one of the scan-asm hits for ELF targets comes from this directive. Adjust for Darwin and explain. 2019-05-20 Iain Sandoe <iain@sandoe.co.uk> PR testsuite/58321 * gcc.target/i386/memcpy-strategy-3.c: Adjust count for Darwin and add a comment as to the reason for the difference. * gcc.target/i386/memset-strategy-1.c: Likewise. From-SVN: r271415
Iain Sandoe committed -
2019-05-20 Richard Biener <rguenther@suse.de> * tree-ssa-structalias.c (find_func_aliases): POINTER_DIFF_EXPR doesn't produce pointers. {TRUNC,CEIL,FLOOR,ROUND,EXACT}_{DIV,MOD}_EXPR points to what the first operand points to. From-SVN: r271414
Richard Biener committed -
* tree-ssa-alias.c (compare_sizes): New function. (sompare_type_sizes): New function (aliasing_component_refs_p): Use it. (indirect_ref_may_alias_decl_p): Likewise. From-SVN: r271413
Jan Hubicka committed -
An array of an unknown bound is an incomplete type, so no object of such a type can be constructed. This means __is_constructible should always be false for an array of unknown bound. This patch also changes the std::is_default_constructible trait to use std::is_constructible, which now gives the right answer for arrays of unknown bound. gcc/cp: PR c++/90532 Ensure __is_constructible(T[]) is false * method.c (is_xible_helper): Return error_mark_node for construction of an array of unknown bound. gcc/testsuite: PR c++/90532 Ensure __is_constructible(T[]) is false * g++.dg/ext/90532.C: New test. libstdc++-v3: PR c++/90532 Ensure __is_constructible(T[]) is false * include/std/type_traits (__do_is_default_constructible_impl) (__is_default_constructible_atom, __is_default_constructible_safe): Remove. (is_default_constructible): Use is_constructible. * testsuite/20_util/is_constructible/value.cc: Check int[] case. * testsuite/20_util/is_default_constructible/value.cc: Likewise. * testsuite/20_util/is_trivially_constructible/value.cc: Likewise. * testsuite/20_util/is_trivially_default_constructible/value.cc: Likewise. From-SVN: r271412
Jonathan Wakely committed -
* config/i386/sol2.h (CC1_SPEC): Reject -mx32. From-SVN: r271411
Rainer Orth committed -
* config/sol2.h (LIBTSAN_EARLY_SPEC): Remove : after %e. (LIBLSAN_EARLY_SPEC): Likewise. * config/i386/sol2.h (ASAN_REJECT_SPEC): Likewise. From-SVN: r271410
Rainer Orth committed -
Pass the size to the allocator so that it may optimize deallocation. This was seen to significantly reduce the work required in jemalloc, with about 40% reduction in CPU cycles in the free path. Note jemalloc >= 5.2 is required to fix a crash with 0 sizes. 2019-05-20 Pádraig Brady <pbrady@fb.com> * libstdc++-v3/include/ext/new_allocator.h (deallocate): Pass the size to the deallocator with -fsized-deallocation. From-SVN: r271409
Pádraig Brady committed -
* testsuite/experimental/memory_resource/new_delete_resource.cc: Fix test by passing correct alignment to deallocate function. From-SVN: r271408
Jonathan Wakely committed -
2019-05-20 Martin Liska <mliska@suse.cz> * config/i386/i386.c (ix86_libc_has_fast_function): Add ATTRIBUTE_UNUSED for the argument. From-SVN: r271406
Martin Liska committed -
2019-05-20 Richard Biener <rguenther@suse.de> * gimple-match-head.c: Include vec-perm-indices.h. * generic-match-head.c: Likewise. * fold-const.h (fold_vec_perm): Declare when vec-perm-indices.h is included. * fold-const.c (fold_vec_perm): Export. (fold_ternary_loc): Move non-constant folding of VEC_PERM_EXPR... (match.pd): ...here. From-SVN: r271404
Richard Biener committed -
* cfgloop.h (struct loop): Add simdlen member. * cfgloopmanip.c (copy_loop_info): Copy simdlen as well. * omp-expand.c (expand_omp_simd): Set it if simdlen clause is present. * tree-vect-loop.c (vect_analyze_loop): Pass loop->simdlen != 0 as new argument to autovectorize_vector_sizes target hook. If loop->simdlen, pick up vector size where the vectorization factor is equal to loop->simd, and if there is none, fall back to the first successful one. (vect_transform_loop): Adjust autovectorize_vector_sizes target hook caller. * omp-low.c (omp_clause_aligned_alignment): Likewise. * omp-general.c (omp_max_vf): Likewise. * optabs-query.c (can_vec_mask_load_store_p): Likewise. * tree-vect-slp.c (vect_slp_bb): Likewise. * target.def (autovectorize_vector_sizes): Add ALL argument and document it. * doc/tm.texi: Adjust documentation. * targhooks.c (default_autovectorize_vector_sizes): Add bool argument. * targhooks.h (default_autovectorize_vector_sizes): Likewise. * config/aarch64/aarch64.c (aarch64_autovectorize_vector_sizes): Add bool argument. * config/arc/arc.c (arc_autovectorize_vector_sizes): Likewise. * config/arm/arm.c (arm_autovectorize_vector_sizes): Likewise. * config/mips/mips.c (mips_autovectorize_vector_sizes): Likewise. * config/i386/i386.c (ix86_autovectorize_vector_sizes): Likewise. If true and TARGET_AVX512F or TARGET_AVX, push 3 or 2 sizes even if preferred vector size is not 512-bit or 256-bit, just put those unpreferred ones last. * gcc.target/i386/avx512f-simd-1.c: New test. From-SVN: r271403
Jakub Jelinek committed -
2019-05-20 Christophe Lyon <christophe.lyon@linaro.org> * gcc.target/aarch64/target_attr_10.c: Add quotes to expected error message. * gcc.target/arm/attr-neon-builtin-fail.c: Likewise. From-SVN: r271402
Christophe Lyon committed -
2019-05-20 Martin Liska <mliska@suse.cz> * targhooks.c (default_libc_has_fast_function): New function. * targhooks.h (default_libc_has_fast_function): Likewise. From-SVN: r271401
Martin Liska committed -
2019-05-20 Martin Liska <mliska@suse.cz> PR middle-end/90263 * builtins.c (expand_builtin_memory_copy_args): When having a target with fast mempcpy implementation do now use memcpy. * config/i386/i386.c (ix86_libc_has_fast_function): New. (TARGET_LIBC_HAS_FAST_FUNCTION): Likewise. * doc/tm.texi: Likewise. * doc/tm.texi.in: Likewise. * target.def: * expr.c (emit_block_move_hints): Add 2 new arguments. * expr.h (emit_block_move_hints): Bail out when libcall to memcpy would be used. 2019-05-20 Martin Liska <mliska@suse.cz> PR middle-end/90263 * gcc.c-torture/compile/pr90263.c: New test. * lib/target-supports.exp: Add check_effective_target_glibc. From-SVN: r271400
Martin Liska committed -
2019-05-20 Martin Liska <mliska@suse.cz> * profile-count.c: Add vertical spacing in order to separate functions. * profile-count.h: Likewise. From-SVN: r271399
Martin Liska committed -
2019-05-20 Martin Liska <mliska@suse.cz> * profile-count.h: Do not use full qualified names if possible. * profile-count.c (profile_count::to_frequency): Likewise. From-SVN: r271398
Martin Liska committed -
2019-05-20 Martin Liska <mliska@suse.cz> * profile-count.h (enum profile_quality): Use capital letters for enum value names. Use the adjusted names. * profile-count.c: Use the adjusted names. From-SVN: r271397
Martin Liska committed -
2019-05-20 Richard Biener <rguenther@suse.de> PR testsuite/90518 * gcc.dg/gimplefe-40.c: Restrict to targets with appropriate vector support. * gcc.dg/gimplefe-41.c: Likewise. From-SVN: r271396
Richard Biener committed -
libcpp/ChangeLog: 2019-05-19 Andrew Pinski <apinski@marvell.com> PR pch/81721 * lex.c (cpp_token_val_index <case SPELL_OPERATOR>): If tok->flags has NAMED_OP set, then return CPP_TOKEN_FLD_NODE. gcc/testsuite/ChangeLog: 2019-05-19 Andrew Pinski <apinski@marvell.com> PR pch/81721 * g++.dg/pch/operator-1.C: New testcase. * g++.dg/pch/operator-1.Hs: New file. From-SVN: r271395
Andrew Pinski committed -
From-SVN: r271394
GCC Administrator committed -
This replaces "wH" by "v", "wI" by "d", and when both are allowed it uses "wa"; all with isa "p8v". * config/rs6000/constraints.md (define_register_constraint "wH"): Delete. (define_register_constraint "wI"): Delete. * config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete RS6000_CONSTRAINT_wH and RS6000_CONSTRAINT_wI. * config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust. (rs6000_init_hard_regno_mode_ok): Adjust. * config/rs6000/rs6000.md: Replace "wH" and "wI" constraints by "v" resp. "d", or with "wa" as appropriate, all with "p8v". * config/rs6000/vsx.md: Ditto. * doc/md.texi (Machine Constraints): Adjust. From-SVN: r271390
Segher Boessenkool committed -
This replaces the "wy" constraint by "wa", with isa "p8v". It also creates a new attribute <Fisa>, used together with all <Fv2>. * config/rs6000/constraints.md (define_register_constraint "wy"): Delete. * config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete RS6000_CONSTRAINT_wy. * config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust. (rs6000_init_hard_regno_mode_ok): Adjust. * config/rs6000/rs6000.md: Replace "wy" constraint by "wa" with "p8v". Use "<Fisa>" as "isa" in all alternatives that use "<Fv2>". (define_mode_attr Fisa): New. * config/rs6000/vsx.md: Replace "wy" constraint by "wa" with "p8v". * doc/md.texi (Machine Constraints): Adjust. From-SVN: r271389
Segher Boessenkool committed -
This replaces the "wu" constraint by "v", with isa "p8v". Or, in most cases, use "wa", since the instructions allow all VSX registers, and it does not change how GCC behaves, so it is clearer that way. This also delete the unused <Fa>. * config/rs6000/constraints.md (define_register_constraint "wu"): Delete. * config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete RS6000_CONSTRAINT_wu. * config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust. (rs6000_init_hard_regno_mode_ok): Adjust. * config/rs6000/rs6000.md: Replace "wu" constraint by "v" or "wa", both with "p8v". (define_mode_attr Fa): Delete. * config/rs6000/vsx.md: Ditto. * doc/md.texi (Machine Constraints): Adjust. From-SVN: r271388
Segher Boessenkool committed -
This replaces "wJ" by "wI", and "wK by "wH", both with isa "p9v". * config/rs6000/constraints.md (define_register_constraint "wJ"): Delete. (define_register_constraint "wK"): Delete. * config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete RS6000_CONSTRAINT_wJ and RS6000_CONSTRAINT_wK. * config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust. (rs6000_init_hard_regno_mode_ok): Adjust. * config/rs6000/rs6000.md: Replace "wJ" constraint by "wI" with "p9v". Replace "wK" constraint by "wH" with "p9v". * config/rs6000/vsx.md: Ditto. * doc/md.texi (Machine Constraints): Adjust. From-SVN: r271387
Segher Boessenkool committed -
This replaces the "wb" constraint by "v", with isa "p9v". * config/rs6000/constraints.md (define_register_constraint "wb"): Delete. * config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete RS6000_CONSTRAINT_wb. * config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust. (rs6000_init_hard_regno_mode_ok): Adjust. * config/rs6000/rs6000.md: Replace "wb" constraint by "v" with "p9v". * config/rs6000/vsx.md: Ditto. * doc/md.texi (Machine Constraints): Adjust. From-SVN: r271386
Segher Boessenkool committed -
This replaces the "wo" constraint by "wa", with isa "p9v". * config/rs6000/constraints.md (define_register_constraint "wo"): Delete. * config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete RS6000_CONSTRAINT_wo. * config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust. (rs6000_init_hard_regno_mode_ok): Adjust. * config/rs6000/rs6000.md: Replace "wo" constraint by "wa" with "p9v". * config/rs6000/altivec.md: Ditto. * doc/md.texi (Machine Constraints): Adjust. From-SVN: r271385
Segher Boessenkool committed
-
- 19 May, 2019 8 commits
-
-
When using posix_spawn or fork to launch a child process, the parent needs to wait for the child, otherwise the dead child is left as a zombie process. For this purpose one can install a signal handler for SIGCHLD. 2019-05-19 Janne Blomqvist <jb@gcc.gnu.org> PR libfortran/90038 * intrinsics/execute_command_line (sigchld_handler): New function. (execute_command_line): Install handler for SIGCHLD. * configure.ac: Check for presence of sigaction and waitpid. * config.h.in: Regenerated. * configure: Regenerated. Regtested on x86_64-pc-linux-gnu. From-SVN: r271384
Janne Blomqvist committed -
From-SVN: r271382
Peter Bergner committed -
2019-05-19 Paul Thomas <pault@gcc.gnu.org> PR fortran/90498 * trans-stmt.c (trans_associate_var) Do not use the saved descriptor if the expression is a COMPONENT_REF. 2019-05-19 Paul Thomas <pault@gcc.gnu.org> PR fortran/90498 * gfortran.dg/associate_48.f90 : New test. From-SVN: r271380
Paul Thomas committed -
re PR fortran/78290 (Gfortran incorrectly creates a copy of an array passed to an array pointer dummy argument) 2019-05-19 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/78290 * gfortran.dg/pr78290.f90: New test. From-SVN: r271379
Thomas Koenig committed -
2019-05-19 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/88821 * ChangeLog: Add forgotten entry. From-SVN: r271378
Thomas Koenig committed -
2019-05-19 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/88821 * expr.c (gfc_is_simply_contiguous): Return true for an EXPR_ARRAY. * trans-array.c (is_pointer): New function. (gfc_conv_array_parameter): Call gfc_conv_subref_array_arg when not optimizing and not optimizing for size if the formal arg is passed by reference. * trans-expr.c (gfc_conv_subref_array_arg): Add arguments fsym, proc_name and sym. Add run-time warning for temporary array creation. Wrap argument if passing on an optional argument to an optional argument. * trans.h (gfc_conv_subref_array_arg): Add optional arguments fsym, proc_name and sym to prototype. 2019-05-19 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/88821 * gfortran.dg/alloc_comp_auto_array_3.f90: Add -O0 to dg-options to make sure the test for internal_pack is retained. * gfortran.dg/assumed_type_2.f90: Split compile and run time tests into this and * gfortran.dg/assumed_type_2a.f90: New file. * gfortran.dg/c_loc_test_22.f90: Likewise. * gfortran.dg/contiguous_3.f90: Likewise. * gfortran.dg/internal_pack_11.f90: Likewise. * gfortran.dg/internal_pack_12.f90: Likewise. * gfortran.dg/internal_pack_16.f90: Likewise. * gfortran.dg/internal_pack_17.f90: Likewise. * gfortran.dg/internal_pack_18.f90: Likewise. * gfortran.dg/internal_pack_4.f90: Likewise. * gfortran.dg/internal_pack_5.f90: Add -O0 to dg-options to make sure the test for internal_pack is retained. * gfortran.dg/internal_pack_6.f90: Split compile and run time tests into this and * gfortran.dg/internal_pack_6a.f90: New file. * gfortran.dg/internal_pack_8.f90: Likewise. * gfortran.dg/missing_optional_dummy_6: Split compile and run time tests into this and * gfortran.dg/missing_optional_dummy_6a.f90: New file. * gfortran.dg/no_arg_check_2.f90: Split compile and run time tests into this and * gfortran.dg/no_arg_check_2a.f90: New file. * gfortran.dg/typebound_assignment_5.f90: Split compile and run time tests into this and * gfortran.dg/typebound_assignment_5a.f90: New file. * gfortran.dg/typebound_assignment_6.f90: Split compile and run time tests into this and * gfortran.dg/typebound_assignment_6a.f90: New file. * gfortran.dg/internal_pack_19.f90: New file. * gfortran.dg/internal_pack_20.f90: New file. * gfortran.dg/internal_pack_21.f90: New file. From-SVN: r271377
Thomas Koenig committed -
2019-05-19 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/90329 * invoke.texi: Document -fbroken-callers. * lang.opt: Add -fbroken-callers. * trans-decl.c (create_function_arglist): Only set DECL_HIDDEN_STRING_LENGTH if flag_broken_callers is set. From-SVN: r271376
Thomas Koenig committed -
From-SVN: r271375
GCC Administrator committed
-
- 18 May, 2019 4 commits
-
-
Darwin is able to use two runtimes for objective-c; the default is its native "NeXT" runtime, but also it can build code using the "gnu-runtime". In order to do this, we have to be able to find the gnu-runtime headers (which are installed into the compiler's tree). The process to do this is erroneously prepending the sysroot to this when a sysroot is in force. The gnu-runtime headers have never been installed in a Darwin (macOS) SDK so we must make sure that they are found local to the compiler. gcc/ 2019-05-18 Iain Sandoe <iain@sandoe.co.uk> * config/darwin-c.c (darwin_register_objc_includes): Do not prepend the sysroot when building gnu-runtime header search paths. From-SVN: r271371
Iain Sandoe committed -
The instancetype has been added as a typedef alias to id in order to allow diagnosis of cases where a class is used or returned where an instance is expected. This adds the typedef, and tests that we can parse it. It doesn't alter the diagnostics yet. gcc/objc/ 2019-05-18 Iain Sandoe <iain@sandoe.co.uk> * objc/objc-act.h (OCTI_INSTANCE_TYPE, OCTI_INSTANCETYPE_NAME): New. (objc_global_trees): Add instance type and name. (INSTANCE_TYPEDEF_NAME): New. * objc/objc-act.c (synth_module_prologue): Build decls for objc_instancetype_type and objc_instancetype_name. gcc/testsuite/ 2019-05-18 Iain Sandoe <iain@sandoe.co.uk> * objc.dg/instancetype-0.m: New. From-SVN: r271370
Iain Sandoe committed -
We have been emitting two section swiches in the Darwin's file end function. This means that varasm is not updated which could matter if we elect to reorder some of the file end operations in support of LTO actions. 2019-05-18 Iain Sandoe <iain@sandoe.co.uk> * config/darwin.c (darwin_file_end): Use switch_to_section () instead of direct output of the asm. From-SVN: r271369
Iain Sandoe committed -
From-SVN: r271368
GCC Administrator committed
-
- 17 May, 2019 1 commit
-
-
gcc/testsuite/ChangeLog: * g++.dg/overload/conv-op1.C: Adjust text of expected messages. * g++.dg/ubsan/pr63956.C: Same. * g++.old-deja/g++.pt/assign1.C: Same. From-SVN: r271364
Martin Sebor committed
-