- 02 Jun, 2017 9 commits
-
-
* name-lookup.h (cp_binding_level): Lose namespaces field. * name-lookup.c (add_decl_to_level): Chain namespaces on the names list. (suggest_alternatives_for): Adjust for namespace list. Do breadth-first search. * decl2.c (collect_source_refs): Namespaces are on the regulr list. (collect_ada_namespace): Likewise. * g++.dg/pr45330.C: Adjust. Check breadth-firstness. From-SVN: r248821
Nathan Sidwell committed -
2017-06-02 Richard Biener <rguenther@suse.de> * tree-vect-loop.c (vect_analyze_loop_operations): Not relevant PHIs are ok. * tree-vect-stmts.c (process_use): Do not mark backedge defs for inductions as relevant. From-SVN: r248820
Richard Biener committed -
2017-06-02 Richard Biener <rguenther@suse.de> * tree-vect-loop.c (get_initial_def_for_induction): Inline into ... (vectorizable_induction): ... this. Remove dead code. From-SVN: r248819
Richard Biener committed -
infer its value from the first parameter instead. (expand_builtin) <BUILT_IN_ALLOCA>: Adjust call to above. From-SVN: r248818
Eric Botcazou committed -
2017-06-02 Richard Biener <rguenther@suse.de> Markus Eisenmann <meisenmann.lba@fh-salzburg.ac.at> PR libstdc++/80721 * libsupc++/eh_alloc.cc (pool::free): Keep list properly sorted and add missing freelist item merging cases. Co-Authored-By: Markus Eisenmann <meisenmann.lba@fh-salzburg.ac.at> From-SVN: r248816
Richard Biener committed -
re PR rtl-optimization/80903 (ICE: internal consistency failure (error: invalid rtl sharing found in the insn)) PR rtl-optimization/80903 * loop-doloop.c (add_test): Unshare sequence. * gcc.dg/pr80903.c: New test. From-SVN: r248815
Jakub Jelinek committed -
PR fortran/80918 * openmp.c (resolve_omp_clauses): Fix a typo. * gfortran.dg/gomp/pr80918.f90: New test. From-SVN: r248812
Jakub Jelinek committed -
gcc: 2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de> * doc/invoke.texi: Document the -Wsizeof-pointer-div warning. gcc/c-family: 2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de> * c.opt (Wsizeof-pointer-div): New warning option. gcc/c: 2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de> * c-parser.c (c_parser_binary_expression): Implement the -Wsizeof_pointer_div warning. (c_parser_postfix_expression): Allow SIZEOF_EXPR as expr.original_code from a parenthesized expression. (c_parser_expr_list): Use c_last_sizeof_loc. * c-tree.h (c_last_sizeof_loc): New external. * c-typeck.c (c_last_sizeof_loc): New variable. (c_expr_sizeof_expr, c_expr_sizeof_type): Assign c_last_sizeof_loc. gcc/cp: 2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de> * typeck.c (cp_build_binary_op): Implement the -Wsizeof_pointer_div warning. gcc/testsuite: 2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de> * c-c++-common/Wsizeof-pointer-div.c: New test. * gcc.dg/Wsizeof-pointer-memaccess1.c: Add test cases with parens. * gcc.dg/torture/Wsizeof-pointer-memaccess1.c: Likewise. * gcc.target/i386/sse-init-v4hi-1.c: Fix test case. * gcc.target/i386/sse-init-v4sf-1.c: Likewise. * gcc.target/i386/sse-set-ps-1.c: Likewise. * gcc.target/i386/sse2-init-v16qi-1.c: Likewise. * gcc.target/i386/sse2-init-v2di-1.c: Likewise. * gcc.target/i386/sse2-init-v4si-1.c: Likewise. * gcc.target/i386/sse2-init-v8hi-1.c: Likewise. * gcc.target/i386/sse2-set-epi32-1.c: Likewise. * gcc.target/i386/sse2-set-epi64x-1.c: Likewise. * gcc.target/i386/sse4_1-init-v16qi-1.c: Likewise. * gcc.target/i386/sse4_1-init-v2di-1.c: Likewise. * gcc.target/i386/sse4_1-init-v4sf-1.c: Likewise. * gcc.target/i386/sse4_1-init-v4si-1.c: Likewise. * gcc.target/i386/sse4_1-set-epi32-1.c: Likewise. * gcc.target/i386/sse4_1-set-epi64x-1.c: Likewise. * gcc.target/i386/sse4_1-set-ps-1.c: Likewise. * libgomp.c/pr39591-2.c: Likewise. * libgomp.c/pr39591-3.c: Likewise. From-SVN: r248811
Bernd Edlinger committed -
From-SVN: r248810
GCC Administrator committed
-
- 01 Jun, 2017 26 commits
-
-
[gcc/testsuite] 2017-05-26 Will Schmidt <will_schmidt@vnet.ibm.com> * gcc.target/powerpc/fold-vec-logical-ors-longlong.c: Update the target to power8-vector. From-SVN: r248805
Will Schmidt committed -
From-SVN: r248802
Joseph Myers committed -
gcc/testsuite/ChangeLog: * lib/gcc-dg.exp: Ensure GCC_COLORS is unset. From-SVN: r248800
David Malcolm committed -
2017-06-01 Bernd Edlinger <bernd.edlinger@hotmail.de> * config/i386/i386.c (x86_64_ms_sysv_extra_clobbered_registers): Make static. (xlogue_layout::get_stack_space_used, xlogue_layout::s_instances, xlogue_layout::get_instance, logue_layout::xlogue_layout, sp_valid_at, fp_valid_at, choose_basereg): Formatting. (xlogue_layout::get_stub_rtx): Make static. (xlogue_layout::get_stub_name): Avoid const-cast, make static. (xlogue_layout::compute_stub_managed_regs): Rename to... (xlogue_layout::count_stub_managed_regs): ...this. (xlogue_layout::is_stub_managed_reg): New function. (xlogue_layout::m_stub_names): Rename to... (xlogue_layout::s_stub_names): ...this, make static. (xlogue_layout::STUB_INDEX_OFFSET, xlogue_layout::MIN_REGS, xlogue_layout::MAX_REGS, xlogue_layout::MAX_EXTRA_REGS, xlogue_layout::VARIANT_COUNT, xlogue_layout::STUB_NAME_MAX_LEN, xlogue_layout::s_stub_names): Instantiate statics. (stub_managed_regs): Remove. (ix86_save_reg): Use xlogue_layout::compute_stub_managed_regs. (disable_call_ms2sysv_xlogues): Rename to... (warn_once_call_ms2sysv_xlogues): ...this, and warn only once. (ix86_initial_elimination_offset, ix86_expand_call): Fix call_ms2sysv warning logic. (ix86_static_chain): Make sure that ix86_static_chain_on_stack can't change after reload_completed. (ix86_can_use_return_insn_p): Use the ix86_frame data structure directly. (ix86_expand_prologue): Likewise. (ix86_expand_epilogue): Likewise. (ix86_expand_split_stack_prologue): Likewise. (ix86_compute_frame_layout): Remove frame parameter ... (TARGET_COMPUTE_FRAME_LAYOUT): ... and export it as a target hook. (ix86_finalize_stack_realign_flags): Call ix86_compute_frame_layout only if necessary. (ix86_init_machine_status): Don't set use_fast_prologue_epilogue_nregs. (ix86_frame): Move from here ... * config/i386/i386.h (ix86_frame): ... to here. (machine_function): Remove use_fast_prologue_epilogue_nregs, cache the complete ix86_frame data structure instead. Remove some_ld_name. From-SVN: r248798
Bernd Edlinger committed -
In GNAT, we materialize renamings that cannot be described in standard DWARF as synthetic variables that describe how to fetch the renamed object. Look for "___XR" in gcc/ada/exp_dbug.ads for more details about this convention. In order to have a location for these variables in the debug info (GDB requires it not to discard the variable) but also to avoid allocating runtime space for them, we make these variable hold a DECL_VALUE_EXPR tree. However, since GCC 7, the DWARF back-end no longer generates a DW_AT_location attribute for those. This patch is an attempt to restore this attribute. gcc/ * dwarf2out.c (dwarf2out_late_global_decl): Add locations for symbols that hold a DECL_VALUE_EXPR. gcc/testsuite/ * debug12.adb, debug12.ads: New testcase. From-SVN: r248792
Pierre-Marie de Rodat committed -
(GLIBCXX_CROSSCONFIG): Handle *-solaris* like *-linux* etc. Remove *-solaris* section. * configure: Regenerate. From-SVN: r248791
Rainer Orth committed -
2017-06-01 Martin Jambor <mjambor@suse.cz> PR tree-optimization/80898 * tree-sra.c (process_subtree_disqualification): Removed. (disqualify_candidate): Do not acll process_subtree_disqualification. (subtree_mark_written_and_enqueue): New function. (propagate_all_subaccesses): Set grp_write of LHS subtree if the RHS has been disqualified and re-queue LHS if necessary. Apart from that, ignore disqualified RHS. testsuite/ * gcc.dg/tree-ssa/pr80898.c: New test. * gcc.dg/tree-ssa/pr80898-2.c: Likewise. From-SVN: r248790
Martin Jambor committed -
We used to load the return address slot some time in advance. This helped on older machines to resolve the data dependencies in time. However, it is pointless on out of order CPUs. Disabled with that patch. gcc/ChangeLog: 2017-06-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/s390.c (s390_emit_epilogue): Disable early return address fetch for z10 or later. From-SVN: r248789
Andreas Krebbel committed -
PR c++/80812 cp/ PR c++/80812 * method.c (constructible_expr): Strip array types before calling build_value_init. libstdc++/ PR c++/80812 * testsuite/20_util/is_constructible/80812.cc: New. From-SVN: r248788
Ville Voutilainen committed -
PR ada/80921 * configure.ac (default_gnatlib_target): Remove bogus condition. (have_getipinfo): Tweak. * configure: Regenerate. From-SVN: r248785
Eric Botcazou committed -
/cp 2017-06-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/80896 * cvt.c (convert_to_void): Possibly call maybe_warn_nodiscard for case INDIRECT_REF too in the main switch. /testsuite 2017-06-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/80896 * g++.dg/cpp1z/nodiscard5.C: New. From-SVN: r248784
Paolo Carlini committed -
The tst_movb pattern is missing guarding when spitting. gcc/ 2017-06-01 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.md (tst_movb): Add guard when splitting. testsuite/ 2017-06-01 Claudiu Zissulescu <claziss@synopsys.com> * gcc.target/arc/pr9001195952.c: New test. From-SVN: r248783
Claudiu Zissulescu committed -
arc_can_eliminate is using arc_frmae_pointer_required() which is wrong as the frame_pointer_needed can be set on different conditions. Fix it by calling arc_frame_pointer_needed(). gcc/ 2017-06-01 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.c (arc_can_eliminate): Test against arc_frame_pointer_needed. From-SVN: r248782
Claudiu Zissulescu committed -
If the stack pointer is needed, emit a special barrier that will prevent the scheduler from moving stores to the frame before the stack adjustment. For example: [snip] mov_s fp,sp ; frame pointer is set here [snip] st r1,[fp,-24] ; frame pointer is used here [snip] sub_s sp,sp,0x20 ; stack pointer adjusted So we can easily see that any interrupt between the `st` and `sub` instruction will lead to faulty code as the interrupt routine will use a faulty sp register, and, potentially, overwriting the value stored by 'st' instruction. Thus, adding a scheduler barrier will force the compiler to emit the `sub` instruction before the store one. 2017-06-01 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.c (arc_expand_prologue): Emit a special barrier to prevent store reordering. * config/arc/arc.md (UNSPEC_ARC_STKTIE): Define. (type): Add block type. (stack_tie): Define special instruction to be used in expand_prologue. From-SVN: r248781
Claudiu Zissulescu committed -
gcc/ 2017-06-01 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.md (commutative_binary_comparison): Remove 'I' constraint. It is not valid for the pattern. (noncommutative_binary_comparison): Likewise. From-SVN: r248780
Claudiu Zissulescu committed -
2017-06-01 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/simdext.md (movv2hi_insn): Change predicate to avoid scaled addresses. From-SVN: r248779
Claudiu Zissulescu committed -
gcc/ 2018-06-01 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.c (arc_conditional_register_usage): Allow r30 to be used by the reg-alloc. From-SVN: r248778
Claudiu Zissulescu committed -
gcc/ 2017-06-01 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.md (mulsi3): Avoid use of hard registers before reg-alloc when having mul64 or mul32x16 instructions. (mulsidi3): Likewise. (umulsidi3): Likewise. (mulsi32x16): New pattern. (mulsi64): Likewise. (mulsidi64): Likewise. (umulsidi64): Likewise. (MUL32x16_REG): Define. (mul64_600): Use MUL32x16_REG. (mac64_600): Likewise. (umul64_600): Likewise. (umac64_600): Likewise. From-SVN: r248777
Claudiu Zissulescu committed -
gcc/ 2017-06-01 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.md (mulsi3_700): Make it commutative. From-SVN: r248776
Claudiu Zissulescu committed -
2017-06-01 Tom de Vries <tom@codesourcery.com> * c-c++-common/pr43395.c: Add dg-require-effective-target label_values. * gcc.c-torture/compile/asmgoto-1.c: Same. * gcc.dg/20000707-1.c: Same. * gcc.dg/pr38700.c: Same. * gcc.dg/pr70169.c: Same. * gcc.dg/pr80112.c: Same. * gcc.dg/torture/pr51071-2.c: Same. * gcc.dg/torture/pr51071.c: Same. * gcc.dg/tree-ssa/alias-34.c: Same. From-SVN: r248775
Tom de Vries committed -
gcc/ChangeLog: * config/sparc/sparc.md (*zero_extendsidi2_insn_sp64): Set insn type for movstouw. (*sign_extendsidi2_insn): Likewise for movstosw. From-SVN: r248774
Jose E. Marchesi committed -
In Ada, the Character type is supposed to be unsigned. However, depending on the sign of C char types, GNAT can materialize it as a signed type for code generation purposes. When this is the case, GNAT also attach a debug type to it so it is represented as an unsigned base type in the debug information. This change adapts record variant parts processing in the DWARF back-end so that when the debug type of discriminant is unsigned while discriminant values are signed themselves, we output unsigned discriminant values in DWARF. gcc/ * dwarf2out.c (get_discr_value): Call the get_debug_type hook on the type of the input discriminant value. Convert the discriminant value of signedness vary. gcc/testsuite/ * gnat.dg/debug11.adb: New testcase. From-SVN: r248773
Pierre-Marie de Rodat committed -
* c.opt (Wcatch-value): New shortcut for Wcatch-value=1. (Wcatch-value=1): Enable by -Wall. * doc/invoke.texi (-Wcatch-value): Document new shortcut. Add to -Wall section. From-SVN: r248772
Volker Reichelt committed -
2017-06-01 Richard Biener <rguenther@suse.de> PR middle-end/66313 * fold-const.c (fold_plusminus_mult_expr): If the factored factor may be zero use a wrapping type for the inner operation. * tree-tailcall.c (independent_of_stmt_p): Pass in to_move bitmap and handle moved defs. (process_assignment): Properly guard the unary op case. Return a tri-state indicating that moving the stmt before the call may allow to continue. Pass through to_move. (find_tail_calls): Handle moving unrelated defs before the call. * c-c++-common/ubsan/pr66313.c: New testcase. * gcc.dg/tree-ssa/loop-15.c: Adjust. From-SVN: r248771
Richard Biener committed -
From-SVN: r248770
GCC Administrator committed -
when compiling --with-cpu=power6. 2017-05-31 Steven Munroe <munroesj@gcc.gnu.org> * gcc.target/powerpc/bmi2-pdep32-1.c: Add -mcpu=power7 to dg-options. Change dg-require-effective-target powerpc_vsx_ok to vsx_hw. Add dg-skip-if directive to disable this test if -mcpu overridden. * gcc.target/powerpc/bmi2-pdep64-1.c: Likewise. * gcc.target/powerpc/bmi2-pext32-1.c: Likewise. * gcc.target/powerpc/bmi2-pext64-1.c: Likewise. * gcc.target/powerpc/bmi2-pext64-1a.c: Add -mcpu=power7 to dg-option. Add dg-skip-if directive to disable this test for darwin. Add dg-skip-if directive to disable this test if -mcpu overridden. From-SVN: r248766
Steven Munroe committed
-
- 31 May, 2017 5 commits
-
-
Fix lfstack code to work with sparc64 GNU/Linux address map. Force alignment of epollevent. To make this work reliably, pass GOARCH explicitly to mkrsysinfo.sh. Patch by Vladimir Mezentsev. Reviewed-on: https://go-review.googlesource.com/44494 From-SVN: r248765
Ian Lance Taylor committed -
PR target/80618 * config/rs6000/vector.md (*vector_uneq<mode>): Write the nor in the splitter result in the canonical way. From-SVN: r248764
Segher Boessenkool committed -
The canonical RTL for "nor" is (and (not ()) (not ())), and that is indeed what we use in boolccv2df3_internal1. So, the splitter for *vector_uneq<mode> should use that form, not (not (ior () ())), which does not match any pattern. PR target/80618 * config/rs6000/rs6000.md (*vector_uneq<mode>): Write the nor in the splitter result in the canonical way. From-SVN: r248763
Segher Boessenkool committed -
* config/i386/i386.md (*zero_extendsidi2): Enable alternative (?r, *Yj) also for 32bit target. Update insn attributes. (zero-extendsidi2 splitter): Allow all registers for operand 1. From-SVN: r248757
Uros Bizjak committed -
(_mm_maskz_max_sd, _mm_mask_max_ss, _mm_maskz_max_ss) (_mm_mask_min_sd, _mm_maskz_min_sd, _mm_mask_min_ss) (_mm_maskz_min_ss): New intrinsics. testsuite/ChangeLog: * gcc.target/i386/avx512f-vmaxsd-1.c (_mm_mask_max_sd) (_mm_maskz_max_sd): Test new intrinsics. * gcc.target/i386/avx512f-vmaxsd-2.c (_mm_mask_max_sd) (_mm_maskz_max_sd): Test new intrinsics. * gcc.target/i386/avx512f-vmaxss-1.c (_mm_mask_max_ss) (_mm_maskz_max_ss): Test new intrinsics. * gcc.target/i386/avx512f-vmaxss-2.c (_mm_mask_max_ss) (_mm_maskz_max_ss): Test new intrinsics. * gcc.target/i386/avx512f-vminsd-1.c (_mm_mask_min_sd) (_mm_maskz_min_sd): Test new intrinsics. * gcc.target/i386/avx512f-vminsd-2.c (_mm_mask_min_sd) (_mm_maskz_min_sd): Test new intrinsics. * gcc.target/i386/avx512f-vminss-1.c (_mm_mask_min_ss) (_mm_maskz_min_ss): Test new intrinsics. * gcc.target/i386/avx512f-vminss-2.c (_mm_mask_min_ss) (_mm_maskz_min_ss): Test new intrinsics. From-SVN: r248756
Sebastian Peryt committed
-