Commit Graph

150426 Commits

Author SHA1 Message Date
Felipe Magno de Almeida
6649ad7efd Enable libstdc++ compilation on AVR targets
Enable libstdc++ compilation in AVR targets with AVR-Libc. Most
floating point math functions are already defined in AVR-Libc, so
defines are in place to avoid multiple definition of these functions.

2016-12-06  Felipe Magno de Almeida  <felipe@expertisesolutions.com.br>

	* crossconfig.m4: Add avr target for cross-compilation.
	* configure: Regenerate.

From-SVN: r243309
2016-12-06 17:58:05 +00:00
Jerry DeLisle
34022d2b2e re PR fortran/78659 ([F03] Spurious "requires DTIO" reported against namelist statement)
2016-12-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/78659
	* resolve.c (resolve_fl_namelist): Remove unneeded error.
	PR fortran/78659
	* gfortran.dg/alloc_comp_constraint_1.f90: Update test.
	* gfortran.dg/alloc_comp_constraint_7.f90: New test.
	* gfortran.dg/namelist_34.f90: Update test.
	* gfortran.dg/namelist_63.f90: Update test.

From-SVN: r243308
2016-12-06 17:13:31 +00:00
Kyrylo Tkachov
0eada3216b [ARM][committed] Sort ARMv8 processors by alphabetic order
* config/arm/arm-cores.def (cortex-m23, cortex-m33): Move into
	alphabetical order with respect to other ARMv8 processors.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm-tune.md: Likewise.

From-SVN: r243306
2016-12-06 16:56:56 +00:00
Jonathan Wakely
449a432129 Fix pretty-printer for std::variant
* python/libstdcxx/v6/printers.py (StdVariantPrinter): Update for new
	data member name.
	* testsuite/libstdc++-prettyprinters/cxx17.cc: Remove redundant test.

From-SVN: r243304
2016-12-06 14:36:07 +00:00
Jonathan Wakely
55037a694f Fix debug mode assertion for std::shared_ptr<void>
* include/bits/shared_ptr_base.h
	(__shared_ptr_access<T, L, false, true>::operator->()): Fix assertion.

From-SVN: r243303
2016-12-06 14:36:00 +00:00
Robert Suchanek
fb7b736cbb [MIPS][MSA] Fix builtins with literal integer arguments.
gcc/
	* config/mips/mips.c (mips_expand_builtin_insn): Check input
	ranges of literal integer arguments.

gcc/testsuite/

	* gcc.target/mips/msa-builtins-err.c: New test.

From-SVN: r243301
2016-12-06 13:45:34 +00:00
Andre Vehreschild
1011502b46 re PR fortran/78226 (Fill out location information everywhere)
gcc/fortran/ChangeLog:

2016-12-06  Andre Vehreschild  <vehre@gcc.gnu.org>

	PR fortran/78226
	* class.c (finalize_component): Add missing locus information.
	(finalization_scalarizer): Likewise.
	(finalization_get_offset): Likewise.
	(finalizer_insert_packed_call): Likewise.
	(generate_finalization_wrapper): Likewise.

From-SVN: r243300
2016-12-06 14:41:46 +01:00
Jonathan Wakely
505326670f Fix libstdc++-v3/ChangeLog dates
From-SVN: r243299
2016-12-06 12:48:54 +00:00
Ville Voutilainen
1637d42545 Constrain optional's __constexpr_addressof in its return type and use a constexpr addressof for optional, if available.
Constrain optional's __constexpr_addressof in its return type
and use a constexpr addressof for optional, if available.
* include/experimental/optional (__constexpr_addressof):
Constrain in the return type instead of in a template parameter.
(_Has_addressof_mem)
(_Has_addressof_free, _Has_addressof, __constexpr_addressof):
Guard with #ifndef __cpp_lib_addressof_constexpr.
(operator->()): Use std::__addressof if it's constexpr.

