Commit Graph

163637 Commits

Author SHA1 Message Date
Nathan Sidwell
5020c88e53 [C++ PATCH] Remove K&R declaration hack.
https://gcc.gnu.org/ml/gcc-patches/2018-08/msg01885.html
	gcc/
	* doc/extend.texi (Backwards Compatibility): Remove implicit
	extern C leeway of () being (...).
	gcc/cp/
	* decl.c (decls_match): Remove SYSTEM_IMPLICIT_EXTERN_C matching
	of return types and parms.
	* parser.c (cp_parser_parameter_declaration_clause): Likewise,
	'()' always means '(void)'.

From-SVN: r264013
2018-08-31 11:19:33 +00:00
Kyrylo Tkachov
553bb25784 [ipa-inline][obvious] Fix typos in comment
* ipa-inline.c (can_inline_edge_by_limits_p): Fix typos in comment.

From-SVN: r264012
2018-08-31 10:36:54 +00:00
Segher Boessenkool
ec26512503 rs6000: Make lround<mode>di2 depend on TARGET_FPRND (PR86684)
TARGET_FPRND should be on for everything ISA 2.04 and later, and
TARGET_VSX implies ISA 2.06 or later; but it is possible to disable
TARGET_FPRND (separately via -mno-fprnd, but also implicitly)
currently, and then things fall down.  This patch makes things not
fall down.


	PR target/86684
	PR target/87149
	* config/rs6000/rs6000.md (lround<mode>di2): Gate on TARGET_FPRND.

From-SVN: r264011
2018-08-31 10:52:13 +02:00
Jakub Jelinek
8e7dfe7144 re PR middle-end/87138 (wrong code with TI multiplication with -O -march=k8 -fno-tree-fre -mavx512bw)
PR middle-end/87138
	* expmed.c (expand_mult_const): Use immed_wide_int_const instead of
	gen_int_mode.  Formatting fixes.

	* gcc.target/i386/avx512bw-pr87138.c: New test.

From-SVN: r264009
2018-08-31 09:49:12 +02:00
Paul Thomas
4e227341f6 re PR fortran/86328 (Runtime segfault reading an allocatable class(*) object in allocate statements)
2018-08-31  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/86328
	PR fortran/86760
	* trans-array.c (gfc_conv_scalarized_array_ref): Do not fix
	info->descriptor but pass it directly to gfc_build_array_ref.
	(gfc_conv_array_ref): Likewise for se->expr.
	* trans.c (gfc_build_array_ref): If 'decl' is a COMPONENT_REF
	obtain the span field directly from it.

2018-08-31  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/86328
	PR fortran/86760
	* gfortran.dg/pr86328.f90 : New test.
	in comment 12 of the PR.
	* gfortran.dg/pr86760.f90 : New test.

From-SVN: r264008
2018-08-31 06:51:31 +00:00
Rainer Orth
ee3ec8ac28 Fix PR testsuite/86519 reference.
From-SVN: r264007
2018-08-31 06:43:07 +00:00
GCC Administrator
551e6c16a0 Daily bump.
From-SVN: r264006
2018-08-31 00:16:48 +00:00
Sandra Loosemore
24ce3d9485 noexcept30.C: Make dependence on -fdelete-null-pointer-checks explicit.
2018-08-30  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/testsuite/
	* g++.dg/cpp0x/noexcept30.C: Make dependence on
	-fdelete-null-pointer-checks explicit.
	* g++.dg/cpp1y/constexpr-82218.C: Likewise.
	* g++.dg/expr/pmf-3.C: Likewise.
	* g++.dg/ext/attr-returns-nonnull.C: Likewise.
	* g++.dg/tree-ssa/lifetime-dse1.C: Likewise.
	* g++.dg/tree-ssa/pr61034.C: Likewise.
	* gcc.dg/addr_equal-1.c: Likewise.
	* gcc.dg/ipa/pr85734.c: Likewise.
	* gcc.dg/ipa/propmalloc-1.c: Likewise.
	* gcc.dg/ipa/propmalloc-2.c: Likewise.
	* gcc.dg/ipa/propmalloc-3.c: Likewise.
	* gcc.dg/tree-ssa/pr78154.c: Likewise.
	* gcc.dg/tree-ssa/pr83648.c: Likewise.

	libstdc++-v3/
	* testsuite/experimental/propagate_const/observers/1.cc: Make
	dependence on -fdelete-null-pointer-checks explicit.

