- 26 Sep, 2018 6 commits
-
-
2018-09-26 Jerome Lambourg <lambourg@adacore.com> gcc/ada/ * vxlink.adb: Kill a CodePeer warning. From-SVN: r264597
Jerome Lambourg committed -
2018-09-26 Paolo Carlini <paolo.carlini@oracle.com> PR c++/67656 * g++.dg/concepts/pr67656.C: New. From-SVN: r264596
Paolo Carlini committed -
* config/arm/arm.c (arm_reorg): Skip Thumb reorg pass for thunks. (arm32_output_mi_thunk): Deal with long calls. From-SVN: r264595
Eric Botcazou committed -
2018-09-26 Richard Biener <rguenther@suse.de> PR debug/87428 PR debug/87362 * tree-inline.c (expand_call_inline): When the location of the call is UNKNOWN_LOCATION use DECL_SOURCE_LOCATION or BUILTINS_LOCATION for the BLOCK_SOURCE_LOCATION of the inserted BLOCK to make inlined_function_outer_scope_p recognize it. * dwarf2out.c (add_call_src_coords_attributes): Do not add coords for reserved locations. From-SVN: r264594
Richard Biener committed -
Reviewed-on: https://go-review.googlesource.com/137535 From-SVN: r264593
Ian Lance Taylor committed -
From-SVN: r264592
GCC Administrator committed
-
- 25 Sep, 2018 34 commits
-
-
Some code is much neater if it uses set_attr_alternative than if it does everything by hand. Change some patterns to use this shorthand. * config/rs6000/rs6000.md (*movcc_internal1): Use set_attr_alternative. (*call_indirect_nonlocal_sysv<mode>): Ditto. (*call_value_indirect_nonlocal_sysv<mode>): Ditto. (*sibcall_nonlocal_sysv<mode>): Ditto. (*sibcall_value_nonlocal_sysv<mode>): Ditto. (<bd>_<mode>): Ditto. (<bd>tf_<mode>): Ditto. From-SVN: r264588
Segher Boessenkool committed -
A few of the rs6000 patterns use C code as output control string, where that code is just a "switch (which_alternative)" with all alternatives returning a constant string or just the result of a function call as template. Write such cases as just a list of templates, with the few pieces that are C code preceded by "*". * config/rs6000/altivec.md (*altivec_mov<mode>): Write the output control string as a list of templates instead of as C code. (*altivec_movti): Ditto. * config/rs6000/darwin.md (movdf_low_di): Ditto. From-SVN: r264587
Segher Boessenkool committed -
gcc/ * config/riscv/riscv.c (riscv_split_symbol): Mark auipc label as weak when target symbol is weak. gcc/testsuite/ * gcc.target/riscv/weak-1.c: New. From-SVN: r264586
Jim Wilson committed -
PR c/87387 * builtins.c (unterminated_array): Simplify. * expr.c (string_constant): Handle SSA_NAME. Add more exceptions where pointer arithmetic is safe. * gcc.dg/warn-stpcpy-no-nul.c: Drop unnecessary xfails. * gcc.dg/warn-stplen-no-nul.c: Likewise. From-SVN: r264585
Jeff Law committed -
The original AltiVec manuals had the immediate lane number in the splat instructions as a 5-bit number, but anything too big has no defined meaning, and gas will choke on it too. This patch disallows it in the instruction patterns as well as in the builtins. This solves PR86987. PR target/86987 * config/rs6000/altivec.md (altivec_vspltb): Use const_0_to_15_operand instead of u5bit_cint_operand. (*altivec_vspltb_internal): Ditto. (altivec_vspltb_direct): Ditto. (altivec_vsplth): Use const_0_to_7_operand instead of u5bit_cint_operand. (*altivec_vsplth_internal): Ditto. (altivec_vsplth_direct): Ditto. (altivec_vspltw): Use const_0_to_3_operand instead of u5bit_cint_operand. (*altivec_vspltw_internal): Ditto. (altivec_vspltw_direct): Ditto. (altivec_vspltsf): Ditto. (*altivec_vspltsf_internal): Ditto. * config/rs6000/rs6000.c (rs6000_expand_binop_builtin): Handle the various splats with the proper size immediate. Reorder the various cases by ascending size of immediate, and put all such together. From-SVN: r264584
Segher Boessenkool committed -
The testcase failed when the compiler used .loc view syntax, because it expected discriminators at the end of the .loc lines. for gcc/testsuite/ChangeLog * gnat.dg/dinst.adb: Adjust for locviews. From-SVN: r264583
Alexandre Oliva committed -
[testsuite] 2018-09-25 Will Schmidt <will_schmidt@vnet.ibm.com> * g++.dg/ext/altivec-6.C: Updated vec_splat() calls. * gcc.target/powerpc/fold-vec-splat-char.c: Remove invalid vec_splat calls from recently added tests. Update instruction counts. * gcc.target/powerpc/fold-vec-splat-floatdouble.c: Same. * gcc.target/powerpc/fold-vec-splat-int.c: Same. * gcc.target/powerpc/fold-vec-splat-longlong.c: Same. * gcc.target/powerpc/fold-vec-splat-pixel.c: Same. * gcc.target/powerpc/fold-vec-splat-short.c: Same. From-SVN: r264582
Will Schmidt committed -
PR c++/87425 * g++.dg/cpp2a/constexpr-virtual12.C: New test. From-SVN: r264581
Marek Polacek committed -
re PR c++/87398 (g++ ICE on valid code: tree check: expected record_type or union_type or qual_union_type, have array_type in cxx_eval_constant_expression, at cp/constexpr.c:4820) PR c++/87398 * constexpr.c (cxx_eval_constant_expression) <case OBJ_TYPE_REF>: Only look through COMPONENT_REFs with DECL_FIELD_IS_BASE FIELD_DECLs. * g++.dg/other/pr87398.C: New test. * g++.dg/cpp2a/constexpr-virtual10.C: New test. * g++.dg/cpp2a/constexpr-virtual11.C: New test. From-SVN: r264580
Jakub Jelinek committed -
2018-09-25 Martin Jambor <mjambor@suse.cz> PR testsuite/87339 * gcc.dg/warn-abs-1.c: Do not test _Float128. Remove dg-skip-if and float125 target. * gcc.target/i386/warn-abs-3.c: New test. From-SVN: r264579
Martin Jambor committed -
From-SVN: r264578
Uros Bizjak committed -
re PR c++/81246 (ICE on invalid C++ code (with a non-type template parameter having type 'float'): Segmentation fault) 2018-09-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/81246 * g++.dg/cpp0x/pr81246.C: New. From-SVN: r264577
Paolo Carlini committed -
In r263225 (d2e378182a12d68fe5caeffae681252662a2fe7b), I fixed condition_variable::wait_for to use std::chrono::steady_clock for the wait. Unfortunately, I failed to spot that the same fix is required for the wait_for variant that takes a predicate too. 2018-09-25 Mike Crowe <mac@mcrowe.com> * include/std/condition_variable (condition_variable::wait_for): Use steady clock in overload that uses a predicate. From-SVN: r264575
Mike Crowe committed -
If a std::variant can never get into valueless state then we don't need to do a runtime check for a valid alternative. PR libstdc++/87431 * include/std/variant (_Variant_storage<true, _Types...>::_M_valid): Avoid runtime test when all alternatives are scalars and so cannot throw during initialization. From-SVN: r264574
Jonathan Wakely committed -
2018-09-25 Richard Biener <rguenther@suse.de> PR debug/83941 * dwarf2out.c (add_AT_external_die_ref): Remove now redundant GC-ification. (maybe_create_die_with_external_ref): Do not create DW_TAG_imported_unit here. (add_abstract_origin_attribute): Handle external BLOCK refs. (dwarf2out_abstract_function): Simplify LTO case. (dwarf2out_early_finish): Create DW_TAG_imported_unit explicitely rather than using maybe_create_die_with_external_ref. From-SVN: r264573
Richard Biener committed -
In internal/bytealg correct a +build tag to never build indexbyte_generic.go for the gofrontend, where we always use indexbyte_native.go. For internal/cpu let the Makefile define CacheLineSize using goarch.sh, rather than trying to enumerate all the possibilities in cpu_ARCH.go files. In internal/poll call the C fcntl function rather than using SYS_FCNTL. Change mksysinfo.sh to ensure that F_GETPIPE_SZ is always defined, and check that in internal/poll. Reviewed-on: https://go-review.googlesource.com/137256 From-SVN: r264572
Ian Lance Taylor committed -
* config/i386/i386.md (frndintxf2_mask_pm): Remove. (frndintxf2_mask_pm_i387): Ditto. (nearbyintxf2): Rewrite expander pattern to match rintxf2. Enable for !flag_trapping_math. (nearbyint<mode>2): Enable x87 modes for !flag_trapping_math. Enable SSE modes for TARGET_SSE4_1 and expand them with round insn. Change operand 1 predicate to nonimmediate_operand. (attr "i387_cw"): Remove mask_pm. * config/i386/i386.h (enum ix86_stack_slot): Remove SLOT_CW_MASK_PM. (enum ix86_entity): Remove I387_MASK_PM. * config/i386/i386.c (ix86_i387_mode_needed): Do not handle I387_MASK_PM. (ix86_mode_needed): Ditto. (ix86_mode_after): Ditto. (ix86_mode_entry): Ditto. (ix86_mode_exit): Ditto. (emit_i387_cw_initialization): Do not handle I387_CW_MASK_PM. From-SVN: r264571
Uros Bizjak committed -
This permits TestScript to work when gccgo is not installed. Previous testing was using a previously installed gccgo, not the newly built one. This revealed that the testing of whether an internal package is permitted was incorrect for standard library packages, since the uninstalled gccgo can see internal packages in the uninstalled libgo. Fix the internal package tests. This permitted removing a couple of gccgo-specific changes in the testsuite. Reviewed-on: https://go-review.googlesource.com/137255 From-SVN: r264570
Ian Lance Taylor committed -
Compile pr82699-5.c and pr82699-6.c with -fno-pic to avoid FAIL: gcc.target/i386/pr82699-5.c (test for excess errors) Excess errors: cc1: sorry, unimplemented: -mfentry isn't supported for 32-bit in combination with -fpic FAIL: gcc.target/i386/pr82699-6.c (test for excess errors) Excess errors: cc1: error: -mnop-mcount is not implemented for -fPIC cc1: sorry, unimplemented: -mfentry isn't supported for 32-bit in combination with -fpic when running GCC testsuite with --target_board='unix{-fpic\ -m32,-fpic}'. PR target/82699 * gcc.target/i386/pr82699-5.c: Add -fno-pic for ia32. * gcc.target/i386/pr82699-6.c: Add -fno-pic. From-SVN: r264569
H.J. Lu committed -
* gfortran.dg/coarray_lock_7.f90: Adjust scan-tree-dump-times for ILP32. From-SVN: r264568
Jakub Jelinek committed -
vr-values.c (vr_values::vr_values): Initialize to_remove_edges and to_update_switch_stmts to vNULL instead of... * vr-values.c (vr_values::vr_values): Initialize to_remove_edges and to_update_switch_stmts to vNULL instead of calling create on them immediately. From-SVN: r264567
Jakub Jelinek committed -
2018-09-25 Richard Biener <rguenther@suse.de> PR tree-optimization/87402 * tree-ssa-sccvn.c (SSA_VISITED): Remove unused function. (visit_phi): Re-instantiate handling of supposed to be VARYING but non-VARYING backedge value. * gcc.dg/torture/pr87402.c: New testcase. From-SVN: r264566
Richard Biener committed -
We need to check pie_enabled target in PIC tests to support GCC where PIE is enabled by default when configured with --enable-default-pie. PR testsuite/70150 * gcc.dg/20020312-2.c (dg-additional-options): Set to "-no-pie" for pie_enabled target. * gcc.dg/uninit-19.c: Check pie_enabled for PIC. * gcc.target/i386/pr34256.c: Likewise. From-SVN: r264565
H.J. Lu committed -
2018-09-25 Richard Biener <rguenther@suse.de> PR debug/83941 * dwarf2out.c (struct sym_off_pair): New. (external_die_map): New global. (lookup_decl_die): When in LTO create DIEs lazily from the external_die_map. (lookup_block_die): New function, create DIEs lazily in LTO. (equate_block_to_die): New function. (dwarf2out_die_ref_for_decl): During WPA get the association from the external DIE map. (dwarf2out_register_external_die): Record mapping into the external DIE map. (maybe_create_die_with_external_ref): New function split out from DIE generation part of old dwarf2out_register_external_die. (add_abstract_origin_attribute): Do not return the DIE. When in LTO reference externals directly. (dwarf2out_abstract_function): When in LTO ignore calls for decls with external DIEs (already present abstract instances). (gen_call_site_die): Adjust. (add_high_low_attributes): Likewise. (gen_lexical_block_die): Likewise. (gen_inlined_subroutine_die): Likewie. (gen_block_die): Likewise. (dwarf2out_inline_entry): Likewise. (dwarf2out_early_finish): In LTRANS phase create DW_TAG_imported_unit DIEs. From-SVN: r264564
Richard Biener committed -
2018-09-25 Martin Liska <mliska@suse.cz> * ipa-fnsummary.c (estimate_node_size_and_time): Scale by two integers and not by a float value. From-SVN: r264563
Martin Liska committed -
2018-09-25 Martin Liska <mliska@suse.cz> PR fortran/87394 * dbgcnt.c (dbg_cnt_process_single_pair): Return false instead of NULL. * dumpfile.c (dump_enable_all): Remove extra parenthesis. * gcov-tool.c: Declare the function with ATTRIBUTE_NORETURN. * godump.c (go_format_type): Remove extra parenthesis. 2018-09-25 Martin Liska <mliska@suse.cz> PR fortran/87394 * decl.c (add_hidden_procptr_result): Simplify condition as we are in branch witch 'case1 || case2'. From-SVN: r264562
Martin Liska committed -
2018-09-25 Martin Liska <mliska@suse.cz> * alias.c (set_dest_equal_p): Remove unused function. * config/i386/i386.c (def_builtin_pure2): Likewise. * diagnostic-show-locus.c (class layout): Remove unused field. (layout::layout): Likewise here. * dump-context.h (class temp_dump_context): Likewise. * dwarf2out.c (add_AT_fde_ref): Remove unused function. (add_AT_loclistsptr): Likewise. (add_AT_offset): Likewise. (get_AT_hi_pc): Likewise. (is_comdat_die): Likewise. (type_is_enum): Likewise. (ceiling): Likewise. (add_AT_vms_delta): Likewise. (is_class_die): Likewise. * edit-context.c (class line_event): Remove unused field. * graphite-sese-to-poly.c (tree_int_to_gmp): Remove unused function. * ipa-cp.c (ipa_get_vr_lat): Likewise. * lra-constraints.c (ok_for_index_p_nonstrict): Likewise. (ok_for_base_p_nonstrict): Likewise. * tree-chrec.c (is_not_constant_evolution): Likewise. (chrec_fold_poly_cst): Likewise. * tree-if-conv.c (has_pred_critical_p): Likewise. * tree-ssa-coalesce.c (print_exprs): Likewise. * tree-ssa-pre.c (bitmap_set_contains_expr): Likewise. * tree-ssa-uninit.c (is_and_or_or_p): Likewise. * tree-vrp.c (value_ranges_intersect_p): Likewise. (value_range_nonnegative_p): Likewise. 2018-09-25 Martin Liska <mliska@suse.cz> * name-lookup.c (namespace_scope_ht_size): Remove unused function. * parser.c (cp_lexer_next_token_is_not_keyword): Likewise. 2018-09-25 Martin Liska <mliska@suse.cz> * trans.c (remove_suffix): Remove unused function. 2018-09-25 Martin Liska <mliska@suse.cz> * gofrontend/escape.cc (Gogo::analyze_escape): Remove usage of a parameter. (Gogo::assign_connectivity): Likewise. (class Escape_analysis_tag): Likewise. (Gogo::tag_function): Likewise. * gofrontend/expressions.cc (Call_expression::do_type): Likewise. * gofrontend/gogo.h (class Gogo): Likewise. * gofrontend/types.cc (class Call_multiple_result_type): Likewise. (Type::make_call_multiple_result_type): Likewise. * gofrontend/types.h (class Type): Likewise. * gofrontend/wb.cc (class Check_escape): Likewise. (Gogo::add_write_barriers): Likewise. From-SVN: r264561
Martin Liska committed -
2018-09-25 Martin Liska <mliska@suse.cz> * filter-rtags-warnings.py: New file. From-SVN: r264560
Martin Liska committed -
2018-09-25 Martin Liska <mliska@suse.cz> * config/powerpcspe/powerpcspe.c (rs6000_output_function_epilogue): Do not handle "GNU Pascal". * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Likewise. * config/sparc/sparc.c (sparc_pass_by_reference): Remove Pascal from documentation. Likewise. * dbxout.c (dbxout_range_type): Likewise. * doc/cpp.texi: Likewise. * doc/extend.texi: Likewise. * doc/frontends.texi: Likewise. * doc/invoke.texi: Remove Pascal entry. * tree.def (CLEANUP_POINT_EXPR): Likewise. * doc/rtl.texi (MODE_FUNCTION): Remove not used entry. 2018-09-25 Martin Liska <mliska@suse.cz> * c-common.c (c_common_truthvalue_conversion): Remove Pascal from documentation. From-SVN: r264559
Martin Liska committed -
2018-09-25 Martin Liska <mliska@suse.cz> PR middle-end/86078 * doc/invoke.texi: Document all parameters and remove default of the parameters. 2018-09-25 Martin Liska <mliska@suse.cz> PR middle-end/86078 * check-params-in-docs.py: New file. From-SVN: r264558
Martin Liska committed -
"r264537: Change EQ_ATTR_ALT to support up to 64 alternatives" changed the format of EQ_ATTR_ALT from ii to ww. This broke the bootstrap on 32-bit systems, because the formula for rtx_code_size assumed that only certain codes contain HOST_WIDE_INTs. This did not surface on 64-bit systems, because rtunion is 8 bytes anyway, but on 32-bit systems it's only 4 bytes. This resulted in out-of-bounds writes and memory corruptions in genattrtab. gcc/ChangeLog: 2018-09-25 Ilya Leoshkevich <iii@linux.ibm.com> PR bootstrap/87417 * rtl.c (rtx_code_size): Take into account that EQ_ATTR_ALT contains HOST_WIDE_INTs when computing its size. From-SVN: r264556
Ilya Leoshkevich committed -
gcc/ PR target/87391 * config/riscv/riscv.h (STACK_BOUNDARY): Test riscv_abi == ABI_ILP32E not TARGET_RVE. (ABI_STACK_BOUNDARY, MAX_ARGS_IN_REGISTERS): Likewise. From-SVN: r264555
Jim Wilson committed -
From-SVN: r264552
GCC Administrator committed -
2018-09-24 Andrew Pinski <apinski@marvell.com> * config/aarch64/aarch64.c (aarch_macro_fusion_pair_p): Don't access prev before checking it for NULLness in the AARCH64_FUSE_CMP_BRANCH case. From-SVN: r264548
Andrew Pinski committed
-