aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2017-07-23re PR target/80569 (i686: "shrx" instruction generated in 16-bit mode)Uros Bizjak4-8/+34
PR target/80569 * config/i386/i386.c (ix86_option_override_internal): Disable BMI, BMI2 and TBM instructions for -m16. testsuite/ChangeLog: PR target/80569 * gcc.target/i386/pr80569.c: New test. From-SVN: r250459
2017-07-23Daily bump.GCC Administrator1-1/+1
From-SVN: r250457
2017-07-22Daily bump.GCC Administrator1-1/+1
From-SVN: r250451
2017-07-22rs6000-c.c (altivec_overloaded_builtins): Add ALTIVEC_BUILTIN_VMULESW...Carl Love7-8/+77
gcc/ChangeLog: 2017-07-21 Carl Love <cel@us.ibm.com> * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add ALTIVEC_BUILTIN_VMULESW, ALTIVEC_BUILTIN_VMULEUW, ALTIVEC_BUILTIN_VMULOSW, ALTIVEC_BUILTIN_VMULOUW entries. * config/rs6000/rs6000.c (rs6000_gimple_fold_builtin, builtin_function_type): Add ALTIVEC_BUILTIN_* case statements. * config/rs6000/altivec.md (MVULEUW, VMULESW, VMULOUW, VMULOSW): New enum "unspec" values. (altivec_vmuleuw, altivec_vmulesw, altivec_vmulouw, altivec_vmulosw): New patterns. * config/rs6000/rs6000-builtin.def (VMLEUW, VMULESW, VMULOUW, VMULOSW): Add definitions. gcc/testsuite/ChangeLog: 2017-07-21 Carl Love <cel@us.ibm.com> * gcc.target/powerpc/builtins-2.c (vmulosh, vmulouh, vmulesh, vmuleuh): Fix scan-assembler-times should check for word not half word instructions. From-SVN: r250450
2017-07-21Add RDMA support to falkor port.Jim Wilson8-15/+46
gcc/ * config/aarch64/aarch64-cores.def (falkor): Add AARCH64_FL_RDMA. (qdf24xx): Likewise. * config/aarch64/aarch64-options-extensions.def (rdma); New. * config/aarch64/aarch64.h (AARCH64_FL_RDMA): New. (AARCH64_FL_V8_1): Renumber. (AARCH64_FL_FOR_ARCH8_1): Add AARCH64_FL_RDMA. (AARCH64_ISA_RDMA): Use AARCH64_FL_RDMA. * config/aarch64/arm_neon.h: Use +rdma instead of arch=armv8.1-a. * doc/invoke.texi (AArch64 Options): Mention +rmda in -march docs. Add rdma to feature modifiers list. gcc/testsuite/ * lib/target-supports.exp (add_options_for_arm_v8_1a_neon): Delete redundant -march option. (check_effective_target_arm_v8_1a_neon_ok_nocache): Try armv8-a+rdma in addition to armv8.1-a. From-SVN: r250444
2017-07-21syscall: call f?statfs64 on GNU/LinuxIan Lance Taylor1-1/+1
We unconditionally set _FILE_OFFSET_BITS to 64 in configure.ac, so we should unconditionally call the statfs64 and fstatfs64 functions. These functions should be available on all versions of GNU/Linux since 2.6. On 64-bit systems they are aliased to statfs/fstatfs, and on 32-bit systems they use the 64-bit data structures. Fixes golang/go#20922 Reviewed-on: https://go-review.googlesource.com/50635 From-SVN: r250443
2017-07-21re PR middle-end/56727 (Recursive call goes through the PLT unnecessarily)Yury Gribov5-0/+82
2017-07-21 Yury Gribov <tetra2005@gmail.com> PR middle-end/56727 * ipa-visibility (function_and_variable_visibility): Convert recursive PLT call to direct call if appropriate. * gcc.dg/pr56727-1.c: New test. * gcc.dg/pr56727-2.c: New test. From-SVN: r250442
2017-07-21search.c (lookup_conversion_operator): Return overloads.Nathan Sidwell2-69/+44
* search.c (lookup_conversion_operator): Return overloads. (lookup_fnfields_idx_nolazy): Absorb into ... (lookup_fnfields_slot_nolaxy): ... here. (lookup_fnfields_1): Absorb into ... (lookup_fnfields_slot): ... here. From-SVN: r250440
2017-07-21runtime: don't use runtime_lock in __go_get_backtrace_stateIan Lance Taylor1-1/+1
If getSiginfo does not know how to determine the PC, it will call runtime_callers. That can happen in a thread that was started by non-Go code, in which case the TLS variable g will not be set, in which case runtime_lock will crash. Avoid the problem by using atomic operations for the lock. This is OK since creating a backtrace state is fast and never blocks. The test case is TestCgoExternalThreadSIGPROF in the runtime package on a system that getSiginfo doesn't handle specially. Updates golang/go#20931 Reviewed-on: https://go-review.googlesource.com/50650 From-SVN: r250439
2017-07-21Remove special CDtor METHOD_VEC slots.Nathan Sidwell5-97/+57
* cp-tree.h (CLASSTYPE_CONSTRUCTOR_SLOT, CLASSTYPE_DESTRUCTOR_SLOT): Delete. (CLASSTYPE_CONSTRUCTORS): Use lookup_fnfields_slot_nolazy. (CLASSTYPE_DESTRUCTOR): Likewise. * class (add_method): Don't use special cdtor slots. * search.c (lookup_fnfields_idx_nolazy): Likewise. (look_for_overrides_here): Use lookup_fnfields_slot. * semantics (classtype_has_nothrow_assign_or_copy_p): Likewise. From-SVN: r250437
2017-07-21runtime: handle PPC/PPC64 GNU/Linux in getSiginfoIan Lance Taylor1-1/+1
Updates golang/go#20931 Reviewed-on: https://go-review.googlesource.com/50631 From-SVN: r250436
2017-07-21call.c (add_candidates): Move decls to initialization.Nathan Sidwell2-20/+14
* call.c (add_candidates): Move decls to initialization. Don't use !!. From-SVN: r250434
2017-07-21runtime: allocate more stack space in CgoCallbackGC testIan Lance Taylor1-1/+1
Allocate enough stack space so that the test will work on a system that does not support split stacks. This test is actually not very meaningful for gccgo at present, but it doesn't hurt to keep running it. Updates golang/go#20931 Reviewed-on: https://go-review.googlesource.com/50630 From-SVN: r250433
2017-07-21Now completeting the mmintrin.h intrinsic headers for PowerPC bySteven Munroe41-0/+1910
adding the DG tests. 2017-07-21 Steven Munroe <munroesj@gcc.gnu.org> * gcc.target/powerpc/mmx-check.h: New file. * gcc.target/powerpc/mmx-packs.c: New file. * gcc.target/powerpc/mmx-packssdw-1.c: New file. * gcc.target/powerpc/mmx-packsswb-1.c: New file. * gcc.target/powerpc/mmx-packuswb-1.c: New file. * gcc.target/powerpc/mmx-paddb-1.c: New file. * gcc.target/powerpc/mmx-paddd-1.c: New file. * gcc.target/powerpc/mmx-paddsb-1.c: New file. * gcc.target/powerpc/mmx-paddsw-1.c: New file. * gcc.target/powerpc/mmx-paddusb-1.c: New file. * gcc.target/powerpc/mmx-paddusw-1.c: New file. * gcc.target/powerpc/mmx-paddw-1.c: New file. * gcc.target/powerpc/mmx-pcmpeqb-1.c: New file. * gcc.target/powerpc/mmx-pcmpeqd-1.c: New file. * gcc.target/powerpc/mmx-pcmpeqw-1.c: New file. * gcc.target/powerpc/mmx-pcmpgtb-1.c: New file. * gcc.target/powerpc/mmx-pcmpgtd-1.c: New file. * gcc.target/powerpc/mmx-pcmpgtw-1.c: New file. * gcc.target/powerpc/mmx-pmaddwd-1.c: New file. * gcc.target/powerpc/mmx-pmulhw-1.c: New file. * gcc.target/powerpc/mmx-pmullw-1.c: New file. * gcc.target/powerpc/mmx-pslld-1.c: New file. * gcc.target/powerpc/mmx-psllw-1.c: New file. * gcc.target/powerpc/mmx-psrad-1.c: New file. * gcc.target/powerpc/mmx-psraw-1.c: New file. * gcc.target/powerpc/mmx-psrld-1.c: New file. * gcc.target/powerpc/mmx-psrlw-1.c: New file. * gcc.target/powerpc/mmx-psubb-2.c: New file. * gcc.target/powerpc/mmx-psubd-2.c: New file. * gcc.target/powerpc/mmx-psubsb-1.c: New file. * gcc.target/powerpc/mmx-psubsw-1.c: New file. * gcc.target/powerpc/mmx-psubusb-1.c: New file. * gcc.target/powerpc/mmx-psubusw-1.c: New file. * gcc.target/powerpc/mmx-psubw-2.c: New file. * gcc.target/powerpc/mmx-punpckhbw-1.c: New file. * gcc.target/powerpc/mmx-punpckhdq-1.c: New file. * gcc.target/powerpc/mmx-punpckhwd-1.c: New file. * gcc.target/powerpc/mmx-punpcklbw-1.c: New file. * gcc.target/powerpc/mmx-punpckldq-1.c: New file. * gcc.target/powerpc/mmx-punpcklwd-1.c: New file. From-SVN: r250432
2017-07-21tree-ssa-sccvn.c (vn_nary_op_eq): Check BIT_INSERT_EXPR's operand 1 to see ↵Andrew Pinski3-1/+24
if the types precision matches. 2017-07-21 Andrew Pinski <apinski@cavium.com> * tree-ssa-sccvn.c (vn_nary_op_eq): Check BIT_INSERT_EXPR's operand 1 to see if the types precision matches. * fold-const.c (operand_equal_p): Likewise. From-SVN: r250431
2017-07-21re PR tree-optimization/81303 (410.bwaves regression caused by r249919)Richard Biener2-19/+25
2017-07-21 Richard Biener <rguenther@suse.de> PR tree-optimization/81303 * tree-vect-data-refs.c (vect_get_peeling_costs_all_drs): Pass in datarefs vector. Allow NULL dr0 for no peeling cost estimate. (vect_peeling_hash_get_lowest_cost): Adjust. (vect_enhance_data_refs_alignment): Likewise. Use vect_get_peeling_costs_all_drs to compute the penalty for no peeling to match up costs. From-SVN: r250424
2017-07-21re PR tree-optimization/81500 (ICE with -O3 in process_use, at ↵Richard Biener4-4/+26
tree-vect-stmts.c:506) 2017-06-21 Richard Biener <rguenther@suse.de> PR tree-optimization/81500 * tree-vect-loop.c (vect_is_simple_reduction): Properly fail if we didn't identify a reduction path. * gcc.dg/torture/pr81500.c: New testcase. From-SVN: r250423
2017-07-21Add missing edge probabilities in nvptx_goacc_reduction_initTom de Vries2-0/+9
2017-07-21 Tom de Vries <tom@codesourcery.com> Cesar Philippidis <cesar@codesourcery.com> PR gcov-profile/81442 * config/nvptx/nvptx.c (nvptx_goacc_reduction_init): Add missing edge probabilities. Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com> From-SVN: r250422
2017-07-21Add nvptx_override_options_after_changeTom de Vries2-0/+22
2017-07-21 Tom de Vries <tom@codesourcery.com> PR lto/81430 * config/nvptx/nvptx.c (nvptx_override_options_after_change): New function. (TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): Define to nvptx_override_options_after_change. From-SVN: r250421
2017-07-21dwarf2out.c (output_file_names): Avoid double testing for dwarf_version >= 5.Ulrich Drepper2-1/+6
gcc/ * dwarf2out.c (output_file_names): Avoid double testing for dwarf_version >= 5. From-SVN: r250420
2017-07-21invoke.texi (AVR Built-in Functions): Re-layout section.Georg-Johann Lay2-39/+42
gcc/ * doc/invoke.texi (AVR Built-in Functions): Re-layout section. From-SVN: r250419
2017-07-21cfgcleanup.c (flow_find_cross_jump): Do not crossjump across hot/cold regions.Jan Hubicka2-18/+22
* cfgcleanup.c (flow_find_cross_jump): Do not crossjump across hot/cold regions. (try_crossjump_to_edge): Do not punt on partitioned functions. From-SVN: r250418
2017-07-21bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges): Put all ↵Jan Hubicka4-38/+51
BBs reachable only via paths crossing cold region to cold region. * bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges): Put all BBs reachable only via paths crossing cold region to cold region. * cfgrtl.c (find_bbs_reachable_by_hot_paths): New function. From-SVN: r250417
2017-07-21re PR tree-optimization/81303 (410.bwaves regression caused by r249919)Richard Biener2-2/+10
2016-07-21 Richard Biener <rguenther@suse.de> PR tree-optimization/81303 * tree-vect-loop.c (vect_estimate_min_profitable_iters): Take into account prologue and epilogue iterations when raising min_profitable_iters to sth at least covering one vector iteration. From-SVN: r250416
2017-07-21arm.c (arm_test_cpu_arch_dat): Check for overlap.Tamar Christina2-1/+25
2017-07-21 Tamar Christina <tamar.christina@arm.com> * config/arm/arm.c (arm_test_cpu_arch_dat): Check for overlap. From-SVN: r250415
2017-07-21Remove TYPE_METHODS.Nathan Sidwell25-459/+351
gcc/ Remove TYPE_METHODS. * tree.h (TYPE_METHODS): Delete. * dwarf2out.c (gen_member_die): Member fns are on TYPE_FIELDS. * dbxout.c (dbxout_type_fields): Ignore FUNCTION_DECLs. (dbxout_type_methods): Scan TYPE_FIELDS. (dbxout_type): Don't check TYPE_METHODS here. * function.c (use_register_for_decl): Always ignore register for class types when not optimizing. * ipa-devirt.c (odr_types_equivalent_p): Delete TYPE_METHODS scan. * tree.c (free_lang_data_in_type): Stitch out member functions and templates from TYPE_FIELDS. (build_distinct_type_copy, verify_type_variant, verify_type): Member fns are on TYPE_FIELDS. * tree-dump.c (dequeue_and_dump): No TYPE_METHODS. * tree-pretty-print.c (dump_generic_node): Likewise. gcc/cp/ Remove TYPE_METHODS. * class.c (maybe_warn_about_overly_private_class, finish_struct_methods, one_inheriting_sig, count_fields, add_fields_to_record_type, check_field_decls, check_methods, clone_function_decl, set_method_tm_attributes, finalize_literal_type_property, check_bases_and_members, create_vtable_ptr, determine_key_method, unreverse_member_declarations, finish_struct, add_vcall_offset_vtbl_entries_1): Member fns are on TYPE_FIELDS. * decl.c (fixup_anonymous_aggr): Likewise. * decl2.c (reset_type_linkage_2): Likewise. * method.c (after_nsdmi_defaulted_late_checks, lazily_declare_fn): Likewise. * optimize.c (maybe_thunk_body, maybe_clone_body): Likewise. * pt.c (instantiate_class_template_1, tsubst_expr, do_type_instantiation, instantiate_pending_templates): Likewise. * search.c (lookup_field_1): Likewise. * semantics.c (finish_member_declaration, finish_omp_declare_simd_methods): Likewise. gcc/c-family/ Remove TYPE_METHODS. * c-ada-spec.c (is_tagged_type, has_nontrivial_methods, dump_ada_template, print_ada_methods, print_ada_declaration): Member fns are on TYPE_FIELDS. gcc/objc/ Remove TYPE_METHODS. * objc-runtime-shared-support.c (build_ivar_list_initializer): Don't presume first item is a FIELD_DECL. gcc/testsuite/ * g++.dg/ext/anon-struct6.C: Adjust diag. * g++.old-deja/g++.other/anon4.C: Adjust diag. libcc1/ Remove TYPE_METHODS. * libcp1plugin.cc (plugin_build_decl): Member fns are on TYPE_FIELDS. From-SVN: r250413
2017-07-21Daily bump.GCC Administrator1-1/+1
From-SVN: r250412
2017-07-20compiler: add explicit convert in Type_guard_expression::do_get_backendIan Lance Taylor2-2/+5
The current recipe in Type_guard_expression for creating a Bexpression performs a type conversion at the Type level, but doesn't invoke Backend::convert_expression to capture the conversion for the back end. Add code to create a BE type conversion operation. Reviewed-on: https://go-review.googlesource.com/50373 From-SVN: r250400
2017-07-20re PR target/80846 (auto-vectorized AVX2 horizontal sum should narrow to ↵Jakub Jelinek7-22/+155
128b right away, to be more efficient for Ryzen and Intel) PR target/80846 * config/i386/i386.c (ix86_expand_vector_init_general): Handle V2TImode and V4TImode. (ix86_expand_vector_extract): Likewise. * config/i386/sse.md (VMOVE): Enable V4TImode even for just TARGET_AVX512F, instead of only for TARGET_AVX512BW. (ssescalarmode): Handle V4TImode and V2TImode. (VEC_EXTRACT_MODE): Add V4TImode and V2TImode. (*vec_extractv2ti, *vec_extractv4ti): New insns. (VEXTRACTI128_MODE): New mode iterator. (splitter for *vec_extractv?ti first element): New. (VEC_INIT_MODE): New mode iterator. (vec_init<mode>): Consolidate 3 expanders into one using VEC_INIT_MODE mode iterator. * gcc.target/i386/avx-pr80846.c: New test. * gcc.target/i386/avx2-pr80846.c: New test. * gcc.target/i386/avx512f-pr80846.c: New test. From-SVN: r250397
2017-07-20lra-assigns.c: fix pseudo_compare_funcAlexander Monakov2-4/+8
* lra-assigns.c (pseudo_compare_func): Fix comparison step based on non_spilled_static_chain_regno_p. From-SVN: r250395
2017-07-20gimple-ssa-store-merging.c: fix sort_by_bitposAlexander Monakov2-4/+8
* gimple-ssa-store-merging.c (sort_by_bitpos): Return 0 on equal bitpos. From-SVN: r250394
2017-07-20bb-reorder.c (connect_traces): Allow copying of blocks within single partition.Jan Hubicka2-4/+8
* bb-reorder.c (connect_traces): Allow copying of blocks within single partition. From-SVN: r250390
2017-07-20Minor tweaksEric Botcazou1-3/+3
From-SVN: r250386
2017-07-20gimple.h (gimple_phi_result): Add gphi * overload.Richard Biener3-19/+55
2017-07-20 Richard Biener <rguenther@suse.de> * gimple.h (gimple_phi_result): Add gphi * overload. (gimple_phi_result_ptr): Likewise. (gimple_phi_arg): Likewise. Adjust index assert to only allow actual argument accesses rather than all slots available by capacity. (gimple_phi_arg_def): Add gphi * overload. * tree-phinodes.c (make_phi_node): Initialize only actual arguments. (resize_phi_node): Clear memory not covered by old node, do not initialize excess argument slots. (reserve_phi_args_for_new_edge): Initialize new argument slot completely. From-SVN: r250385
2017-07-20re PR tree-optimization/81388 (Incorrect code generation with -O1)Bin Cheng5-28/+120
PR tree-optimization/81388 Revert r238585: 2016-07-21 Bin Cheng <bin.cheng@arm.com> * tree-ssa-loop-niter.c (number_of_iterations_lt_to_ne): Clean up by removing computation of may_be_zero. gcc/testsuite PR tree-optimization/81388 * gcc.dg/tree-ssa/pr81388-1.c: New test. * gcc.dg/tree-ssa/pr81388-2.c: New test. From-SVN: r250384
2017-07-20re PR middle-end/81030 (ICE on valid code at -O1 (only) on x86_64-linux-gnu: ↵Jan Hubicka4-3/+52
verify_flow_info failed) PR middle-end/81030 * cfgbuild.c (find_many_sub_basic_blocks): Update REG_BR_PROB note when gimple level profile disagrees with what RTL expander did. * gcc.dg/pr81030.c: New test. From-SVN: r250383
2017-07-20re PR tree-optimization/61171 (vectorization fails for a reduction in ↵Richard Biener9-99/+292
presence of subtraction) 2017-07-20 Richard Biener <rguenther@suse.de> PR tree-optimization/61171 * tree-vectorizer.h (slp_instance): Add reduc_phis member. (vect_analyze_stmt): Add slp instance parameter. (vectorizable_reduction): Likewise. * tree-vect-loop.c (vect_analyze_loop_operations): Adjust. (vect_is_simple_reduction): Deal with chains not detected as SLP reduction chain, specifically not properly associated chains containing a mix of plus/minus. (get_reduction_op): Remove. (get_initial_defs_for_reduction): Simplify, pass in whether this is a reduction chain, pass in the SLP node for the PHIs. (vect_create_epilog_for_reduction): Get the SLP instance as arg and adjust. (vectorizable_reduction): Get the SLP instance as arg. During analysis remember the SLP node with the PHIs in the instance. Simplify getting at the vectorized reduction PHIs. * tree-vect-slp.c (vect_slp_analyze_node_operations): Pass through SLP instance. (vect_slp_analyze_operations): Likewise. * tree-vect-stms.c (vect_analyze_stmt): Likewise. (vect_transform_stmt): Likewise. * g++.dg/vect/pr61171.cc: New testcase. * gfortran.dg/vect/pr61171.f: Likewise. * gcc.dg/vect/vect-reduc-11.c: Likewise. From-SVN: r250382
2017-07-20slp-43.c: Increase loop count to enable vectorization with V64QImode.Richard Biener3-6/+18
2017-07-20 Richard Biener <rguenther@suse.de> * gcc.dg/vect/slp-43.c: Increase loop count to enable vectorization with V64QImode. * gcc.dg/vect/slp-45.c: Likewise. From-SVN: r250380
2017-07-20Fix phi arg location in find_implicit_erroneous_behaviorTom de Vries2-1/+9
2017-07-20 Tom de Vries <tom@codesourcery.com> PR tree-optimization/81489 * gimple-ssa-isolate-paths.c (find_implicit_erroneous_behavior): Move read of phi arg location to before loop that modifies phi. From-SVN: r250378
2017-07-20match.pd (((m1 >/</>=/<= m2) * d -> (m1 >/</>=/<= m2) ? d : 0): New pattern.Naveen H.S4-0/+27
gcc * match.pd (((m1 >/</>=/<= m2) * d -> (m1 >/</>=/<= m2) ? d : 0): New pattern. gcc/testsuite * gcc.dg/tree-ssa/vrp116.c: New Test. From-SVN: r250377
2017-07-20Daily bump.GCC Administrator1-1/+1
From-SVN: r250376
2017-07-19re PR regression/81331 (missed Eh delivery in partitioned function)Jan Hubicka2-1/+7
PR middle-end/81331 * except.c (execute): Fix ordering issue. From-SVN: r250370
2017-07-19combine: Fix for PR81423Segher Boessenkool2-12/+9
We here have an AND of a SUBREG of an LSHIFTRT. If that SUBREG is paradoxical, the extraction we form is the length of the size of the inner mode, which includes some bits that should not be in the result. Just give up in that case. PR rtl-optimization/81423 * combine.c (make_compound_operation_int): Don't try to optimize the AND of a SUBREG of an LSHIFTRT if that SUBREG is paradoxical. From-SVN: r250365
2017-07-19cpu-builtin-1.c: Change test to use #ifdef __BUILTIN_CPU_SUPPORTS to see if...Michael Meissner2-1/+18
2017-07-19 Michael Meissner <meissner@linux.vnet.ibm.com> * gcc.target/powerpc/cpu-builtin-1.c: Change test to use #ifdef __BUILTIN_CPU_SUPPORTS to see if the GLIBC is new enough that __builtin_cpu_is and __builtin_cpu_supports are supported. From-SVN: r250364
2017-07-19simplify-rtx: The truncation of an IOR can have all bits set (PR81423)Segher Boessenkool2-0/+15
... if it is an IOR with a constant with all bits set in the mode that is truncated to, for example. Handle that case. PR rtl-optimization/81423 * simplify-rtx.c (simplify_truncation): Handle truncating an IOR with a constant that is -1 in the truncated to mode. From-SVN: r250363
2017-07-19Fix up plafform testes in check headers.Steven Munroe3-2/+11
Fix up plafform testes in check headers. After a resent GCC change the previously submitted BMI/BMI2 intrinsic test started to fail with a warning/error. [gcc/testsuite] 2017-07-19 Steven Munroe <munroesj@gcc.gnu.org> * gcc.target/powerpc/bmi-check.h (main): Skip unless __BUILTIN_CPU_SUPPORTS__ defined. * gcc.target/powerpc/bmi2-check.h (main): Skip unless __BUILTIN_CPU_SUPPORTS__ defined. From-SVN: r250362
2017-07-19predict.c (propagate_unlikely_bbs_forward): Break out from ...Jan Hubicka3-0/+21
* predict.c (propagate_unlikely_bbs_forward): Break out from ... (determine_unlikely_bbs): ... here. * predict.h (propagate_unlikely_bbs_forward): Declare. * cfgexpand.c (pass_expand::execute): Use it. * bb-reorder.c (sanitize_hot_paths): Do not consider known to be unlikely edges. (find_rarely_executed_basic_blocks_and_crossing_edges): Use propagate_unlikely_bbs_forward. From-SVN: r250360
2017-07-19predict.c (propagate_unlikely_bbs_forward): Break out from ...Jan Hubicka2-37/+60
* predict.c (propagate_unlikely_bbs_forward): Break out from ... (determine_unlikely_bbs): ... here. * predict.h (propagate_unlikely_bbs_forward): Declare. * cfgexpand.c (pass_expand::execute): Use it. * bb-reorder.c (sanitize_hot_paths): Do not consider known to be unlikely edges. (find_rarely_executed_basic_blocks_and_crossing_edges): Use propagate_unlikely_bbs_forward. From-SVN: r250359
2017-07-19re PR regression/81331 (missed Eh delivery in partitioned function)Jan Hubicka2-0/+62
PR middle-end/81331 * except.c (maybe_add_nop_after_section_switch): New function. (execute): Use it. From-SVN: r250358
2017-07-19ada-tree.h (TYPE_OBJECT_RECORD_TYPE, [...]): Use TYPE_MIN_VALUE_RAW instead ↵Jakub Jelinek2-4/+13
of TYPE_MINVAL. * gcc-interface/ada-tree.h (TYPE_OBJECT_RECORD_TYPE, TYPE_GCC_MIN_VALUE): Use TYPE_MIN_VALUE_RAW instead of TYPE_MINVAL. (TYPE_GCC_MAX_VALUE): Use TYPE_MAX_VALUE_RAW instead of TYPE_MAXVAL. From-SVN: r250355