From-SVN: r264001
2018-08-30 17:27:44 -04:00
Martin Sebor
e602b1e353 PR testsuite/87158 - FAIL gcc.c-torture/execute/memchr-1.c on big endian targets
gcc/testsuite/ChangeLog:
	* gcc.c-torture/execute/memchr-1.c: Correct big-endian expectations.

From-SVN: r264000
2018-08-30 15:25:10 -06:00
Sandra Loosemore
92b6df436d target.def (custom_function_descriptors): Improve documentation.
2018-08-30  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* target.def (custom_function_descriptors): Improve documentation.
	* doc/tm.texi.in (Trampolines): Expand discussion of function
	descriptors and move TARGET_CUSTOM_FUNCTION_DESCRIPTORS to the
	beginning of the section.
	* doc/tm.texi: Regenerated.

From-SVN: r263999
2018-08-30 17:02:37 -04:00
Jose E. Marchesi
429331b676 cfg.h (class auto_edge_flag): Spell out the template-id of the base class in the initializer list.
gcc:

2018-08-30  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* cfg.h (class auto_edge_flag): Spell out the template-id of the
	base class in the initializer list.  This is a workaround for
	building with older GCC.
	(class auto_bb_flag): Likewise.

From-SVN: r263997
2018-08-30 22:28:31 +02:00
Aaron Sawdey
9d36bd3b17 altivec.md (altivec_eq<mode>): Remove star.
2018-08-30  Aaron Sawdey  <acsawdey@linux.ibm.com>

	* config/rs6000/altivec.md (altivec_eq<mode>): Remove star.
	(altivec_vcmpequ<VI_char>_p): Remove star.
	* config/rs6000/rs6000-string.c (do_load_for_compare): Support
	vector load modes.
	(expand_strncmp_vec_sequence): New function.
	(emit_final_str_compare_vec): New function.
	(expand_strn_compare): Add support for vector strncmp.
	* config/rs6000/rs6000.opt (-mstring-compare-inline-limit): Change
	length specification to bytes.
	* config/rs6000/vsx.md (vsx_ld_elemrev_v16qi_internal): Remove star.
	(vcmpnezb_p): New pattern.
	* doc/invoke.texi (RS/6000 and PowerPC Options): Update documentation
	for option -mstring-compare-inline-limit.

From-SVN: r263991
2018-08-30 13:17:00 -05:00
Thiago Macieira
a73e818148 x86: Move AESNI generation to Skylake and Goldmont
The instruction set first appeared with Westmere, but not all processors
in that and the next few generations have the instructions. According to
Wikipedia[1], the first generation in which all SKUs have AES
instructions are Skylake and Goldmont. I can't find any Skylake,
Kabylake, Kabylake-R or Cannon Lake currently listed at
https://ark.intel.com that says "Intel® AES New Instructions" "No".

[1] https://en.wikipedia.org/wiki/AES_instruction_set

2018-08-30  Thiago Macieira  <thiago.macieira@intel.com>

	* config/i386/i386.c (PTA_WESTMERE): Remove PTA_AES.
	(PTA_SKYLAKE): Add PTA_AES.
	(PTA_GOLDMONT): Likewise.

From-SVN: r263989
2018-08-30 08:59:41 -07:00
Jan Hubicka
4e6a938029 re PR lto/86517 (relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object with LTO)
PR lto/86517
	* lto-opts.c (lto_write_options): Always stream PIC/PIE mode.
	* lto-wrapper.c (merge_and_complain): Fix merging of PIC/PIE.

