- 19 Jul, 2017 7 commits
-
-
PR tree-optimization/81346 * fold-const.h (fold_div_compare, range_check_type): Declare. * fold-const.c (range_check_type): New function. (build_range_check): Use range_check_type. (fold_div_compare): No longer static, rewritten into a match.pd helper function. (fold_comparison): Don't call fold_div_compare here. * match.pd (X / C1 op C2): New optimization using fold_div_compare as helper function. * gcc.dg/tree-ssa/pr81346-1.c: New test. * gcc.dg/tree-ssa/pr81346-2.c: New test. * gcc.dg/tree-ssa/pr81346-3.c: New test. * gcc.dg/tree-ssa/pr81346-4.c: New test. * gcc.target/i386/umod-3.c: Hide comparison against 1 from the compiler to avoid X / C1 op C2 optimization to trigger. From-SVN: r250338
Jakub Jelinek committed -
gcc/ * tree.h (TYPE_MINVAL, TYPE_MAXVAL): Rename to ... (TYPE_MIN_VALUE_RAW, TYPE_MAX_VALUE_RAW): ... these. * tree.c (find_decls_types_r, verify_type): Use TYPE_{MIN,MAX}_VALUE_RAW. * lto-streamer-out.c (DFS::DFS_write_tree_body): Likewise. (hash_tree): Likewise. * tree-streamer-in.c (lto_input_ts_type_non_common_tree_pointers): Likewise. * tree-streamer-out.c (write_ts_type_non_common_tree_pointers): Likewise. gcc/cp/ * cp-tree.h (PACK_EXPANSION_PARAMETER_PACKS, PACK_EXPANSION_EXTRA_ARGS): Use TYPE_{MIN,MAX}_VALUE_RAW. gcc/lto/ * lto.c (mentions_vars_p_type): Use TYPE_{MIN,MAX}_VALUE_RAW. (compare_tree_sccs_1, lto_fixup_prevailing_decls): Likewise. gcc/objc/ * objc-act.h (CLASS_NST_METHODS, CLASS_CLS_METHODS): Use TYPE_{MIN,MAX}_VALUE_RAW. From-SVN: r250337
Nathan Sidwell committed -
2017-07-19 Martin Liska <mliska@suse.cz> PR sanitizer/63361 * c-c++-common/ubsan/float-cast-overflow-1.c: Add either -ffloat-store or -mieee for targets that need it. From-SVN: r250336
Martin Liska committed -
2017-07-18 Tom de Vries <tom@codesourcery.com> PR middle-end/81464 * omp-expand.c (expand_omp_for_static_chunk): Handle equal-argument loop exit phi. * gfortran.dg/pr81464.f90: New test. From-SVN: r250335
Tom de Vries committed -
From-SVN: r250334
Yury Gribov committed -
* testsuite/27_io/basic_filebuf/sgetn/char/81395.cc: Add dg-require. From-SVN: r250333
Jonathan Wakely committed -
From-SVN: r250332
GCC Administrator committed
-
- 18 Jul, 2017 23 commits
-
-
PR libstdc++/81395 * include/bits/fstream.tcc (basic_filebuf::xsgetn): Don't set buffer pointers for write mode after reading. * testsuite/27_io/basic_filebuf/sgetn/char/81395.cc: New. From-SVN: r250328
Jonathan Wakely committed -
In Func_expression::do_get_backend when creating the backend representation for a closure, create a backend type conversion to account for potential differences between the closure struct type (where the number of fields is dependent on the number of values referenced in the closure) and the generic function descriptor type (struct with single function pointer field). Reviewed-on: https://go-review.googlesource.com/49255 From-SVN: r250327
Ian Lance Taylor committed -
re PR go/81451 (missing futex check - libgo/runtime/thread-linux.c:12:0 futex.h:13:12: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘long’) PR go/81451 runtime: inline runtime_osinit We had two identical copies of runtime_osinit. They set runtime_ncpu, a variable that is no longer used. Removing that leaves us with two lines. Inline those two lines in the two places the function was called. This fixes GCC PR 81451. Reviewed-on: https://go-review.googlesource.com/48862 From-SVN: r250326
Ian Lance Taylor committed -
The code in Named_type::do_get_backend was not passing the correct flag value for circular function types to Backend::circular_pointer_type (it was always setting this flag to false). Pass a true value if the type being converted is a function type. Reviewed-on: https://go-review.googlesource.com/49330 From-SVN: r250325
Ian Lance Taylor committed -
PR go/81324 sysinfo.c: ignore ptrace_peeksiginfo_args from <linux/ptrace.h> With some versions of glibc and GNU/Linux ptrace_pseeksiginfo_args is defined in both <sys/ptrace.h> and <linux/ptrace.h>. We don't actually care about the struct, so use a #define to avoid a redefinition error. This fixes https://gcc.gnu.org/PR81324. Reviewed-on: https://go-review.googlesource.com/49290 From-SVN: r250324
Ian Lance Taylor committed -
/: * MAINTAINERS: Update my email address. From-SVN: r250321
Trevor Saunders committed -
2017-07-18 François Dumont <fdumont@gcc.gnu.org> * include/bits/stl_list.h (struct _List_node_header): New. (_List_impl()): Fix noexcept qualification. (_List_impl(_List_impl&&)): New, default. (_List_base()): Default. (_List_base(_List_base&&)): Default. (_List_base::_M_move_nodes): Adapt to use _List_node_header._M_move_nodes. (_List_base::_M_init): Likewise. (list<>()): Default. (list<>(list&&)): Default. (list<>::_M_move_assign(list&&, true_type)): Use _M_move_nodes. (__distance(_List_const_iterator<>, _List_const_iterator<>, input_iterator_tag)): Adapt. * testsuite/23_containers/list/allocator/default_init.cc: New. From-SVN: r250320
François Dumont committed -
PR target/81471 * config/i386/i386.md (rorx_immediate_operand): New mode attribute. (*bmi2_rorx<mode>3_1): Use rorx_immediate_operand as operand 2 predicate. (*bmi2_rorxsi3_1_zext): Use const_0_to_31_operand as operand 2 predicate. (ror,rol -> rorx splitters): Use const_int_operand as operand 2 predicate. testsuite/ChangeLog: PR target/81471 * gcc.target/i386/pr81471.c: New test. From-SVN: r250315
Uros Bizjak committed -
2017-07-17 Yury Gribov <tetra2005@gmail.com> * mklog: Fix extraction of changed file name. From-SVN: r250314
Yury Gribov committed -
2017-06-18 Richard Biener <rguenther@suse.de> PR tree-optimization/81410 * tree-vect-stmts.c (vectorizable_load): Properly adjust for the gap in the ! slp_perm SLP case after each group. * gcc.dg/vect/pr81410.c: New testcase. From-SVN: r250312
Richard Biener committed -
PR middle-end/81463 * cfgloopmanip.c (scale_loop_profile): Watch out for zero frequency again. From-SVN: r250311
Jan Hubicka committed -
PR middle-end/81462 * predict.c (set_even_probabilities): Cleanup; do not affect probabilities that are already known. (combine_predictions_for_bb): Call even when count is set. * g++.dg/torture/pr81462.C: New testcase. From-SVN: r250310
Jan Hubicka committed -
gcc/ * tree-parloops.c (try_transform_to_exit_first_loop_alt): Use TYPE_MAX_VALUE. gcc/c-family/ * c-warn.c (warn_for_memset): Use TYPE_{MIN,MAX}_VALUE. gcc/c/ * c-parser.c (c_parser_array_notation): Use TYPE_{MIN,MAX}_VALUE. gcc/cp/ * cp-array-notation.c (build_array_notation_ref): Use TYPE_{MIN,MAX}_VALUE. gcc/fortran/ * trans.c (gfc_build_array_ref): Use TYPE_MAX_VALUE. From-SVN: r250309
Nathan Sidwell committed -
The P variable was deleted back in Nov 2015 (svn rev 231062), but its expansion was missed. Delete those now too. From-SVN: r250307
Mike Frysinger committed -
* class.c (classtype_has_move_assign_or_move_ctor): Declare. (add_implicitly_declared_members): Use it. (type_has_move_constructor, type_has_move_assign): Merge into ... (classtype_has_move_assign_or_move_ctor): ... this new function. * cp-tree.h (type_has_move_constructor, type_has_move_assign): Delete. From-SVN: r250305
Nathan Sidwell committed -
PR target/81408 * tree-ssa-loop-niter.c (number_of_iterations_exit): Dump missed optimization for loop niter analysis. gcc/testsuite * g++.dg/tree-ssa/pr81408.C: New. * gcc.dg/tree-ssa/pr19210-1.c: Check dump message rather than warning. From-SVN: r250304
Bin Cheng committed -
gcc/ PR target/81473 * config/avr/avr.c (avr_optimize_casesi): Don't use INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX. From-SVN: r250301
Georg-Johann Lay committed -
npeel was erroneously overwritten by vect_peeling_hash_get_lowest_cost although the corresponding dataref is not used afterwards. It should be safe to get rid of the npeel parameter since we use the returned peeling_info's npeel anyway. Also removed the body_cost_vec parameter which is not used elsewhere. gcc/ChangeLog: 2017-07-18 Robin Dapp <rdapp@linux.vnet.ibm.com> * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Remove body_cost_vec from _vect_peel_extended_info. (vect_peeling_hash_get_lowest_cost): Do not set body_cost_vec. (vect_peeling_hash_choose_best_peeling): Remove body_cost_vec and npeel. From-SVN: r250300
Robin Dapp committed -
From-SVN: r250299
Bin Cheng committed -
2017-07-18 Richard Biener <rguenther@suse.de> PR tree-optimization/80620 PR tree-optimization/81403 * tree-ssa-pre.c (phi_translate_1): Clear range and points-to info when re-using a VN table entry. * gcc.dg/torture/pr80620.c: New testcase. * gcc.dg/torture/pr81403.c: Likewise. From-SVN: r250297
Richard Biener committed -
2017-06-18 Richard Biener <rguenther@suse.de> PR tree-optimization/81418 * tree-vect-loop.c (vectorizable_reduction): Properly compute vectype_in. Verify that with lane-reducing reduction operations we have a single def-use cycle. * gcc.dg/torture/pr81418.c: New testcase. From-SVN: r250296
Richard Biener committed -
gcc/ChangeLog: 2017-07-17 Carl Love <cel@us.ibm.com> Revert commit r249424 2017-06-20 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. (vec_widen_umult_even_v4si, vec_widen_smult_even_v4si, vec_widen_umult_odd_v4si, vec_widen_smult_odd_v4si, 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-17 Carl Love <cel@us.ibm.com> Revert commit r249572 2017-06-22 Carl Love <cel@us.ibm.com> test case changes for commit 249424 * gcc.target/powerpc/builtins-2.c (vmulosh, vmulouh, vmulesh, vmuleuh): Fix scan-assembler-times should check for word not half word instructions. From-SVN: r250295
Carl Love committed -
From-SVN: r250294
GCC Administrator committed
-
- 17 Jul, 2017 10 commits
-
-
* config/alpha/alpha.c: Include predict.h. From-SVN: r250290
Uros Bizjak committed -
2017-07-17 Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR tree-optimization/81162 * gcc.dg/pr81162.c: Move this to... * gcc.dg/ubsan/pr81162.c: ...here. From-SVN: r250284
Bill Schmidt committed -
parser.c (cp_parser_decl_specifier_seq): Add fix-it hints for friend outside class and obsolete auto as... * parser.c (cp_parser_decl_specifier_seq): Add fix-it hints for friend outside class and obsolete auto as storage-class-specifier. * g++.dg/diagnostic/friend1.C: New test. * g++.dg/cpp0x/auto1.C: Add check for fix-it hint. From-SVN: r250282
Volker Reichelt committed -
* class.c (maybe_warn_about_overly_private_class): Ignore public copy ctors. * g++.dg/warn/ctor-dtor-privacy-3.C: New. From-SVN: r250281
Nathan Sidwell committed -
* class.c (type_has_user_declared_move_constructor, type_has_user_declared_move_assign): Combine into ... (classtype_has_user_move_assign_or_move_ctor_p): ... this new function. * cp-tree.h (type_has_user_declared_move_constructor, type_has_user_declared_move_assign): Combine into ... (classtype_has_user_move_assign_or_move_ctor_p): ... this. Declare. * method.c (maybe_explain_implicit_delete): Use it. (lazily_declare_fn): Use it. * tree.c (type_has_nontrivial_copy_init): Use it. From-SVN: r250280
Nathan Sidwell committed -
2017-07-17 Bernd Edlinger <bernd.edlinger@hotmail.de> * lib/gcc-dg.exp: Increase expect's match buffer size. From-SVN: r250279
Bernd Edlinger committed -
2017-07-17 Yury Gribov <tetra2005@gmail.com> gcc/ * tree-vrp.c (compare_assert_loc): Fix comparison function to return predictable results. From-SVN: r250278
Yury Gribov committed -
Emitting subregs in the expand will result in broken code due to LRA handling of them. Issue observed while turning on mlra and mexpand-adddi options using dejagnu test suite. Deprecate this option. gcc/ 2017-04-26 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.md (adddi3): Remove support for mexpand-adddi option. (subdi3): Likewise. * config/arc/arc.opt (mexpand-adddi): Deprecate it. * doc/invoke.texi (mexpand-adddi): Update text. From-SVN: r250276
Claudiu Zissulescu committed -
Emmitting COND_EXEC rtxes during expand does introduces errors due to LRA handling of them. Issue discovered while running dejagnu test suit with mlra option on. gcc/ 2017-07-17 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.md (clzsi2): Expand to an arc_clzsi2 instruction that also clobbers the CC register. The old expand code is moved to ... (*arc_clzsi2): ... here. (ctzsi2): Expand to an arc_ctzsi2 instruction that also clobbers the CC register. The old expand code is moved to ... (arc_ctzsi2): ... here. From-SVN: r250275
Claudiu Zissulescu committed -
Enable indexed loads only for elf target, as the linux ones need more testing. gcc/ 2017-02-28 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.opt (mindexed-loads): Use initial value TARGET_INDEXED_LOADS_DEFAULT. (mauto-modify-reg): Use initial value TARGET_AUTO_MODIFY_REG_DEFAULT. * config/arc/elf.h (TARGET_INDEXED_LOADS_DEFAULT): Define. (TARGET_AUTO_MODIFY_REG_DEFAULT): Likewise. * config/arc/linux.h (TARGET_INDEXED_LOADS_DEFAULT): Define. (TARGET_AUTO_MODIFY_REG_DEFAULT): Likewise. From-SVN: r250274
Claudiu Zissulescu committed
-