From-SVN: r243298
2016-12-06 14:47:54 +02:00
Tim Shen
b01af236b7 variant (visit): Make visit constexpr.
* include/std/variant (visit): Make visit constexpr. Also cleanup
	__get_alternative and __storage, since we don't support reference/void
	alternatives any more.
	* testsuite/20_util/variant/compile.cc: Add tests.

From-SVN: r243295
2016-12-06 11:28:09 +00:00
Tim Shen
458ef69052 enable_special_members.h: Make _Enable_default_constructor constexpr.
* include/bits/enable_special_members.h: Make
	_Enable_default_constructor constexpr.
	* include/std/variant (variant::emplace, variant::swap, std::swap,
	std::hash): Sfinae on emplace and std::swap; handle __poison_hash bases
	of duplicated types.
	* testsuite/20_util/variant/compile.cc: Add tests.
	* testsuite/20_util/variant/hash.cc: Add tests.

From-SVN: r243294
2016-12-06 11:26:48 +00:00
Tim Shen
9189f55908 variant (std::get, operator==): Implement constexpr comparison and get<>.
* include/std/variant (std::get, operator==): Implement constexpr
	comparison and get<>.
	* testsuite/20_util/variant/compile.cc: Tests.

From-SVN: r243293
2016-12-06 11:20:13 +00:00
Tim Shen
44f4688595 variant (__erased_use_alloc_ctor, [...]): Remove uses-allocator related functions.
* include/std/variant (__erased_use_alloc_ctor,
	_Variant_base::_Variant_base, variant::variant): Remove uses-allocator
	related functions.
	* testsuite/20_util/variant/compile.cc: Remove related tests.
	* testsuite/20_util/variant/run.cc: Remove related tests.

From-SVN: r243292
2016-12-06 11:17:56 +00:00
Aditya Kumar
b6f684ae25 Add missing noexcept on std::_Sp_locker constructors
2016-12-06  Aditya Kumar  <hiraditya@msn.com>

	* src/c++11/shared_ptr.cc (_Sp_locker::_Sp_locker(const void* p)): Add
	noexcept on constructor.
	(_Sp_locker::_Sp_locker(const void* p1, const void* p2)): Same.

From-SVN: r243291
2016-12-06 10:43:49 +00:00
Jonathan Wakely
39a0325104 Add noexcept to various basic_string string operations
* include/bits/basic_string.h (basic_string::find, basic_string::rfind)
	(basic_string::find_first_of, basic_string::find_last_of)
	(basic_string::find_first_not_of, basic_string::find_last_not_of):
	Make all overloads noexcept.
	(basic_string::compare(const _CharT*)): Make noexcept.