From-SVN: r263988
2018-08-30 15:50:39 +00:00
Nathan Sidwell
24c35f687a [libcpp] fix some line map comments
https://gcc.gnu.org/ml/gcc-patches/2018-08/msg01978.html
	* include/line-map.h (enum lc_reason): Comment each member
	separately.
	(struct line_maps): Fix reallocator comment.

From-SVN: r263987
2018-08-30 15:16:21 +00:00
Jonathan Wakely
2fb17d2d90 Avoid undefined shifts in ceil2 operations
For values where the result cannot be represented the shift width would
be equal to the width of the type, which is undefined. Perform two
well-defined shifts instead of one possible undefined shift.

	* include/bits/hashtable_policy.h (__clp2): Fix calculation for LLP64
	targets where sizeof(size_t) > sizeof(long). Avoid undefined shifts
	of the number of bits in the type.
	* include/std/bit (__ceil2): Avoid undefined shifts.
	* testsuite/26_numerics/bit/bit.pow.two/ceil2.cc: Test values with
	the most signifiant bit set.

From-SVN: r263986
2018-08-30 16:07:35 +01:00
Jan Hubicka
2ebbdb6ca3 lto-streamer-out.c (DFS::DFS_write_tree_body): Do not follow TYPE_STUB_DECL.
* lto-streamer-out.c (DFS::DFS_write_tree_body): Do not follow
	TYPE_STUB_DECL.
	(hash_tree): Do not visit TYPE_STUB_DECL.
	* tree-streamer-out.c (write_ts_type_common_tree_pointers): Do not
	stream TYPE_STUB_DECL.
	* tree-streamer-in.c (lto_input_ts_type_common_tree_pointers): Likewise.
	* ipa-utils.h (type_with_linkage_p): Do not rely on TYPE_STUB_DECL
	after free_lang_data.
	(type_in_anonymous_namespace_p): Likewise.

From-SVN: r263985
2018-08-30 15:05:38 +00:00
Qing Zhao
21592ebe9d Move strcmpopt_6.c from gcc.dg to gcc.target/aarch64 and gcc.target/i386.
From-SVN: r263983
2018-08-30 14:46:53 +00:00
Alexander Monakov
22eea6b2f4 gimplefe: expose MULT_HIGHPART_EXPR
* gimple-parser.c (c_parser_gimple_binary_expression): Accept infix
	"__MULT_HIGHPART" for MULT_HIGHPART_EXPR.

From-SVN: r263982
2018-08-30 16:47:59 +03:00
Jan Hubicka
a5f4d3d6a1 sreal.h (SREAL_PART_BITS): Change to 31; remove seemingly unnecessary comment that it has to be even number.
* sreal.h (SREAL_PART_BITS): Change to 31; remove seemingly unnecessary
	comment that it has to be even number.
	(class sreal): Change m_sig type to int32_t.
	* sreal.c (sreal::dump, sreal::to_int, opreator+, operator-): Use
	int64_t for temporary calculations.
	(sreal_verify_basics): Drop one bit from minimum and maximum.

From-SVN: r263981
2018-08-30 12:58:42 +00:00
Richard Biener
b1d5f64492 re PR tree-optimization/87147 (GCC miscompiles at -O3 on valid code)
2018-08-30  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/87147
	* tree-ssa-sccvn.c (SSA_VISITED): New function.
	(visit_phi): When the degenerate result is from the backedge and
	we didn't visit its definition yet drop to VARYING.
	(do_rpo_vn): Properly mark blocks with incoming backedges as executable.

	* gcc.dg/torture/pr87147.c: New testcase.

From-SVN: r263980
2018-08-30 12:37:10 +00:00
Jan Hubicka
28428506aa lto-streamer-out.c (DFS::DFS_write_tree_body): Do not walk DECL_VINDEX.
* lto-streamer-out.c (DFS::DFS_write_tree_body): Do not walk
	DECL_VINDEX.
	(hash_tree): Likewise.

