- May 24, 2019
-
-
Matthew Malcomson authored
Commit r271514 missed changing the type of two functions in aarch64-protos.h. The function definitions had been updated to use uint64_t while the function declarations had been missed. They were missed since I only tested the patch on aarch64 where `unsigned long` is the same as `uint64_t`. This patch updates these declarations in aarch64-protos.h. Tested by building an aarch64 cross-compiler on arm-none-linux-gnu (so that `unsigned long` and `uint64_t` are different and would give error messages), and bootstrapping on aarch64-none-linux-gnu. Also manually tested command line options to see that -march=armv8-a+typo prints out the expected flags while using the new feature flags does not complain about missing flags. gcc/ChangeLog: 2019-05-24 Matthew Malcomson <matthew.malcomson@arm.com> PR target/90588 * common/config/aarch64/aarch64-common.c (aarch64_rewrite_selected_cpu): Change local temporary variable type from unsigned long to uint64_t. * config/aarch64/aarch64-protos.h (aarch64_parse_extension, aarch64_get_extension_string_for_isa_flags): Change declaration to match new definition by replacing unsigned long with uint64_t. From-SVN: r271599
-
Jakub Jelinek authored
PR tree-optimization/90106 PR testsuite/90517 * gcc.dg/cdce1.c: Don't scan-assembler, instead -fdump-tree-optimized and scan-tree-dump for tail call. * gcc.dg/cdce2.c: Likewise. From-SVN: r271598
-
Jakub Jelinek authored
PR target/90568 * config/i386/x86-tune-sched.c (ix86_macro_funsion_pair_p): Call gen_attr_type just once instead of 4-7 times. Formatting fixes. Handle stack_protect_test_<mode> codegen similarly to corresponding sub instruction. From-SVN: r271596
-
Richard Biener authored
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: r271595
-
Iain Sandoe authored
From-SVN: r271592
-
Iain Sandoe authored
Some of the i386.exp tests fail on Darwin (and at least one passes incorrectly on Linux) because their scan-asm match strings are too general. In some cases the strings also match instances in the .file and size directives or in comment output. This patch makes the match strings more specific. 2019-05-24 Iain Sandoe <iain@sandoe.co.uk> * gcc.target/i386/pconfig-1.c: Scan for the string in the generated code, not in comments or miscellaneous directives. Adjust expected count. * gcc.target/i386/pr18041-1.c: Likewise. * gcc.target/i386/pr18041-2.c: Likewise. * gcc.target/i386/wbinvd-1.c: Likewise. * gcc.target/i386/wbnoinvd-1.c: Likewise. * gcc.target/i386/pr66819-3.c: Specifically, check that there is no call to "bar". * gcc.target/i386/pr66819-4.c: Likewise. * gcc.target/i386/pr82662.c * gcc.target/i386/ptwrite2.c: Make the checks look for the specific destination register, don't try the m32 test on m64 targets. From-SVN: r271591
-
Iain Sandoe authored
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 authored
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
-
GCC Administrator authored
From-SVN: r271588
-
- May 23, 2019
-
-
Iain Sandoe authored
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
-
Bill Schmidt authored
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
-
Uros Bizjak authored
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
-
Bill Schmidt authored
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
-
Mark Eggleston authored
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
-
Jan Hubicka authored
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
-
Bill Schmidt authored
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
-
Martin Liska authored
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
-
Jonathan Wakely authored
PR c++/90592 * doc/extend.texi (Function Names): Add missing word. From-SVN: r271554
-
Richard Biener authored
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
-
Jakub Jelinek authored
PR target/90568 * config/i386/i386.md (stack_protect_test_<mode>): Use sub instead of xor. From-SVN: r271552
-
Eric Botcazou authored
From-SVN: r271549
-
Martin Liska authored
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
-
Eric Botcazou authored
From-SVN: r271545
-
Iain Sandoe authored
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
-
Jonathan Wakely authored
* cp-tree.h (CP_AGGREGATE_TYPE_P): Fix whitespace. From-SVN: r271543
-
Jonathan Wakely authored
From-SVN: r271542
-
Jonathan Wakely authored
* init.c (std_placement_new_fn_p): Remove outdated TODO comment that was resolved by r254694. From-SVN: r271541
-
Thomas Schwinge authored
... 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
-
Prathamesh Kulkarni authored
2019-05-23 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> * cse.c (cse_dump_path): s/dump_file/f. From-SVN: r271539
-
Jakub Jelinek authored
From-SVN: r271538
-
Hans-Peter Nilsson authored
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
-
David Malcolm authored
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
-
GCC Administrator authored
From-SVN: r271534
-
- May 22, 2019
-
-
Marek Polacek authored
* g++.dg/cpp1y/udlit-char-template-neg.C: Expect the error on a different line. Check the column number too. From-SVN: r271530
-
Kwok Cheung Yeung authored
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
-
Andrew Stubbs authored
2019-05-22 Andrew Stubbs <ams@codesourcery.com> gcc/ * config/gcn/gcn.c (gcn_trampoline_init): Call "sorry" on GCN5. From-SVN: r271525
-
Jason Merrill authored
* 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 authored
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 authored
Yet another tweak that would have fixed this bug: we should treat INIT_EXPR and MODIFY_EXPR differently for determining whether this is a simple empty class copy, since a TARGET_EXPR on the RHS is direct initialization if INIT_EXPR but copy if MODIFY_EXPR. * cp-gimplify.c (simple_empty_class_p): Also true for MODIFY_EXPR. From-SVN: r271521
-
Uros Bizjak authored
vect-signbitf.c (dg-final): Improve scan-assembler-not string to avoid false matching on 32bit targets. * gcc.target/i386/vect-signbitf.c (dg-final): Improve scan-assembler-not string to avoid false matching on 32bit targets. From-SVN: r271520
-