1. 11 Apr, 2018 16 commits
  2. 10 Apr, 2018 24 commits
    • re PR c++/70808 (Spurious -Wzero-as-null-pointer-constant for nullptr_t) · 310e77fe
      /cp
      2018-04-10  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/70808
      	* init.c (build_zero_init_1): Handle NULLPTR_TYPE_P being true of
      	the type like TYPE_PTR_OR_PTRMEM_P.
      
      /testsuite
      2018-04-10  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/70808
      	* g++.dg/warn/Wzero-as-null-pointer-constant-7.C: New.
      
      From-SVN: r259303
      Paolo Carlini committed
    • re PR target/85321 (Missing documentation and option misc for ppc64le) · 6f47ccff
      2018-04-10  Aaron Sawdey  <acsawdey@linux.ibm.com>
      
      	PR target/85321
      	* doc/invoke.texi (RS/6000 and PowerPC Options): Document options
      	-mblock-compare-inline-limit, -mblock-compare-inline-loop-limit,
      	and -mstring-compare-inline-limit.
      
      From-SVN: r259302
      Aaron Sawdey committed
    • MAINTAINERS: Update my email address. · a2919888
      2018-04-10  Aaron Sawdey  <acsawdey@linux.ibm.com>
      
      	* MAINTAINERS: Update my email address.
      
      From-SVN: r259301
      Aaron Sawdey committed
    • forgot the PR marker in the changelog · bbb4c5e1
      From-SVN: r259300
      Segher Boessenkool committed
    • rs6000: Fix stack clash for big residuals (PR85287) · 7321063d
      The stack clash protection code had a logic error in how it decided
      whether to put the final update size in a register, or to emit it
      directly in an insn.  This fixes it.  It also tidies some surrounding
      code.
      
      
      	PR target/85287
      	* gcc/config/rs6000/rs6000.md (allocate_stack): Put the residual size
      	for stack clash protection in a register whenever we need it to be in
      	a register.
      
      From-SVN: r259299
      Segher Boessenkool committed
    • rs6000: Enable -fasynchronous-unwind-tables by default · 0359465c
      To find out where on-entry register values live at any point in a
      program, GDB currently tries to parse to parse the executable code.
      This does not work very well, for example it gets confused if some
      accesses to the stack use the frame pointer (r31) and some use the
      stack pointer (r1).  A symptom is that backtraces can be cut short.
      
      This patch enables -fasynchronous-unwind-tables by default for rs6000,
      which causes us to emit DWARF unwind tables for all functions, solving
      these problems.
      
      This not do anything for sub-targets without DWARF, and only for ELF
      sub-targets for now.
      
      It increases executable size, but only modestly, and does not change
      memory use, only the disk image.
      
      
      	* common/config/rs6000/rs6000-common.c (rs6000_option_init_struct):
      	Enable -fasynchronous-unwind-tables by default if OBJECT_FORMAT_ELF.
      
      gcc/testsuite/
      	* gcc.target/powerpc/dfmode_off.c: Add -fno-asynchronous-unwind-tables.
      	* gcc.target/powerpc/dimode_off.c: Ditto.
      	* gcc.target/powerpc/tfmode_off.c: Ditto.
      	* gcc.target/powerpc/timode_off.c: Ditto.
      
      From-SVN: r259298
      Segher Boessenkool committed
    • rs6000: Improve --help=target (PR85321) · ccdfb975
      This updates the help text for some options to mention the allowed
      values for -mXX=XX.
      
      
      	PR target/85321
      	* config/rs6000/rs6000.opt (mtraceback=): Show the allowed values in
      	the help text.
      	(mlong-double-): Ditto.
      	* config/rs6000/sysv4.opt (msdata=): Ditto.
      	(mtls-size=): Ditto.
      
      From-SVN: r259296
      Segher Boessenkool committed
    • rs6000-c.c (altivec_overloaded_builtins): Remove erroneous entries for "vector int vec_ldl (int... · d4f18ec6
      gcc/ChangeLog:
      
      2018-04-10  Kelvin Nilsen  <kelvin@gcc.gnu.org>
      
      	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Remove
      	erroneous entries for
      	"vector int vec_ldl (int, long int *)", and
      	"vector unsigned int vec_ldl (int, unsigned long int *)".
      	Add comments and entries for
      	"vector bool char vec_ldl (int, bool char *)",
      	"vector bool short vec_ldl (int, bool short *)",
      	"vector bool int vec_ldl (int, bool int *)",
      	"vector bool long long vec_ldl (int, bool long long *)",
      	"vector pixel vec_ldl (int, pixel *)",
      	"vector long long vec_ldl (int, long long *)",
      	"vector unsigned long long vec_ldl (int, unsigned long long *)".
      	* config/rs6000/rs6000.c (rs6000_init_builtins): Initialize new
      	type tree bool_long_long_type_node and correct definition of
      	bool_V2DI_type_node to make reference to this new type tree.
      	(rs6000_mangle_type): Replace erroneous reference to
      	bool_long_type_node with bool_long_long_type_node.
      	* config/rs6000/rs6000.h (enum rs6000_builtin_type_index): Add
      	comments to emphasize sign distinctions for char and int types and
      	replace RS6000_BTI_bool_long constant with
      	RS6000_BTI_bool_long_long constant.  Also add comment to restrict
      	use of RS6000_BTI_pixel.
      	(bool_long_type_node): Remove this macro definition.
      	(bool_long_long_type_node): New macro definition
      
      gcc/testsuite/ChangeLog:
      
      2018-04-10  Kelvin Nilsen  <kelvin@gcc.gnu.org>
      
      	* gcc.target/powerpc/vec-ldl-1.c: New test.
      	* gcc.dg/vmx/ops-long-1.c: Correct test programs to reflect
      	corrections to ABI implementation.
      
      From-SVN: r259294
      Kelvin Nilsen committed
    • PR debug/65821 - wrong location for main(). · 45d14461
      	* call.c (clear_location_r, convert_default_arg): Revert.
      	* tree.c (break_out_target_exprs): Add clear_location parm.
      	(struct bot_data): New.
      	(bot_manip): Clear location if requested.
      	* init.c (get_nsdmi): Pass clear_location.
      
      From-SVN: r259291
      Jason Merrill committed
    • [PR target/85056] Address -Wmaybe-uninitialized diagnostic · f6d17c4d
      	gcc/testsuite/
      	* gcc.target/nvptx/pr85056.c (main): Initialize "sum".
      
      From-SVN: r259288
      Thomas Schwinge committed
    • cppopts.texi: Use "side effect" instead of side-effect. · df18c24a
      gcc/ChangeLog:
      
      	* doc/cppopts.texi: Use "side effect" instead of side-effect.
      	* doc/extend.texi: Same.
      	* doc/generic.texi: Same.
      	* doc/implement-c.texi: Same.
      	* doc/invoke.texi: Same.
      	* doc/md.texi: Same.
      	* doc/rtl.texi: Same.
      	* doc/tree-ssa.texi: Same.
      
      From-SVN: r259287
      Martin Sebor committed
    • Update links to archived copy of SGI STL docs · 25949ee3
      	* doc/xml/faq.xml: Update links to archived copy of SGI STL docs.
      	* doc/xml/manual/backwards_compatibility.xml: Likewise.
      	* doc/xml/manual/containers.xml: Likewise.
      	* doc/xml/manual/debug_mode.xml: Likewise.
      	* doc/xml/manual/extensions.xml: Likewise.
      	* doc/xml/manual/policy_data_structures_biblio.xml: Likewise.
      	* doc/xml/manual/using.xml: Likewise.
      	* doc/xml/manual/utilities.xml: Likewise.
      
      From-SVN: r259286
      Jonathan Wakely committed
    • re PR rtl-optimization/85300 (ICE in exact_int_to_float_conversion_p, at simplify-rtx.c:895) · e0cf12ba
      	PR rtl-optimization/85300
      	* combine.c (subst): Handle subst of CONST_SCALAR_INT_P new_rtx also
      	into FLOAT and UNSIGNED_FLOAT like ZERO_EXTEND, return a CLOBBER if
      	simplify_unary_operation fails.
      
      	* gcc.dg/pr85300.c: New test.
      
      From-SVN: r259285
      Jakub Jelinek committed
    • gdbhooks: Add new pretty-printers for: varpool_node, symtab_node, cgraph_edge and ipa_ref. · efbf619b
      2018-04-10  Martin Liska  <mliska@suse.cz>
      
      	* gdbhooks.py: Add pretty-printers for varpool_node, symtab_node,
      	cgraph_edge and ipa_ref.
      
      From-SVN: r259283
      Martin Liska committed
    • Show pertinent parameter (PR c++/85110) · 672c767b
      gcc/cp/ChangeLog:
      	PR c++/85110
      	* call.c (get_fndecl_argument_location): Make non-static.
      	* cp-tree.h (get_fndecl_argument_location): New decl.
      	* typeck.c (convert_for_assignment): When complaining due to
      	conversions for an argument, show the location of the parameter
      	within the decl.
      
      gcc/testsuite/ChangeLog:
      	PR c++/85110
      	* g++.dg/cpp1z/direct-enum-init1.C: Update for the cases
      	where we now show the pertinent parameter.
      	* g++.dg/diagnostic/aka2.C: Likewise.
      	* g++.dg/diagnostic/param-type-mismatch-2.C: Likewise.
      
      From-SVN: r259282
      David Malcolm committed
    • PR libstdc++/85222 allow catching iostream errors as gcc4-compatible ios::failure · 5f302518
      Define a new exception type derived from std::ios::failure[abi:cxx11]
      which also aggregates an object of the gcc4-compatible ios::failure
      type. Make __throw_ios_failure throw this new type for iostream errors
      that raise exceptions. Provide custom type info for the new type so that
      it can be caught by handlers for the gcc4-compatible ios::failure type
      as well as handlers for ios::failure[abi:cxx11] and its bases.
      
      	PR libstdc++/85222
      	* src/c++11/Makefile.am [ENABLE_DUAL_ABI]: Add special rules for
      	cxx11-ios_failure.cc to rewrite type info for __ios_failure.
      	* src/c++11/Makefile.in: Regenerate.
      	* src/c++11/cxx11-ios_failure.cc (__ios_failure, __iosfail_type_info):
      	New types.
      	[_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
      	* src/c++11/ios.cc (__throw_ios_failure): Remove definition.
      	* src/c++98/ios_failure.cc (__construct_ios_failure)
      	(__destroy_ios_failure, is_ios_failure_handler): New functions.
      	[!_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
      	* testsuite/27_io/ios_base/failure/dual_abi.cc: New.
      	* testsuite/27_io/basic_ios/copyfmt/char/1.cc: Revert changes to
      	handler types, to always catch std::ios_base::failure.
      	* testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
      	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
      	exceptions_failbit.cc: Likewise.
      	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
      	exceptions_failbit.cc: Likewise.
      	* testsuite/27_io/basic_istream/extractors_other/char/
      	exceptions_null.cc: Likewise.
      	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
      	exceptions_null.cc: Likewise.
      	* testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
      	* testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
      	* testsuite/27_io/basic_ostream/inserters_other/char/
      	exceptions_null.cc: Likewise.
      	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
      	exceptions_null.cc: Likewise.
      	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
      
      From-SVN: r259281
      Jonathan Wakely committed
    • PR c++/85312 - P0962 cleanup · 7e6b73b1
      	PR c++/85312 - P0962 cleanup
      	* parser.c (cp_parser_perform_range_for_lookup): Remove unreachable
      	diagnostics.
      
      From-SVN: r259279
      Jakub Jelinek committed
    • PR debug/65821 - wrong location for main(). · 6e2446b6
      	* call.c (clear_location_r): New.
      	(convert_default_arg): Use it.
      	* tree.c (bot_manip): Remove builtin_LINE/FILE handling.
      
      From-SVN: r259278
      Jason Merrill committed
    • PR c++/85285 - ICE with flexible array after substitution. · 05c602a1
      	* pt.c (instantiate_class_template_1): Check for flexible array in
      	union.
      
      From-SVN: r259277
      Jason Merrill committed
    • re PR fortran/85313 (gcc/fortran/openmp.c: 2 * confused logic ?) · 24f80aa4
      	PR fortran/85313
      	* openmp.c (resolve_omp_do): Remove bogus if (j < i) break;.
      	(resolve_oacc_nested_loops): Likewise.  Formatting fix.
      
      	* gfortran.dg/gomp/pr85313.f90: New test.
      
      From-SVN: r259275
      Jakub Jelinek committed
    • Fix obvious error in handling of error attribute (PR lto/85248). · c16833dc
      2018-04-10  Martin Liska  <mliska@suse.cz>
      
      	PR lto/85248
      	* lto-symtab.c (lto_symtab_merge_p): Do not check for
      	TREE_VALUES of error attributes.
      
      From-SVN: r259274
      Martin Liska committed
    • re PR c++/24314 (Extra "template<>" in partial specialization is compiled successfuly.) · b30ae803
      2018-04-10  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/24314
      	* g++.dg/parse/template29.C: New.
      
      From-SVN: r259273
      Paolo Carlini committed
    • re PR testsuite/85190 (gcc.dg/vect/pr81196.c FAILs) · 2377345d
      	gcc/testsuite
      	PR testsuite/85190
      	* gcc.dg/vect/pr81196.c: Adjust pointer for aligned access.
      
      From-SVN: r259272
      Bin Cheng committed