From-SVN: r263979
2018-08-30 12:36:24 +00:00
Jan Hubicka
7ee6e37a8e tree.c (find_decls_types_r): Walk also TYPE_NEXT_PTR_TO and TYPE_NEXT_REF_TO.
* tree.c (find_decls_types_r): Walk also TYPE_NEXT_PTR_TO
	and TYPE_NEXT_REF_TO.

From-SVN: r263978
2018-08-30 12:32:45 +00:00
Jonathan Wakely
0c05d45624 Fix undefined references seen with mingw-w64
* config/abi/pre/gnu.ver: Add missing exports for mingw.

From-SVN: r263977
2018-08-30 13:28:53 +01:00
Jonathan Wakely
4a559e91b1 Fix __gnu_cxx::_Pointer_adapter for long long arithmetic
* include/ext/pointer.h (_Pointer_adapter): Define operators for
	pointer arithmetic using long long offsets.
	* testsuite/ext/ext_pointer/1.cc: Test pointer arithmetic using
	long long values.

From-SVN: r263976
2018-08-30 13:24:06 +01:00
Tamar Christina
f7e1d19d58 Limit movmem copies to TImode on AArch64
On AArch64 we have integer modes larger than TImode, and while we can generate
moves for these they're not as efficient.

So instead make sure we limit the maximum we can copy to TImode.  This means
copying a 16 byte struct will issue 1 TImode copy, which will be done using a
single STP as we expect but an CImode sized copy won't issue CImode operations.

I am also moving the residual code inside the if since smallest_mode_for_int may
trap if the mode doesn't exist.  And the only time we know the mode to exist for
sure is when the condition of the if is true.  This also saves repeated calls to
the iterator.

gcc/
2018-08-30  Tamar Christina  <tamar.christina@arm.com>

	* config/aarch64/aarch64.c (aarch64_expand_movmem): Set TImode max.

gcc/testsuite/
2018-08-30  Tamar Christina  <tamar.christina@arm.com>

 	* gcc.target/aarch64/large_struct_copy_2.c: New.

From-SVN: r263974
2018-08-30 10:40:07 +00:00
Vlad Lazar
c729951e9c Enable underflow check in canonicalize_comparison. (PR86995)
gcc/
2018-08-30  Vlad Lazar  <vlad.lazar@arm.com>

	PR middle-end/86995
	* expmed.c (canonicalize_comparison): Use wi::sub instead of wi::add
	if to_add is negative.

From-SVN: r263973
2018-08-30 09:30:49 +00:00
GCC Administrator
d0eaed46ce Daily bump.
From-SVN: r263972
2018-08-30 00:17:02 +00:00
Bernd Edlinger
1ebf0641a5 re PR middle-end/87053 (wrong code with c_strlen)
gcc:
2018-08-22  Bernd Edlinger  <bernd.edlinger@hotmail.de>

	PR middle-end/87053
	* builtins.c (c_strlen): Improve range checks.

testsuite:
2018-08-22  Bernd Edlinger  <bernd.edlinger@hotmail.de>

	PR middle-end/87053
	* gcc.c-torture/execute/pr87053.c: New test.

From-SVN: r263968
2018-08-29 16:16:09 -06:00
Jakub Jelinek
d66ab7d12b re PR sanitizer/87095 (UndefinedBehaviorSanitizer vptr false positive with virtual inheritance only with -fno-sanitize-recover)
PR c++/87095
	* decl.c (begin_destructor_body): If current_class_type has
	virtual bases and the primary base is nearly empty virtual base,
	voidify clearing of vptr and make it conditional on in-charge
	argument.

	* g++.dg/ubsan/vptr-13.C: New test.

