- 24 May, 2019 3 commits
-
-
A couple of the i386.exp tests fail because the label spelling used is different between ELF and Mach-O targets. Adjusted here. 2019-05-24 Iain Sandoe <iain@sandoe.co.uk> * gcc.target/i386/pr67985-2.c: Adjust label checks for Darwin. * gcc.target/i386/pr77881.c: Likewise. From-SVN: r271590
Iain Sandoe committed -
A few of the i386.exp target tests cannot pass on Darwin because either the port doesn't support a feature, or the ABI demands sufficiently different codegen that matching the output with scan-asms would require a different test. Disabling those tests here. 2019-05-24 Iain Sandoe <iain@sandoe.co.uk> * gcc.target/i386/falign-functions-2.c: Skip for Darwin. * gcc.target/i386/pr70738-7.c: Likewise. * gcc.target/i386/pr24414.c: Likewise. From-SVN: r271589
Iain Sandoe committed -
From-SVN: r271588
GCC Administrator committed
-
- 23 May, 2019 31 commits
-
-
One of the static assertions in 20_util/function_objects/invoke/1.cc was wrong, but didn't fail because by default it was compiled with -std=gnu++14 which didn't use that static assertion. Split out the C++17 parts to a new file that always runs with -std=gnu++17, so those checks are always done. The 23_containers/unordered_set/allocator/ext_ptr.cc test is supposed to be a run-time test but was unintentionally compile-only. * testsuite/20_util/function_objects/invoke/1.cc: Move C++17-specific tests to ... * testsuite/20_util/function_objects/invoke/3.cc: New test. * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Change "compile" test to "run". From-SVN: r271584
Jonathan Wakely committed -
* doc/xml/manual/intro.xml: Document LWG DR 2996 change. * doc/html/*: Regenerate. * include/bits/shared_ptr.h (shared_ptr(shared_ptr&&, T*)): Add rvalue aliasing constructor. (static_pointer_cast, const_pointer, dynamic_pointer_cast) (reinterpret_pointer_cast): Add overloads taking rvalues. * include/bits/shared_ptr_base.h (__shared_ptr(__shared_ptr&&, T*)): Add rvalue aliasing constructor. * testsuite/20_util/shared_ptr/casts/1.cc: Change "compile" test to "run" and check return values as well as types. * testsuite/20_util/shared_ptr/casts/reinterpret.cc: Likewise. * testsuite/20_util/shared_ptr/casts/rval.cc: New test. * testsuite/20_util/shared_ptr/cons/alias-rval.cc: New test. * testsuite/20_util/shared_ptr/cons/alias.cc: Remove unused return values. From-SVN: r271583
Jonathan Wakely committed -
* doc/xml/manual/evolution.xml: Document LWG DR 2921 change. * doc/xml/manual/intro.xml: Likewise. * include/std/future (__create_task_state): Add default arguments to make providing an allocator optional. (packaged_task::packaged_task(F&&)): Call __create_task_state directly instead of delegating to another constructor. (packaged_task::packaged_task(allocator_arg_t, const A&, ...)): Do not define allocator-extended constructors for C++17 and later. * testsuite/30_threads/packaged_task/cons/alloc.cc: Only run test for C++11 and C++14. * testsuite/30_threads/packaged_task/cons/alloc2.cc: Likewise. * testsuite/30_threads/packaged_task/cons/alloc_min.cc: Likewise. * testsuite/30_threads/packaged_task/uses_allocator.cc: Likewise. From-SVN: r271582
Jonathan Wakely committed -
This can't work without special support because placing the call directly after the function label breaks the ABI requirement that call sites are 16byte aligned. gcc/ 2019-05-23 Iain Sandoe <iain@sandoe.co.uk> * config/i386/darwin.h: Reject -mfentry*. * doc/sourcebuild.texi: Document mfentry target support. gcc/testsuite/ 2019-05-23 Iain Sandoe <iain@sandoe.co.uk> * lib/target-supports.exp (check_effective_target_mfentry): New. * gcc.target/i386/fentry-override.c: Require effective target mfentry. * gcc/testsuite/gcc.target/i386/fentry.c: Likewise * gcc.target/i386/fentryname1.c: Likewise * gcc.target/i386/fentryname2.c: Likewise * gcc.target/i386/fentryname3.c: Likewise * gcc.target/i386/nop-mcount.c: Likewise * gcc.target/i386/pr82699-2.c: Likewise * gcc.target/i386/pr82699-4.c: Likewise * gcc.target/i386/pr82699-5.c: Likewise * gcc.target/i386/pr82699-6.c: Likewise * gcc.target/i386/returninst1.c: Likewise * gcc.target/i386/returninst2.c: Likewise * gcc.target/i386/returninst3.c : Likewise From-SVN: r271580
Iain Sandoe committed -
rs6000.c (rs6000_global_entry_point_needed_p): Rename to rs6000_global_entry_point_prologue_needed_p. [gcc] 2019-05-22 Bill Schmidt <wschmidt@linux.ibm.com> * config/rs6000/rs6000.c (rs6000_global_entry_point_needed_p): Rename to rs6000_global_entry_point_prologue_needed_p. Return false for PC-relative functions. (rs6000_output_function_prologue): Change called function name to rs6000_global_entry_point_prologue_needed_p. Emit ".localentry name,1" for PC-relative functions. (rs6000_elf_declare_function_name): Change called function name to rs6000_global_entry_point_prologue_needed_p. [gcc/testsuite] 2019-05-22 Bill Schmidt <wschmidt@linux.ibm.com> * gcc.target/powerpc/localentry-1.c: New file. From-SVN: r271577
Bill Schmidt committed -
PR target/90552 * config/i386/i386.c (gen_rtx_cost): Use ix86_tune_cost instead of ix86_cost. testsuite/ChangeLog: PR target/90552 * gcc.target/i386/pr90552.c: New test. From-SVN: r271576
Uros Bizjak committed -
2019-05-22 Bill Schmidt <wschmidt@linux.ibm.com> Michael Meissner <meissner@linux.ibm.com> Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/rs6000-cpus.def (ISA_FUTURE_MASKS_SERVER): Add OPTION_MASK_PCREL. (POWERPC_MASKS): Add OPTION_MASK_PCREL. * config/rs6000/rs6000-protos.h (rs6000_pcrel_p): New prototype. (rs6000_fndecl_pcrel_p): Likewise. * config/rs6000/rs6000.c (rs6000_option_override_internal): Report error if -mpcrel is requested without -mcpu=future. (rs6000_opt_masks): Add entry for pcrel. (rs6000_fndecl_pcrel_p): New function. (rs6000_pcrel_p): Likewise. * config/rs6000/rs6000.opt (mpcrel): New option. * doc/invoke.texi: Document -mpcrel and -mno-pcrel. Co-Authored-By: Michael Meissner <meissner@linux.ibm.com> Co-Authored-By: Segher Boessenkool <segher@kernel.crashing.org> From-SVN: r271575
Bill Schmidt committed -
<https://gcc.gnu.org/ml/gcc-patches/2017-12/msg00573.html>, the high numbers are not arbitrary, so it seems wrong to try lowering them, or we'd just waste cycles testing nothing, or worse, ending up with a bogus error indication. Better to just plain disable this part of the test for simulator targets; I assume the results should be the same on any IEEE-float target, i.e. no target-specific things going on here that'd raise a need to cover it everywhere. With this part of the test disabled, I saw the test finishing in (time) "124.74s user" where it was before "1120.26s user" running the cris-elf-run simulator on a "i7-4770K CPU @ 3.50GHz" host. Most certainly that indidates that the remainder of the test is still too much for *some* host+simulator combos, but I'm happy with the runtime lowered to 1/5 of the timeout (10 minutes) on this particular combination, and I'd think this fixes timeouts for many other simulator combos too. This construct (disabling or lowering limits for simulators) is used elsewhere in the libstdc++ test-suite and in particular the SIMULATOR_TEST macro is used in the testsuite machinery (though AFAICT not in testDiscreteDist). * testsuite/26_numerics/random/poisson_distribution/operators/values.cc: Don't run the libstdc++/83237 part on simulator targets. From-SVN: r271574
Hans-Peter Nilsson committed -
2019-05-23 Mark Eggleston <mark.eggleston@codethink.com> * gfortran.dg/fmt_f_default_field_width_1.f90: Hide REAL(16) behind __GFC_REAL_16__. Add -cpp to dg-options. * gfortran.dg/fmt_f_default_field_width_2.f90: Ditto. * gfortran.dg/fmt_f_default_field_width_3.f90: Ditto. * gfortran.dg/fmt_g_default_field_width_1.f90: Ditto. * gfortran.dg/fmt_g_default_field_width_2.f90: Ditto. * gfortran.dg/fmt_g_default_field_width_3.f90: Ditto. From-SVN: r271573
Mark Eggleston committed -
PR tree-optimization/90576 * tree-ssa-alias.c (compare_sizes): Remove dead calls to poly_int_tree_p. (aliasing_component_refs_p): Fix three way size compare conditional; give up earlier in case we can not decide on equivalence. Co-Authored-By: Martin Liska <mliska@suse.cz> From-SVN: r271572
Jan Hubicka committed -
* doc/xml/manual/status_cxx2017.xml: Add feature test macro for P0040R3. * doc/html/*: Regenerate. From-SVN: r271571
Jonathan Wakely committed -
architecture level, as yet unnamed. [gcc] 2019-05-22 Bill Schmidt <wschmidt@linux.ibm.com> Michael Meissner <meissner@linux.ibm.com> Segher Boessenkool <segher@kernel.crashing.org> * config.gcc: Add future cpu. * config/rs6000/driver-rs6000.c (asm_names): Add future cpu. * config/rs6000/rs6000-cpus.def (ISA_FUTURE_MASKS_SERVER): New #define. (POWERPC_MASKS): Add OPTION_MASK_FUTURE. (RS6000_CPU): New instantiation for future cpu. * config/rs6000/rs6000-opts.h (enum processor_type): Add PROCESSOR_FUTURE. * config/rs6000/rs6000-string.c (expand_compare_loop): Treat PROCESSOR_FUTURE like PROCESSOR_POWER9 for now. * config/rs6000/rs6000-tables.opt: Regenerate. * config/rs6000/rs6000.c (rs6000_option_override_internal): Treat PROCESSOR_FUTURE similarly to PROCESSOR_POWER9 for now. (rs6000_machine_from_flags): Handle future cpu. (rs6000_reassociation_width): Treat PROCESSOR_FUTURE like PROCESSOR_POWER9 for now. (rs6000_adjust_cost): Likewise. (rs6000_issue_rate): Likewise. (rs6000_register_move_cost): Likewise. (rs6000_opt_mask): Add entry for future. * config/rs6000/rs6000.h (ASM_CPU_SPEC): Add future cpu. (MASK_FUTURE): New #define. * config/rs6000/rs6000.md (define_attr "cpu"): Add future cpu. * config/rs6000/rs6000.opt (mfuture): New target option. * doc/invoke.texi (mcpu): Add future cpu. [gcc/testsuite] 2019-05-22 Bill Schmidt <wschmidt@linux.ibm.com> * gcc.target/powerpc/cpu-future.c: New test. Co-Authored-By: Michael Meissner <meissner@linux.ibm.com> Co-Authored-By: Segher Boessenkool <segher@kernel.crashing.org> From-SVN: r271567
Bill Schmidt committed -
It's possible for the function pointer comparison to fail even though the type is correct, because the function could be defined multiple times with different addresses when shared libraries are in use. Retain the function pointer check for the common case where the check succeeds, but compare typeinfo (if RTTI is enabled) if the first check fails. * include/experimental/any (__any_caster): Use RTTI if comparing addresses fails, to support non-unique addresses in shared libraries. * include/std/any (__any_caster): Likewise. From-SVN: r271557
Jonathan Wakely committed -
This corresponds to the fixes done for std::any_cast, but has to be done without if-constexpr. The dummy specialization of _Manager_internal<_Op> is used to avoid instantiating the real _Manager_internal<T>::_S_manage function just to compare its address. PR libstdc++/90220 * include/experimental/any (__any_caster): Constrain to only be callable for object types. Use remove_cv_t instead of decay_t. If the type decays or isn't copy constructible, compare the manager function to a dummy specialization. (__any_caster): Add overload constrained for non-object types. (any::_Manager_internal<_Op>): Add dummy specialization. * testsuite/experimental/any/misc/any_cast.cc: Test function types and array types. From-SVN: r271556
Jonathan Wakely committed -
2019-05-23 Martin Liska <mliska@suse.cz> PR c++/90587 * tree-ssa-uninit.c (value_sat_pred_p): The result of & operation points to a temporary (pointed via tree_to_wide_ref) that is out of scope after the &. From-SVN: r271555
Martin Liska committed -
PR c++/90592 * doc/extend.texi (Function Names): Add missing word. From-SVN: r271554
Jonathan Wakely committed -
2019-05-23 Richard Biener <rguenther@suse.de> PR tree-optimization/88440 * opts.c (default_options_table): Enable -ftree-loop-distribute-patterns at -O[2s]+. * tree-loop-distribution.c (generate_memset_builtin): Fold the generated call. (generate_memcpy_builtin): Likewise. (distribute_loop): Pass in whether to only distribute patterns. (prepare_perfect_loop_nest): Also allow size optimization. (pass_loop_distribution::execute): When optimizing a loop nest for size allow pattern replacement. * gcc.dg/tree-ssa/ldist-37.c: New testcase. * gcc.dg/tree-ssa/ldist-38.c: Likewise. * gcc.dg/vect/vect.exp: Add -fno-tree-loop-distribute-patterns. * gcc.dg/tree-ssa/ldist-37.c: Adjust. * gcc.dg/tree-ssa/ldist-38.c: Likewise. * g++.dg/tree-ssa/pr78847.C: Likewise. * gcc.dg/autopar/pr39500-1.c: Likewise. * gcc.dg/autopar/reduc-1char.c: Likewise. * gcc.dg/autopar/reduc-7.c: Likewise. * gcc.dg/tree-ssa/ivopts-lt-2.c: Likewise. * gcc.dg/tree-ssa/ivopts-lt.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-1.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-2.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-3.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-4.c: Likewise. * gcc.dg/tree-ssa/prefetch-7.c: Likewise. * gcc.dg/tree-ssa/prefetch-8.c: Likewise. * gcc.dg/tree-ssa/prefetch-9.c: Likewise. * gcc.dg/tree-ssa/scev-11.c: Likewise. * gcc.dg/vect/costmodel/i386/costmodel-vect-31.c: Likewise. * gcc.dg/vect/costmodel/i386/costmodel-vect-33.c: Likewise. * gcc.dg/vect/costmodel/x86_64/costmodel-vect-31.c: Likewise. * gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c: Likewise. * gcc.target/i386/pr30970.c: Likewise. * gcc.target/i386/vect-double-1.c: Likewise. * gcc.target/i386/vect-double-2.c: Likewise. * gcc.dg/tree-ssa/gen-vect-2.c: Likewise. * gcc.dg/tree-ssa/gen-vect-26.c: Likewise. * gcc.dg/tree-ssa/gen-vect-28.c: Likewise. * gcc.dg/tree-ssa/gen-vect-32.c: Likewise. * gfortran.dg/vect/vect-5.f90: Likewise. * gfortran.dg/vect/vect-8.f90: Likewise. From-SVN: r271553
Richard Biener committed -
PR target/90568 * config/i386/i386.md (stack_protect_test_<mode>): Use sub instead of xor. From-SVN: r271552
Jakub Jelinek committed -
From-SVN: r271549
Eric Botcazou committed -
2019-05-23 Martin Liska <mliska@suse.cz> PR sanitizer/90570 * gimplify.c (gimplify_target_expr): Skip TREE_STATIC target expression similarly to gimplify_decl_expr. 2019-05-23 Martin Liska <mliska@suse.cz> PR sanitizer/90570 * g++.dg/asan/pr90570.C: New test. From-SVN: r271548
Martin Liska committed -
From-SVN: r271545
Eric Botcazou committed -
These tests had started to XPASS on pic targets where the codegen is now as expected. gcc/testsuite/ 2019-05-23 Iain Sandoe <iain@sandoe.co.uk> PR rtl-optimisation/64895 * gcc.target/i386/fuse-caller-save-rec.c: Remove XFAILs. * gcc.target/i386/fuse-caller-save.c: Likewise. * gcc.target/i386/fuse-caller-save-xmm.c: Adjust tests for PIC cases, remove XFAILs. From-SVN: r271544
Iain Sandoe committed -
* cp-tree.h (CP_AGGREGATE_TYPE_P): Fix whitespace. From-SVN: r271543
Jonathan Wakely committed -
From-SVN: r271542
Jonathan Wakely committed -
* init.c (std_placement_new_fn_p): Remove outdated TODO comment that was resolved by r254694. From-SVN: r271541
Jonathan Wakely committed -
... for r271463 "Fix PR90510, VEC_PERM -> BIT_INSERT folding". gcc/testsuite/ PR middle-end/90510 * brig.dg/test/gimple/packed.hsail: Adjust. From-SVN: r271540
Thomas Schwinge committed -
2019-05-23 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> * cse.c (cse_dump_path): s/dump_file/f. From-SVN: r271539
Prathamesh Kulkarni committed -
From-SVN: r271538
Jakub Jelinek committed -
There was a regression for gfortran.dg/fmt_en.f90 for cris-elf that on inspection was due to it having acquired a truncation call through the runtime. I updated that and the new tests that had "Fortran runtime error: required ftruncate or chsize support not present" messages in gfortran.log, ran past cris-elf and committed as obvious. See also <https://gcc.gnu.org/ml/gcc-patches/2008-05/msg00975.html> from which I copy-pasted most of this message. (Yep, 11 years ago.) gcc/testsuite: * gfortran.dg/dec_io_1.f90, gfortran.dg/dtio_1.f90, gfortran.dg/dtio_12.f90, gfortran.dg/fmt_en.f90, gfortran.dg/namelist_89.f90: Gate test on effective_target fd_truncate. From-SVN: r271536
Hans-Peter Nilsson committed -
PR c++/90462 reports an ICE with -fdiagnostics-format=json when attempting to serialize a malformed location to JSON. The compound location_t in question has meaningful "caret" and "start" locations, but has UNKNOWN_LOCATION for its "finish" location, leading to a NULL pointer dereference when attempting to build a JSON string for the filename. This patch bulletproofs the JSON output so that attempts to write a JSON object for a location with a NULL file will lead to an object with no "file" key, and attempts to write a compound location with UNKNOWN_LOCATION for its start or finish will lead to the corresponding JSON child object being omitted. This patch also adds a json::object::get member function, for self-testing the above. gcc/ChangeLog: PR c++/90462 * diagnostic-format-json.cc: Include "selftest.h". (json_from_expanded_location): Only add "file" key for non-NULL file strings. (json_from_location_range): Don't add "start" and "finish" children if they are UNKNOWN_LOCATION. (selftest::test_unknown_location): New selftest. (selftest::test_bad_endpoints): New selftest. (selftest::diagnostic_format_json_cc_tests): New function. * json.cc (json::object::get): New function. (selftest::test_object_get): New selftest. (selftest::json_cc_tests): Call it. * json.h (json::object::get): New decl. * selftest-run-tests.c (selftest::run_tests): Call selftest::diagnostic_format_json_cc_tests. * selftest.h (selftest::diagnostic_format_json_cc_tests): New decl. gcc/testsuite/ChangeLog: PR c++/90462 * g++.dg/pr90462.C: New test. From-SVN: r271535
David Malcolm committed -
From-SVN: r271534
GCC Administrator committed
-
- 22 May, 2019 6 commits
-
-
* g++.dg/cpp1y/udlit-char-template-neg.C: Expect the error on a different line. Check the column number too. From-SVN: r271530
Marek Polacek committed -
PR libstdc++/90557 * src/c++17/fs_path.cc (path::_List::operator=(const _List&)): Fix reversed arguments to uninitialized_copy_n. * testsuite/27_io/filesystem/path/assign/copy.cc: Check that source is unchanged by copy assignment. * testsuite/util/testsuite_fs.h (compare_paths): Use std::equal to compare path components. From-SVN: r271527
Jonathan Wakely committed -
2019-05-22 Kwok Cheung Yeung <kcy@codesourcery.com> Andrew Stubbs <amd@codesourcery.com> gcc/ * config.gcc (gcc_cv_initfini_array): Set for AMD GCN. * config/gcn/gcn-run.c (init_array_kernel, fini_array_kernel): New. (kernel): Rename to... (main_kernel): ... this. (load_image): Load _init_array and _fini_array kernels. (run): Add argument for kernel to run. (main): Run init_array_kernel before main_kernel, and fini_array_kernel after. * config/gcn/gcn.c (gcn_handle_amdgpu_hsa_kernel_attribute): Allow amdgpu_hsa_kernel attribute on functions. (gcn_disable_constructors): Delete. (TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR): Delete. * config/gcn/crt0.c (size_t): Define. (_init_array, _fini_array): New. (__preinit_array_start, __preinit_array_end, __init_array_start, __init_array_end, __fini_array_start, __fini_array_end): Declare weak references. Co-Authored-By: Andrew Stubbs <ams@codesourcery.com> From-SVN: r271526
Kwok Cheung Yeung committed -
2019-05-22 Andrew Stubbs <ams@codesourcery.com> gcc/ * config/gcn/gcn.c (gcn_trampoline_init): Call "sorry" on GCN5. From-SVN: r271525
Andrew Stubbs committed -
* gimplify.c (gimplify_cond_expr): Don't check TREE_ADDRESSABLE. The front end shouldn't produce a GENERIC COND_EXPR of TREE_ADDRESSABLE type. From-SVN: r271524
Jason Merrill committed -
Here initializing the argument from a TARGET_EXPR isn't an empty class copy even though the type is !TREE_ADDRESSABLE, so we should check simple_empty_class_p. * call.c (build_call_a): Use simple_empty_class_p. From-SVN: r271523
Jason Merrill committed
-