From-SVN: r243290
2016-12-06 10:43:42 +00:00
Aldy Hernandez
3703d0958b re PR middle-end/78548 (ICE on valid C code on x86_64-linux-gnu at -O2 and -O3 in 64-bit mode with -Wall (*** Error in `/usr/local/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/7.0.0/cc1': double free or corruption (fasttop): 0x0000000003c15810 ***))
PR middle-end/78548
	* tree-ssa-uninit.c (simplify_preds_4): Call release() instead of
	destroy_predicate_vecs.
	(uninit_uses_cannot_happen): Make uninit_preds a scalar.

From-SVN: r243289
2016-12-06 10:35:37 +00:00
Aldy Hernandez
95ac78ce0e re PR middle-end/78566 (gcc.dg/uninit-pred-6_[abc]*.c regressions on some non-x86 platforms)
PR middle-end/78566
	* tree-ssa-uninit.c (can_one_predicate_be_invalidated_p): Change
	argument type to a pred_chain.
	(can_chain_union_be_invalidated_p): Use pred_chain instead of a
	worklist.
	(flatten_out_predicate_chains): Remove.
	(uninit_uses_cannot_happen): Rename from
	uninit_ops_invalidate_phi_use.
	Change logic so that we are checking that the PHI use will
	invalidate _ALL_ possibly uninitialized operands.
	(is_use_properly_guarded): Rename call to
	uninit_ops_invalidate_phi_use into uninit_uses_cannot_happen.

From-SVN: r243288
2016-12-06 10:33:41 +00:00
Tamar Christina
99b7a28da8 2016-12-06 Tamar Christina <tamar.christina@arm.com>
* gcc/config/aarch64/arm_neon.h
	(vreinterpretq_p8_p128, vreinterpretq_p16_p128): Added.
	(vreinterpret_p64_p16, vreinterpretq_p64_p128): Likewise.
	(vreinterpretq_p64_p16, vreinterpretq_p128_p8): Likewise.
	(vreinterpretq_p128_p16, vreinterpretq_p128_f16): Likewise.
	(vreinterpretq_p128_f32, vreinterpretq_p128_p64): Likewise.
	(vreinterpretq_p128_s64, vreinterpretq_p128_u64): Likewise.
	(vreinterpretq_p128_s8, vreinterpretq_p128_s16): Likewise.
	(vreinterpretq_p128_s32, vreinterpretq_p128_u8): Likewise.
	(vreinterpretq_p128_u16, vreinterpretq_p128_u32): Likewise.
	(vreinterpretq_f16_p128, vreinterpretq_f32_p128): Likewise.
	(vreinterpretq_s64_p128, vreinterpretq_u64_p128): Likewise.
	(vreinterpretq_s8_p128, vreinterpretq_s16_p128): Likewise.
	(vreinterpretq_s32_p128, vreinterpretq_u8_p128): Likewise.
	(vreinterpretq_u16_p128, vreinterpretq_u32_p128): Likewise.

From-SVN: r243287
2016-12-06 09:56:52 +00:00
Jakub Jelinek
0f57194bfc re PR c++/71537 (GCC rejects consetxpr boolean conversions and comparisons on the result of pointer arithmetic.)
PR c++/71537
	* fold-const.c (fold_comparison): Assume CONSTANT_CLASS_P (base0)
	plus offset is non-zero.  For maybe_nonzero_address decl base0,
	require indirect_base0.

	* g++.dg/cpp0x/constexpr-71537.C: New test.

From-SVN: r243286
2016-12-06 10:24:36 +01:00
Jakub Jelinek
66972191ee re PR c++/71537 (GCC rejects consetxpr boolean conversions and comparisons on the result of pointer arithmetic.)
2016-12-06  Jakub Jelinek  <jakub@redhat.com>

	PR c++/71537
	* fold-const-call.c (fold_const_call_1): Remove memchr handling here.
	(fold_const_call) <case CFN_BUILT_IN_STRNCMP,
	case CFN_BUILT_IN_STRNCASECMP>: Formatting improvements.
	(fold_const_call) <case CFN_BUILT_IN_MEMCMP>: Likewise.  If s2 is 0
	and arguments have no side-effects, return 0.
	(fold_const_call): Handle CFN_BUILT_IN_MEMCHR.

	* g++.dg/cpp0x/constexpr-memchr.C: New test.

From-SVN: r243285
2016-12-06 10:23:51 +01:00
Jakub Jelinek
bf2d0849a3 re PR c++/71537 (GCC rejects consetxpr boolean conversions and comparisons on the result of pointer arithmetic.)
PR c++/71537
	* fold-const-call.c (fold_const_call): Handle
	CFN_BUILT_IN_{INDEX,STRCHR,RINDEX,STRRCHR}.

	* g++.dg/cpp0x/constexpr-strchr.C: New test.

From-SVN: r243284
2016-12-06 10:22:36 +01:00
Jakub Jelinek
0d3ce69b79 re PR tree-optimization/78675 (ICE: verify_gimple failed (error: integral result type precision does not match field size of BIT_FIELD_REF))
2016-12-06  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/78675
	* tree-vect-loop.c (vectorizable_live_operation): For
	VECTOR_BOOLEAN_TYPE_P vectype use integral type with bitsize precision
	instead of TREE_TYPE (vectype) for the BIT_FIELD_REF.

	* gcc.c-torture/execute/pr78675.c: New test.
	* gcc.target/i386/pr78675-1.c: New test.
	* gcc.target/i386/pr78675-2.c: New test.

From-SVN: r243283
2016-12-06 10:21:13 +01:00
Eric Botcazou
d7ae3739a2 re PR middle-end/78642 (invalid rtl sharing found in the insn)
PR middle-end/78642
	* emit-rtl.c (verify_rtx_sharing) <CLOBBER>: Relax condition.
	(copy_rtx_if_shared_1) <CLOBBER>: Likewise.
	(copy_insn_1) <CLOBBER>: Likewise.

From-SVN: r243282
2016-12-06 07:03:04 +00:00
DJ Delorie
1d2ccddf2e Oops, fix date
From-SVN: r243281
2016-12-06 01:40:07 -05:00
DJ Delorie
2207ff5dd1 * argv.c (expandargv): Check for directories passed as @-files.
From-SVN: r243280
2016-12-06 01:38:23 -05:00
Michael Meissner
202687fb7c re PR target/78688 (PowerPC fails bootstrap)
2016-12-05  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/78688
	* config/rs6000/rs6000.h (FUNCTION_VALUE_REGNO_P): Use IN_RANGE
	instead of ((N) >= (X) && (N) <= (Y-X)) to silence warnings about
	comparing signed to unsigned values.
	(FUNCTION_ARG_REGNO_P): Likewise.

From-SVN: r243278
2016-12-06 00:58:40 +00:00
GCC Administrator
2d170acb26 Daily bump.
From-SVN: r243277
2016-12-06 00:16:18 +00:00
Joseph Myers
51d20f2160 * es.po, fr.po: Update.
From-SVN: r243273
2016-12-05 22:49:31 +00:00
Bill Schmidt
8907a722fd re PR tree-optimization/78646 (incorrect result type for pointer addition in slsr)
2016-12-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
	    Stefan Freudenberger  <stefan@reservoir.com>

	PR tree-optimization/78646
	* gimple-ssa-strength-reduction.c (replace_ref): The pointer
	addition used for the memory base expression should have the type
	of the candidate.


Co-Authored-By: Stefan Freudenberger <stefan@reservoir.com>

From-SVN: r243272
2016-12-05 21:48:27 +00:00
Jeff Law
e3cc0f6bb6 re PR target/71721 (uclinux posix threads)
PR target/71721
	* config.gcc (*-*-uclinux*): Enable posix threads.
Adding BZ marker

From-SVN: r243269
2016-12-05 10:49:41 -07:00
Waldemar Brodkorb
09955a3259 * config.gcc (*-*-uclinux*): Enable posix threads.
From-SVN: r243268
2016-12-05 10:48:39 -07:00
Andrew Senkevich
6901ea625b Add AVX512 k-mask intrinsics
gcc/

2016-12-05  Andrew Senkevich  <andrew.senkevich@intel.com>

	* config/i386/avx512bwintrin.h: Add new k-mask intrinsics.
	* config/i386/avx512dqintrin.h: Ditto.
	* config/i386/avx512fintrin.h: Ditto.
	* config/i386/i386-builtin-types.def (UCHAR_FTYPE_UQI_UQI_PUCHAR,
	UCHAR_FTYPE_UHI_UHI_PUCHAR, UCHAR_FTYPE_USI_USI_PUCHAR,
	UCHAR_FTYPE_UDI_UDI_PUCHAR, UCHAR_FTYPE_UQI_UQI, UCHAR_FTYPE_UHI_UHI,
	UCHAR_FTYPE_USI_USI, UCHAR_FTYPE_UDI_UDI, UQI_FTYPE_UQI_INT,
	UHI_FTYPE_UHI_INT, USI_FTYPE_USI_INT, UDI_FTYPE_UDI_INT,
	UQI_FTYPE_UQI, USI_FTYPE_USI, UDI_FTYPE_UDI, UQI_FTYPE_UQI_UQI): New
	function types.
	* config/i386/i386-builtin.def (__builtin_ia32_knotqi,
	__builtin_ia32_knotsi, __builtin_ia32_knotdi,
	__builtin_ia32_korqi, __builtin_ia32_korsi, __builtin_ia32_kordi,
	__builtin_ia32_kxnorqi, __builtin_ia32_kxnorsi,
	__builtin_ia32_kxnordi, __builtin_ia32_kxorqi, __builtin_ia32_kxorsi,
	__builtin_ia32_kxordi, __builtin_ia32_kandqi,
	__builtin_ia32_kandsi, __builtin_ia32_kanddi, __builtin_ia32_kandnqi,
	__builtin_ia32_kandnsi, __builtin_ia32_kandndi): New.
	* config/i386/i386.c (ix86_expand_args_builtin): Handle new types.

gcc/testsuite/

2016-12-05  Andrew Senkevich  <andrew.senkevich@intel.com>

	* gcc.target/i386/avx512bw-kandd-1.c: New.
	* gcc.target/i386/avx512bw-kandnd-1.c: Ditto.
	* gcc.target/i386/avx512bw-kandnq-1.c: Ditto.
	* gcc.target/i386/avx512bw-kandq-1.c: Ditto.
	* gcc.target/i386/avx512bw-knotd-1.c: Ditto.
	* gcc.target/i386/avx512bw-knotq-1.c: Ditto.
	* gcc.target/i386/avx512bw-kord-1.c: Ditto.
	* gcc.target/i386/avx512bw-korq-1.c: Ditto.
	* gcc.target/i386/avx512bw-kunpckdq-3.c: Ditto.
	* gcc.target/i386/avx512bw-kunpckwd-3.c: Ditto.
	* gcc.target/i386/avx512bw-kxnord-1.c: Ditto.
	* gcc.target/i386/avx512bw-kxnorq-1.c: Ditto.
	* gcc.target/i386/avx512bw-kxord-1.c: Ditto.
	* gcc.target/i386/avx512bw-kxorq-1.c: Ditto.
	* gcc.target/i386/avx512dq-kandb-1.c: Ditto.
	* gcc.target/i386/avx512dq-kandnb-1.c: Ditto.
	* gcc.target/i386/avx512dq-knotb-1.c: Ditto.
	* gcc.target/i386/avx512dq-korb-1.c: Ditto.
	* gcc.target/i386/avx512dq-kxnorb-1.c: Ditto.
	* gcc.target/i386/avx512dq-kxorb-1.c: Ditto.
	* gcc.target/i386/avx512f-kunpckbw-3.c: Ditto.
	* gcc.target/i386/avx512f-kandnw-1.c: Removed unneeded check.

From-SVN: r243265
2016-12-05 09:18:42 -08:00
Segher Boessenkool
a80b4f579a Subject: [PATCH] Revert "Do not simplify "(and (reg) (const bit)" to
if_then_else."


	* combine.c: Revert r243162.

From-SVN: r243256
2016-12-05 14:54:42 +01:00
Paolo Bonzini
519e0faa00 match.pd: Simplify X ? C : 0 where C is a power of 2 and X tests a single bit.
gcc:
* match.pd: Simplify X ? C : 0 where C is a power of 2 and
X tests a single bit.

gcc/testsuite:
* gcc.dg/fold-and-lshift.c, gcc.dg/fold-and-rshift-1.c,
gcc.dg/fold-and-rshift-2.c: New testcases.

From-SVN: r243255
2016-12-05 13:19:34 +00:00
Nathan Sidwell
d0ea9f0aa2 diagnostic.c (diagnostic_check_max_errors): New, broken out of ...
gcc/
	* diagnostic.c (diagnostic_check_max_errors): New, broken out of ...
	(diagnostic_action_after_output): ... here.
	(diagnostic_report_diagnostic): Call it for non-notes.
	* diagnostic.h (struct diagnostic_context): Make max_errors signed
	int.
	(diagnostic_check_max_errors): Declare.

	gcc/fortran/
	* error.c (gfc_warning_check): Call diagnostic_check_max_errors.
	(gfc_error_check): Likewise.

	gcc/testsuite/
	* c-c++-common/fmax_errors.c: Check notes after last error are
	emitted.

From-SVN: r243254
2016-12-05 12:24:39 +00:00
Mikael Pettersson
fb5e7daea5 re PR ada/48835 (porting GNAT to m68k-linux)
PR ada/48835
	* gcc-interface/Makefile.in: Add support for m68k-linux.
	* system-linux-m68k.ads: New file.

From-SVN: r243247
2016-12-05 11:27:55 +00:00
Cupertino Miranda
62440b4f0e [ARC] Fix PIE.
gcc/
2016-12-05  Cupertino Miranda  <cmiranda@synopsys.com>

	* config/arc/arc.h (STARTFILE_SPEC): Use default linux specs.
	(ENDFILE_SPEC): Likewise.

libgcc/
2016-12-05  Cupertino Miranda  <cmiranda@synopsys.com>

	* config.host (arc*-*-linux-uclibc*): Use default extra
	objects. Include linux-android header.
	* config/arc/crti.S (_init): Declare symbol as function.
	(_fini): Likewise.

From-SVN: r243245
2016-12-05 12:16:52 +01:00
Claudiu Zissulescu
5a5c5784d8 [ARC] Remove unused patterns, refactor unspec+offset pattern gen.
2016-12-05  Claudiu Zissulescu  <claziss@synopsys.com>

	* config/arc/arc-protos.h (insn_is_tls_gd_dispatch): Remove.
	* config/arc/arc.c (arc_unspec_offset): New function.
	(arc_finalize_pic): Change.
	(arc_emit_call_tls_get_addr): Likewise.
	(arc_legitimize_tls_address): Likewise.
	(arc_legitimize_pic_address): Likewise.
	(insn_is_tls_gd_dispatch): Remove.
	* config/arc/arc.h (INSN_REFERENCES_ARE_DELAYED): Change.
	* config/arc/arc.md (ls_gd_load): Remove unused pattern.
	(tls_gd_dispatch): Likewise.

From-SVN: r243244
2016-12-05 12:16:38 +01:00
Eric Botcazou
aad6838ec7 system-darwin-ppc.ads (Support_Atomic_Primitives): Set to True only if the word size is 64.
* system-darwin-ppc.ads (Support_Atomic_Primitives): Set to True only
	if the word size is 64.

From-SVN: r243243
2016-12-05 11:15:17 +00:00
Andre Vieira
5ffd5f3696 Fix arm-netbsdelf bootstrap.
2016-12-025  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* config/arm/arm.c (TARGET_ASM_INIT_SECTIONS): Fix wrong undef
	location.

From-SVN: r243240
2016-12-05 09:44:24 +00:00
James Greenhalgh
648e17d28d [Patch 2/2 PR78561] Recalculate constant pool size before emitting it
gcc/testsuite/

	PR rtl-optimization/78561
	* gcc.target/aarch64/pr78561.c: Add missing testcase from r243183.

From-SVN: r243239
2016-12-05 09:35:28 +00:00
Eric Botcazou
dc7342d291 sparc-protos.h (sparc_splitdi_legitimate): Rename to...
* config/sparc/sparc-protos.h (sparc_splitdi_legitimate): Rename to...
	(sparc_split_reg_mem_legitimate): ...this.
	(sparc_split_reg_mem): Declare.
	(sparc_split_mem_reg): Likewise.
	(sparc_split_regreg_legitimate): Rename to...
	(sparc_split_reg_reg_legitimate): ...this.
	* config/sparc/sparc.c (sparc_splitdi_legitimate): Rename to...
	(sparc_split_reg_mem_legitimate): ...this.
	(sparc_split_reg_mem): New function.
	(sparc_split_mem_reg): Likewise.
	(sparc_split_regreg_legitimate): Rename to...
	(sparc_split_reg_reg_legitimate): ...this.
	(sparc_split_reg_reg): New function.
	* config/sparc/sparc.md (lra): Remove "none" value.
	(enabled): Adjust to above change.
	(*movdi_insn_sp32): Remove new (r,T) alternative and reorder others.
	(DImode splitters): Adjust to above renamings and use new functions.
	(*movdf_insn_sp32): Remove new (r,T) alternative and reorder others.
	(DFmode splitters): Adjust to above renamings and use new functions.
	(*mov<VM64:mode>_insn_sp64): Replace C with Z constraint and use W
	constraint in conjunction with e.
	(*mov<VM64:mode>_insn_sp32): Remove new (r,T) alternative, add (o,Y)
	alternative and reorder others.
	(VM64:mode splitters): Adjust to above renamings and use new functions.

From-SVN: r243238
2016-12-05 09:30:57 +00:00
GCC Administrator
b2a8d083c5 Daily bump.
From-SVN: r243235
2016-12-05 00:16:15 +00:00
Janus Weil
aa7cfe4057 re PR fortran/78618 (ICE in gfc_check_rank, at fortran/check.c:3670)
2016-12-04  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/78618
	* intrinsic.c (gfc_convert_type_warn): Do not set the full typespec for
	the conversion symbol, but only type and kind. Set the full typespec
	for the expression.
	(gfc_convert_chartype): Ditto.

From-SVN: r243232
2016-12-04 21:31:26 +01:00
Martin Sebor
5dcf456180 PR c/78668 - aligned_alloc, realloc, et al. missing attribute alloc_size
gcc/ChangeLog:

	PR c/78668
        * builtin-attrs.def (ATTR_ALLOC_SIZE, ATTR_RETURNS_NONNULL): New
        identifier tree nodes.
        (ATTR_ALLOCA_SIZE_1_NOTHROW_LEAF_LIST): New attribute list.
        (ATTR_MALLOC_SIZE_1_NOTHROW_LIST): Same.
        (ATTR_MALLOC_SIZE_1_NOTHROW_LEAF_LIST): Same.
        (ATTR_MALLOC_SIZE_1_2_NOTHROW_LEAF_LIST): Same.
        (ATTR_ALLOC_SIZE_2_NOTHROW_LEAF_LIST): Same.
        * builtins.def (aligned_alloc, calloc, malloc, realloc):
        Add attribute alloc_size.
        (alloca): Add attribute alloc_size and returns_nonnull.

gcc/testsuite/ChangeLog:

	PR c/78668
	* gcc.dg/builtin-alloc-size.c: New test.

From-SVN: r243231
2016-12-04 10:48:44 -07:00
Uros Bizjak
6b7d845323 re PR target/70322 (STV doesn't optimize andn)
PR target/70322
	* config/i386/i386.c (dimode_scalar_to_vector_candidate_p): Handle NEG.
	(dimode_scalar_chain::compute_convert_gain): Ditto.
	(dimode_scalar_chain::convert_insn): Ditto.

testsuite/ChangeLog:

	PR target/70322
	* gcc.target/i386/pr70322-4.c: New test.

From-SVN: r243228
2016-12-04 15:38:05 +01:00
GCC Administrator
c818397a98 Daily bump.
From-SVN: r243227
2016-12-04 00:16:17 +00:00
Janus Weil
4ceda20498 re PR fortran/43207 ([OOP] invalid (pointer) assignment to and from abstract non-polymorphic expressions)
2016-12-03  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/43207
	* primary.c (gfc_match_varspec): Reject nonpolymorphic references to
	abstract types.

2016-12-03  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/43207
	* gfortran.dg/abstract_type_9.f90: New test case.

From-SVN: r243224
2016-12-03 19:48:48 +01:00
Janus Weil
20fee4a901 re PR fortran/42188 ([OOP] F03:C612. The leftmost part-name shall be the name of a data object.)
2016-12-03  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/42188
	* primary.c (gfc_match_rvalue): Add a new check that gives better error
	messages.

2016-12-03  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/42188
	* gfortran.dg/derived_result_2.f90.f90: New test case.

From-SVN: r243223
2016-12-03 19:37:57 +01:00
Eric Botcazou
54b84aa945 lra-constraints.c (emit_spill_move): Use gen_lowpart_SUBREG in all cases to build a lowpart SUBREG.
* lra-constraints.c (emit_spill_move): Use gen_lowpart_SUBREG in all
	cases to build a lowpart SUBREG.

From-SVN: r243222
2016-12-03 17:37:13 +00:00