From-SVN: r263967
2018-08-29 23:43:18 +02:00
Paolo Carlini
849ec6caae re PR c++/85265 ([concepts] ICE with missing identifier)
/cp
2018-08-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/85265
	* parser.c (cp_parser_introduction_list): If cp_parser_identifier
	returns error_mark_node early exit the loop.
	(cp_parser_template_introduction): Improve error-recovery, remove
	error call about empty introduction-list.

/testsuite
2018-08-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/85265
	* g++.dg/concepts/pr85265.C: New.

From-SVN: r263966
2018-08-29 20:29:55 +00:00
Martin Sebor
e84bf0ef66 re PR middle-end/86714 (tree-ssa-forwprop.c confused by too long initializer)
PR tree-optimization/86714
	PR tree-optimization/86711
	* builtins.c (c_strlen): Add arguments to call to string_constant.
	* expr.c (string_constant): Add argument.  Detect missing nul
	terminator and outermost declaration it's missing in.
	* expr.h (string_constant): Add argument.
	* fold-const.c (read_from_constant_string): Add arguments to call to
	string_constant.
	(c_getstr): Likewise.
	* tree-ssa-forwprop.c (simplify_builtin_call): Likewise.
	to string_constant.
	* tree-ssa-strlen.c (get_stridx): Likewise.

	PR tree-optimization/86714
	PR tree-optimization/86711
	* gcc.c-torture/execute/memchr-1.c: New test.
	* gcc.c-torture/execute/pr86714.c: New test.
	* gcc.c-torture/execute/widechar-3.c: New test.
	* gcc.dg/strlenopt-58.c: New test.

Co-Authored-By: Bernd Edlinger <bernd.edlinger@hotmail.de>
Co-Authored-By: Jeff Law <law@redhat.com>

From-SVN: r263963
2018-08-29 11:17:08 -06:00
Jan Hubicka
b9a0baa9f9 tree-streamer-in.c (lto_input_ts_function_decl_tree_pointers): Do not stream DECL_VINDEX.
* tree-streamer-in.c (lto_input_ts_function_decl_tree_pointers):
	Do not stream DECL_VINDEX.
	* tree-streamer-out.c (write_ts_function_decl_tree_pointers): Likewise.
	* tree.c (free_lang_data_in_decl): Clear DECL_VINDEX.
	(decl_function_context): Use DECL_VIRTUAL_P rather than DECL_VINDEX.

From-SVN: r263962
2018-08-29 17:07:35 +00:00
Richard Biener
d176b500dc tree-ssa-sccvn.c (vuse_ssa_val): Return NULL for unvisited virtual operands that are not default defs to honor...
2018-08-29  Richard Biener  <rguenther@suse.de>

	* tree-ssa-sccvn.c (vuse_ssa_val): Return NULL for unvisited
	virtual operands that are not default defs to honor region
	boundaries.
	(rpo_vn_valueize): Remove ineffective code here.

From-SVN: r263960
2018-08-29 15:02:06 +00:00
Richard Biener
8f70fdc31a re PR tree-optimization/87132 (Gcc miscompiles at -O2 on valid code)
2018-08-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/87132
	* tree-ssa-alias.c (get_continuation_for_phi): Do not translate
	when skipping defs reachable over backedges.

	* gcc.dg/torture/pr87132.c: New testcase.

From-SVN: r263959
2018-08-29 14:13:20 +00:00
Richard Biener
6214d5c7e7 tree-core.h: Document use of deprecated_flag in SSA_NAME.
2018-08-29  Richard Biener  <rguenther@suse.de>

	* tree-core.h: Document use of deprecated_flag in SSA_NAME.
	* tree.h (SSA_NAME_POINTS_TO_READONLY_MEMORY): Define.
	* tree-into-ssa.c (pass_build_ssa::execute): Initialize
	function parameters SSA_NAME_POINTS_TO_READONLY_MEMORY from fnspec.
	* tree-ssa-sccvn.c (const_parms, init_const_parms): Remove.
	(vn_reference_lookup_3): Remove use of const_parms.
	(free_rpo_vn): Do not free const_parms.
	(do_rpo_vn): Do not call init_const_parms.
	* tree-ssa-alias.c (refs_may_alias_p_1): Honor
	SSA_NAME_POINTS_TO_READONLY_MEMORY.
	(call_may_clobber_ref_p_1): Likewise.

From-SVN: r263958
2018-08-29 14:12:25 +00:00
David Malcolm
66e5825973 C++: underline param in print_conversion_rejection (more PR c++/85110)
Consider this bogus code (from g++.dg/diagnostic/param-type-mismatch-2.C):

struct s4 { static int member_1 (int one, const char **two, float three); };

int test_4 (int first, const char *second, float third)
{
  return s4::member_1 (first, second, third);
}

Before this patch, g++ emits:

demo.cc: In function 'int test_4(int, const char*, float)':
demo.cc:5:44: error: no matching function for call to 's4::member_1(int&, const char*&, float&)'
5 |   return s4::member_1 (first, second, third);
  |                                            ^
demo.cc:1:24: note: candidate: 'static int s4::member_1(int, const char**, float)'
1 | struct s4 { static int member_1 (int one, const char **two, float three); };
  |                        ^~~~~~~~
demo.cc:1:24: note:   no known conversion for argument 2 from 'const char*' to 'const char**'

With this patch, it highlights the pertinent parameter in the
"no known conversion" note:

demo.cc: In function 'int test_4(int, const char*, float)':
demo.cc:5:44: error: no matching function for call to 's4::member_1(int&, const char*&, float&)'
5 |   return s4::member_1 (first, second, third);
  |                                            ^
demo.cc:1:24: note: candidate: 'static int s4::member_1(int, const char**, float)'
1 | struct s4 { static int member_1 (int one, const char **two, float three); };
  |                        ^~~~~~~~
demo.cc:1:56: note:   no known conversion for argument 2 from 'const char*' to 'const char**'
1 | struct s4 { static int member_1 (int one, const char **two, float three); };
  |                                           ~~~~~~~~~~~~~^~~

gcc/cp/ChangeLog:
	PR c++/85110
	* call.c (print_conversion_rejection): Add "fn" param and use it
	for "no known conversion" messages to underline the pertinent
	param.
	(print_z_candidate): Supply "fn" to the new param above.

gcc/testsuite/ChangeLog:
	PR c++/85110
	* g++.dg/diagnostic/param-type-mismatch-2.C: Update expected
	output to reflect underlining of pertinent parameter in decl
	for "no known conversion" messages.

From-SVN: r263957
2018-08-29 13:52:22 +00:00
Alexander Monakov
1ca7a4d457 doc: document -ftree-scev-cprop
PR other/86726
	* invoke.texi (Optimization Options): List -ftree-scev-cprop.
	(-O): Ditto.
	(-ftree-scev-cprop): Document.

From-SVN: r263955
2018-08-29 15:39:12 +03:00
Jakub Jelinek
f5b219ccc2 re PR c++/87122 (ICE in tsubst_decomp_names)
PR c++/87122
	* pt.c (tsubst_expr) <case RANGE_FOR_STMT>: If
	processing_template_decl and decl is structured binding decl, call
	cp_finish_decomp.

	* g++.dg/cpp1z/decomp47.C: New test.

From-SVN: r263953
2018-08-29 14:27:55 +02:00
Jan Hubicka
7a1ce63278 sreal.h (normalize, [...]): Add new_sig/new_exp parameters.
* sreal.h (normalize, normalize_up, normalize_down): Add new_sig/new_exp
	parameters.
	(sreal constructor): Update.
	* sreal.c (sreal:operator+, sreal:operator-, sreal:operator*,
	sreal:operator/): Update.

From-SVN: r263952
2018-08-29 12:21:28 +00:00
Martin Liska
9ed6dbeeb2 Fix thinko in lto.c (PR bootstrap/87130).
2018-08-29  Martin Liska  <mliska@suse.cz>

	PR bootstrap/87130
	* lto.c (read_cgraph_and_symbols): Fix thinko, revert
	to behavior before r263887.

From-SVN: r263950
2018-08-29 10:48:50 +00:00
Vlad Lazar
e8a0276ced MAINTAINERS (write after approval): Add myself.
2018-08-29  Vlad Lazar  <vlad.lazar@arm.com>

	* MAINTAINERS (write after approval): Add myself.

From-SVN: r263949
2018-08-29 10:24:46 +00:00
Jonathan Wakely
9111b08384 PR libstdc++/31413 fix test failure on Debian systems
Debian uses a different D_FMT string for the zh_TW.UTF-8 locale, which
caused this test to fail. Try to detect the Debian format and adjust
the input being tested.

	PR libstdc++/31413
	* testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Check D_FMT
	string for alternative format.

From-SVN: r263948
2018-08-29 11:05:55 +01:00
Martin Liska
fb9cb5369d Strenghten assumption about gswitch statements.
2018-08-29  Martin Liska  <mliska@suse.cz>

	* tree-switch-conversion.c (switch_conversion::expand):
	Strenghten assumption about gswitch statements.

From-SVN: r263947
2018-08-29 08:35:09 +00:00
Matthew Malcomson
aac8c550c9 [AARCH64] Use stdint integers in vect_su_add_sub.c
2018-08-29  Matthew Malcomson  <matthew.malcomson@arm.com>

	* gcc.target/aarch64/simd/vect_su_add_sub.c: Use 32 and 64-bit types
	where appropriate.

From-SVN: r263946
2018-08-29 08:22:19 +00:00
Richard Biener
95f0c81630 re PR tree-optimization/87117 (ICE in eliminate_dom_walker::eliminate_cleanup(bool) at gcc/gcc/tree-ssa-sccvn.c:5431 since r263875)
2018-08-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/87117
	* tree-ssa-sccvn.c (eliminate_dom_walker::eliminate_stmt): Only
	re-value-number released SSA VDEFs.

	* gfortran.dg/pr87117.f90: New testcase.

From-SVN: r263945
2018-08-29 06:49:06 +00:00
Richard Biener
e37f7da9c4 re PR tree-optimization/87126 (ICE on valid code at -Os and above on x86_64-linux-gnu: in vn_reference_insert, at tree-ssa-sccvn.c:2698)
2018-08-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/87126
	* tree-ssa-sccvn.c (vn_reference_insert): Remove assert.

	* gcc.dg/tree-ssa/pr87126.c: New testcase.

From-SVN: r263944
2018-08-29 06:47:14 +00:00
Jim Wilson
efc601240c Rewrite pic.md to improve medany and pic code size.
gcc/
	* config/riscv/pic.md: Rewrite.
	* config/riscv/riscv.c (riscv_address_insns): Return cost of 3 for
	invalid address.
	* config/riscv/riscv.md (ZERO_EXTEND_LOAD): Delete.
	(SOFTF, default_load, softload, softstore): New.

From-SVN: r263943
2018-08-28 19:20:44 -07:00
Jason Merrill
37170829c2 remove utf-8 from comment
From-SVN: r263942
2018-08-28 21:14:21 -04:00
Ian Lance Taylor
347462bfee compiler, runtime: remove hmap field from maptypes
This is the gofrontend version of https://golang.org/cl/91796.
    
    This is part of that CL, just the compiler change and required runtime
    changes, in preparation for updating libgo to 1.11.
    
    Relevant part of original CL description:
    
        The hmap field in the maptype is only used by the runtime to check the sizes of
        the hmap structure created by the compiler and runtime agree.
    
        Comments are already present about the hmap structure definitions in the
        compiler and runtime needing to be in sync.
    
    Reviewed-on: https://go-review.googlesource.com/130976

From-SVN: r263941
2018-08-29 00:20:25 +00:00