Commit Graph

128130 Commits

Author SHA1 Message Date
Mikael Morin
792f73016e re PR fortran/57033 (ICE on extended derived type and default initialization)
fortran/
        PR fortran/57033
        * primary.c (gfc_convert_to_structure_constructor): Avoid null pointer
        dereference.

testsuite/
        PR fortran/57033
        * gfortran.dg/default_initialization_7.f90: New test.

From-SVN: r207396
2014-02-02 11:50:28 +00:00
GCC Administrator
e36c121143 Daily bump.
From-SVN: r207393
2014-02-02 00:16:55 +00:00
Paul Thomas
da78a06769 re PR fortran/59906 (error: size of variable '<anonymous>' is too large)
2014-02-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/59906
	* trans-stmt.c (gfc_add_loop_ss_code): In the case of character
	SS_REFERENCE, use gfc_conv_string_parameter to ensure that a
	pointer to the string is stored.
	* trans-expr.c (gfc_conv_expr_reference): Likewise, use
	gfc_conv_string_parameter to ensure that a pointer to is passed
	to the elemental function.

2014-02-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/59906
	* gfortran.dg/elemental_subroutine_9.f90 : New test

From-SVN: r207389
2014-02-01 18:50:41 +00:00
Dmitry Gorbachev
bca420ed5f re PR other/56653 (Warning when verifying checksums from MD5SUMS file in tarballs)
PR other/56653
	* gcc_release: Avoid printing empty line to generated MD5SUMS files.
	Bump copyright year.

From-SVN: r207387
2014-02-01 12:01:56 +00:00
Richard Sandiford
e1a9abc608 ssa-dom-thread-4.c: Adjust expected MIPS output.
gcc/testsuite/
	* gcc.dg/tree-ssa/ssa-dom-thread-4.c: Adjust expected MIPS output.

From-SVN: r207386
2014-02-01 11:50:38 +00:00
Richard Sandiford
16b822eba6 pr49718.C: Use -mno-relax-pic-calls for MIPS.
gcc/testsuite/
	* g++.dg/pr49718.C: Use -mno-relax-pic-calls for MIPS.

From-SVN: r207385
2014-02-01 10:41:37 +00:00
Richard Sandiford
cf0ac75684 vector26.C: Restrict scan-assembler test to ! c++98.
gcc/testsuite/
	* g++.dg/ext/vector26.C: Restrict scan-assembler test to ! c++98.

From-SVN: r207384
2014-02-01 10:33:36 +00:00
Paolo Carlini
4244ec23df re PR c++/51219 (ICE with empty bit-fields)
/cp
2014-02-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51219
	* typeck2.c (process_init_constructor_record): Just skip unnamed
	bit-fields.

/testsuite
2014-02-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51219
	* g++.dg/init/bitfield5.C: New.

From-SVN: r207383
2014-02-01 09:24:42 +00:00
Jakub Jelinek
021293cb5a re PR tree-optimization/60003 (wrong code with __builtin_setjmp/__builtin_longjmp and inlining)
PR tree-optimization/60003
	* gimple-low.c (lower_builtin_setjmp): Set cfun->has_nonlocal_label.
	* profile.c (branch_prob): Use gimple_call_builtin_p
	to check for BUILT_IN_SETJMP_RECEIVER.
	* tree-inline.c (copy_bb): Call notice_special_calls.

	* gcc.c-torture/execute/pr60003.c: New test.

From-SVN: r207382
2014-02-01 09:40:31 +01:00
GCC Administrator
b49e41743c Daily bump.
From-SVN: r207378
2014-02-01 00:17:04 +00:00
Vladimir Makarov
6334f3e99b re PR bootstrap/59985 (stage2/3 compare error on lto-streamer-in.o)
2014-01-31  Vladimir Makarov  <vmakarov@redhat.com>

	PR bootstrap/59985
	* lra-constraints.c (process_alt_operands): Update reload_sum only
	on the first pass.

2014-01-31  Vladimir Makarov  <vmakarov@redhat.com>

	PR bootstrap/59985
	* gcc.target/arm/pr59985.C: New.

From-SVN: r207375
2014-01-31 23:56:46 +00:00
Jakub Jelinek
eecd8b7c00 re PR sanitizer/59410 (tsan tests fail with address randomization disabled)
PR sanitizer/59410
	* lib/tsan-dg.exp (tsan_init): Instead of not running any
	tsan tests if trivial testcase doesn't run, set dg-do-what-default
	to compile.
	(tsan_finish): Restore dg-do-what-default.
	* g++.dg/tsan/atomic_free.C: Remove dg-do line.
	* g++.dg/tsan/fd_close_norace2.C: Likewise.
	* g++.dg/tsan/default_options.C: Likewise.
	* g++.dg/tsan/aligned_vs_unaligned_race.C: Likewise.
	* g++.dg/tsan/atomic_free2.C: Likewise.
	* g++.dg/tsan/cond_race.C: Likewise.
	* g++.dg/tsan/fd_close_norace.C: Likewise.
	* g++.dg/tsan/benign_race.C: Likewise.
	* c-c++-common/tsan/fd_pipe_race.c: Likewise.
	* c-c++-common/tsan/simple_race.c: Likewise.
	* c-c++-common/tsan/mutexset1.c: Likewise.
	* c-c++-common/tsan/thread_leak2.c: Likewise.
	* c-c++-common/tsan/tls_race.c: Likewise.
	* c-c++-common/tsan/write_in_reader_lock.c: Likewise.
	* c-c++-common/tsan/race_on_barrier2.c: Likewise.
	* c-c++-common/tsan/free_race2.c: Likewise.
	* c-c++-common/tsan/thread_leak.c: Likewise.
	* c-c++-common/tsan/thread_leak1.c: Likewise.
	* c-c++-common/tsan/race_on_barrier.c: Likewise.
	* c-c++-common/tsan/free_race.c: Likewise.
	* c-c++-common/tsan/sleep_sync.c: Likewise.
	* c-c++-common/tsan/tiny_race.c: Likewise.
	* c-c++-common/tsan/race_on_mutex2.c: Likewise.
	* c-c++-common/tsan/atomic_stack.c: Likewise.
	* c-c++-common/tsan/race_on_mutex.c: Likewise.  Adjust line numbers
	in dg-output regexps.
	* c-c++-common/tsan/simple_stack.c: Likewise.

From-SVN: r207371
2014-01-31 22:25:23 +01:00
Richard Henderson
efa7882fa6 re PR middle-end/60004 (Conditional return within transaction causes ICE)
PR middle-end/60004

        * tree-eh.c (lower_try_finally_switch): Delay lowering finally block
        until after else_eh is processed.

	* g++.dg/tm/pr60004.C: New.

From-SVN: r207367
2014-01-31 11:35:31 -08:00
Jason Merrill
3d27e0669d re PR ipa/59469 (LLVM build failure with gcc LTO)
PR c++/59469
	* pt.c (mark_decl_instantiated): Call mark_needed.

From-SVN: r207366
2014-01-31 13:35:53 -05:00
Jason Merrill
d2050c1a43 * g++.dg/tls/thread_local8.C: Require tls.
From-SVN: r207364
2014-01-31 12:30:09 -05:00
Jason Merrill
6962711f95 re PR c++/58672 ([c++11] ICE with thread_local and variable of broken class)
PR c++/58672
	* decl2.c (handle_tls_init): Handle null init fn.

From-SVN: r207363
2014-01-31 12:30:03 -05:00
Jason Merrill
99a82a1e16 re PR c++/55800 (Link failure with thread_local in unnamed namespace)
PR c++/55800
	* decl2.c (get_tls_init_fn): Copy DECL_EXTERNAL from the variable.

From-SVN: r207360
2014-01-31 11:25:55 -05:00
Paolo Carlini
f1f82a37ae re PR c++/59082 (ICE with duplicate (virtual) base)
/cp
2014-01-31  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/59082
	* class.c (build_vfield_ref): Early return error_mark_node if
	TYPE_VFIELD (type) is null.
	(build_base_path): Check return value of build_vfield_ref.

/testsuite
2014-01-31  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/59082
	* g++.dg/inherit/crash4.C: New.

From-SVN: r207359
2014-01-31 16:22:53 +00:00
Arnaud Charlet
d66f9f0b1a [multiple changes]
2014-01-31  Robert Dewar  <dewar@adacore.com>

	* exp_ch9.adb: Minor reformatting.

2014-01-31  Emmanuel Briot  <briot@adacore.com>

	* g-comlin.adb (Set_Command_Line): Take the switches
	configuration from the Command_Line_Config.

2014-01-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Refinement_Clause): Guard against a malformed
	refinement clause.

2014-01-31  Vincent Celier  <celier@adacore.com>

	* projects.texi: Add more documentation about others used as an
	index in indexed attributes.

From-SVN: r207358
2014-01-31 17:03:54 +01:00
Arnaud Charlet
f3920a1360 [multiple changes]
2014-01-31  Robert Dewar  <dewar@adacore.com>

	* gnat_ugn.texi: Minor update.
	* gnat_rm.texi: Add example to Restriction_Warnings documentation.
	* exp_util.adb: Minor reformatting.

2014-01-31  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch9.adb (Expand_Entry_Barrier): Warn if the barrier
	depends on data that is not private to the protected object,
	and potentially modifiable in unsynchronized fashion.

From-SVN: r207357
2014-01-31 16:59:59 +01:00
Arnaud Charlet
31d922e39a [multiple changes]
2014-01-31  Yannick Moy  <moy@adacore.com>

	* erroutc.adb (Validate_Specific_Warnings): Remove special case for
	GNATprove_Mode.

2014-01-31  Robert Dewar  <dewar@adacore.com>

	* prj-attr.ads (First_Attribute_Of): Returns Empty_Attribute
	for Unknown_Package.
	* sem_ch6.adb, sem_attr.adb: Minor comment addition.

2014-01-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_util.adb (Build_Allocate_Deallocate_Proc): Rewrite
	the logic that generates a runtime check to determine the
	controlled status of the object about to be allocated or
	deallocated. Class-wide types now always use a runtime check
	even if they appear as generic actuals.
	(Find_Object): Detect
	a special case that involves interface class-wide types because
	the object appears as a complex expression.

From-SVN: r207356
2014-01-31 16:56:44 +01:00
Arnaud Charlet
5b6f12c7bf [multiple changes]
2014-01-31  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Process_Formals): In Ada2012 mode, place
	subprogram with an incomplete untagged formals on the list of
	private dependents, to verify that the type is properly completed
	in the private part.
	* sem_attr.adb: Code clean up.

2014-01-31  Robert Dewar  <dewar@adacore.com>

	* exp_ch6.adb: Minor reformatting.

2014-01-31  Vincent Celier  <celier@adacore.com>

	* prj-attr.adb (First_Attribute_Of): Return Unknown_Attribute
	when Pkg is unknown.

From-SVN: r207354
2014-01-31 16:53:25 +01:00
Arnaud Charlet
d950f05197 [multiple changes]
2014-01-31  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_res.adb (Resolve_Entity_Name): Comment
	reformatting. Allow volatile objects in various generated checks.

2014-01-31  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Analyze_Attribute, case 'Update): For a record
	component association, set the etype of the identifier, for
	SPARK use.

2014-01-31  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch6.adb (Has_Visibility_Of_Subprogram): If type is not
	declared in a package, not checks can apply to the subprogram.

From-SVN: r207353
2014-01-31 16:51:51 +01:00
Arnaud Charlet
74c101097f [multiple changes]
2014-01-31  Robert Dewar  <dewar@adacore.com>

	* erroutc.adb (Validate_Specific_Warnings): Warnings are
	controlled -gnatw.W.
	* gnat_ugn.texi: Document new warnings controlled by -gnatw.w.
	* opt.ads (Warn_On_Warnings_Off): Now controls more cases.

2014-01-31  Arnaud Charlet  <charlet@adacore.com>

	* exp_disp.adb: Update comments.

2014-01-31  Yannick Moy  <moy@adacore.com>

	* sem_ch12.adb (Analyze_Generic_Subprogram_Declaration,
	Save_Global_References): Guard access to expression in aspect.

2014-01-31  Yannick Moy  <moy@adacore.com>

	* sem_prag.adb (Analyze_Pragma/Pragma_SPARK_Mode):
	Issue an error when the pragma is applied to a generic unit,
	a generic declaration, or inside a generic.

2014-01-31  Yannick Moy  <moy@adacore.com>

	* sem_ch8.adb (Analyze_Subprogram_Renaming): Set SPARK_Mode on renaming
	entity.

From-SVN: r207352
2014-01-31 16:46:40 +01:00
Arnaud Charlet
bdfb8ec4aa [multiple changes]
2014-01-31  Robert Dewar  <dewar@adacore.com>

	* exp_ch9.adb, s-tassta.adb, s-tposen.adb, s-tposen.ads: Minor
	reformatting.

2014-01-31  Tristan Gingold  <gingold@adacore.com>

	* exp_disp.adb: Add a historic note.

2014-01-31  Robert Dewar  <dewar@adacore.com>

	* sem_warn.adb (Warn_On_Useless_Assignments): Add call to
	Process_Deferred_References.

2014-01-31  Yannick Moy  <moy@adacore.com>

	* erroutc.adb (Validate_Specific_Warnings): Do not issue a message for
	ineffective pragma Warnings(Off) in GNATprove_Mode.

From-SVN: r207351
2014-01-31 16:45:08 +01:00
Bob Duff
5b0e6852b1 s-taskin.ads: Minor comment fix.
2014-01-31  Bob Duff  <duff@adacore.com>

	* s-taskin.ads: Minor comment fix.
	* s-tassta.adb (Abort_Dependents): Don't abort all dependents;
	just direct dependents. If this is actually an abort, each task
	will take care of aborting its dependents, so all dependents will
	get aborted, as before. However, when this is called the second
	time from Vulnerable_Complete_Master "for convenience" (i.e. to
	kill off tasks waiting at terminate alternatives), aborting
	indirect dependents is wrong, because it causes some unrelated
	tasks to get aborted.

From-SVN: r207350
2014-01-31 16:43:41 +01:00
Arnaud Charlet
a54ffd6cb9 [multiple changes]
2014-01-31  Robert Dewar  <dewar@adacore.com>

	* sem_ch4.adb: Minor reformatting.

2014-01-31  Robert Dewar  <dewar@adacore.com>

	* exp_ch2.adb: New calling sequence for Is_LHS.
	* frontend.adb: Add call to Process_Deferred_References.
	* lib-xref.ads, lib-xref.adb (Process_Deferred_References): New.
	(Deferred_References): New table.
	* sem_ch8.adb (Find_Direct_Name): Make deferred reference table
	entries.
	(Find_Expanded_Name): Ditto.
	* sem_res.adb: New calling sequence for Is_LHS.
	* sem_util.ads, sem_util.adb (Is_LHS): New calling sequence.
	* sem_warn.adb: Call Process_Deferred_References before issuing
	warnings.

2014-01-31  Tristan Gingold  <gingold@adacore.com>

	* exp_util.adb (Corresponding_Runtime_Package): Restrict the
	use of System_Tasking_Protected_Objects_Single_Entry.
	* exp_ch9.adb (Build_Simple_Entry_Call): Remove Mode parameter
	of Protected_Single_Entry_Call.
	(Expand_N_Timed_Entry_Call): Remove single_entry case.
	* exp_disp.adb (Make_Disp_Asynchronous_Select_Body): Remove
	single_entry case.
	(Make_Disp_Timed_Select_Body): Likewise.
	* rtsfind.ads (RE_Timed_Protected_Single_Entry_Call): Remove.
	* s-tposen.adb (Send_Program_Error, PO_Do_Or_Queue): Remove
	Self_Id parameter.
	(Wakeup_Entry_Caller): Remove Self_ID and New_State parameters.
	(Wait_For_Completion_With_Timeout): Remove.
	(Protected_Single_Entry_Call): Remove Mode parameter
	(always Simple_Call).
	(Service_Entry): Remove Self_Id constant (not used anymore).
	(Timed_Protected_Single_Entry_Call): Remove.
	* s-tposen.ads (Timed_Protected_Single_Entry_Call): Remove.
	(Protected_Single_Entry_Call): Remove Mode parameter.

From-SVN: r207349
2014-01-31 16:39:17 +01:00
Jason Merrill
408249b2e2 re PR c++/59646 (ICE with volatile in initializer list)
PR c++/59646
	* call.c (convert_like_real) [ck_aggr]: Set TARGET_EXPR_LIST_INIT_P.
	[ck_list]: Check for error_mark_node.
	(build_aggr_conv): Set LOOKUP_NO_NARROWING and check_narrowing.

From-SVN: r207346
2014-01-31 10:20:12 -05:00
Jason Merrill
4b55a782a5 re PR c++/57043 (converting overloaded complex function pow in C++11 is ambiguous)
PR c++/57043
	* pt.c (fn_type_unification): Don't do DEDUCE_EXACT check
	during partial ordering.

From-SVN: r207345
2014-01-31 10:20:05 -05:00
Max Ostapenko
af3978a10d * c-c++-common/tsan/simple_race.c: Made test less flaky.
From-SVN: r207344
2014-01-31 15:42:10 +02:00
Ilya Tocar
e0514839c0 m512-check.h: Use correct rounding values.
gcc/testsuite/
        * gcc.target/i386/m512-check.h: Use correct rounding values.

From-SVN: r207343
2014-01-31 13:29:08 +00:00
Ilya Tocar
de72ea020c gcc/
* config/i386/avx512fintrin.h (_MM_FROUND_TO_NEAREST_INT),
	(_MM_FROUND_TO_NEG_INF), (_MM_FROUND_TO_POS_INF),
	(_MM_FROUND_TO_ZERO), (_MM_FROUND_CUR_DIRECTION): Are already defined
	in smmintrin.h, remove them.
	(_MM_FROUND_NO_EXC): Same as above, bit also wrong value.
	* config/i386/i386.c (ix86_print_operand): Split sae and rounding.
	* config/i386/i386.md (ROUND_SAE): Fix value.
	* config/i386/predicates.md (const_4_or_8_to_11_operand): New.
	(const48_operand): New.
	* config/i386/subst.md (round), (round_expand): Use
	const_4_or_8_to_11_operand.
	(round_saeonly), (round_saeonly_expand): Use const48_operand.

gcc/testsuite/
	* gcc.target/i386/avx-1.c: Use correct rounding values.
        * gcc.target/i386/avx512f-vaddpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vaddps-1.c: Ditto.
        * gcc.target/i386/avx512f-vaddsd-1.c: Ditto.
        * gcc.target/i386/avx512f-vaddss-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtdq2ps-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtpd2dq-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtpd2ps-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtpd2udq-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtps2dq-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtps2udq-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtsd2si-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtsd2si64-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtsd2ss-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtsd2usi-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtsd2usi64-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtsi2sd64-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtsi2ss-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtsi2ss64-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtss2si-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtss2si64-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtss2usi-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtss2usi64-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtudq2ps-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtusi2sd64-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtusi2ss-1.c: Ditto.
        * gcc.target/i386/avx512f-vcvtusi2ss64-1.c: Ditto.
        * gcc.target/i386/avx512f-vdivpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vdivps-1.c: Ditto.
        * gcc.target/i386/avx512f-vdivsd-1.c: Ditto.
        * gcc.target/i386/avx512f-vdivss-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmaddXXXpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmaddXXXps-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmaddXXXsd-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmaddXXXss-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmaddsubXXXpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmaddsubXXXps-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmsubXXXpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmsubXXXps-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmsubXXXsd-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmsubXXXss-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmsubaddXXXpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vfmsubaddXXXps-1.c: Ditto.
        * gcc.target/i386/avx512f-vfnmaddXXXpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vfnmaddXXXps-1.c: Ditto.
        * gcc.target/i386/avx512f-vfnmaddXXXsd-1.c: Ditto.
        * gcc.target/i386/avx512f-vfnmaddXXXss-1.c: Ditto.
        * gcc.target/i386/avx512f-vfnmsubXXXpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vfnmsubXXXps-1.c: Ditto.
        * gcc.target/i386/avx512f-vfnmsubXXXsd-1.c: Ditto.
        * gcc.target/i386/avx512f-vfnmsubXXXss-1.c: Ditto.
        * gcc.target/i386/avx512f-vmulpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vmulps-1.c: Ditto.
        * gcc.target/i386/avx512f-vmulsd-1.c: Ditto.
        * gcc.target/i386/avx512f-vmulss-1.c: Ditto.
        * gcc.target/i386/avx512f-vscalefpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vscalefps-1.c: Ditto.
        * gcc.target/i386/avx512f-vscalefsd-1.c: Ditto.
        * gcc.target/i386/avx512f-vscalefss-1.c: Ditto.
        * gcc.target/i386/avx512f-vsqrtpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vsqrtps-1.c: Ditto.
        * gcc.target/i386/avx512f-vsqrtsd-1.c: Ditto.
        * gcc.target/i386/avx512f-vsqrtss-1.c: Ditto.
        * gcc.target/i386/avx512f-vsubpd-1.c: Ditto.
        * gcc.target/i386/avx512f-vsubps-1.c: Ditto.
        * gcc.target/i386/avx512f-vsubsd-1.c: Ditto.
        * gcc.target/i386/avx512f-vsubss-1.c: Ditto.
        * gcc.target/i386/sse-13.c: Ditto.
        * gcc.target/i386/sse-14.c: Ditto.
        * gcc.target/i386/sse-22.c: Ditto.
        * gcc.target/i386/sse-23.c: Ditto.

From-SVN: r207342
2014-01-31 13:22:57 +00:00
Ilya Tocar
be792bce4f constraints.md (Yk): Swap meaning with k.
gcc/
	* config/i386/constraints.md (Yk): Swap meaning with k.
	* config/i386/i386.md (movhi_internal): Change Yk to k.
	(movqi_internal): Ditto.
	(*k<logic><mode>): Ditto.
	(*andhi_1): Ditto.
	(*andqi_1): Ditto.
	(kandn<mode>): Ditto.
	(*<code>hi_1): Ditto.
	(*<code>qi_1): Ditto.
	(kxnor<mode>): Ditto.
	(kortestzhi): Ditto.
	(kortestchi): Ditto.
	(kunpckhi): Ditto.
	(*one_cmplhi2_1): Ditto.
	(*one_cmplqi2_1): Ditto.
	* config/i386/sse.md (): Change k to Yk.
	(avx512f_load<mode>_mask): Ditto.
	(avx512f_blendm<mode>): Ditto.
	(avx512f_store<mode>_mask): Ditto.
	(avx512f_storeu<ssemodesuffix>512_mask): Ditto.
	(avx512f_storedqu<mode>_mask): Ditto.
	(avx512f_cmp<mode>3<mask_scalar_merge_name><round_saeonly_name>): Ditto.
	(avx512f_ucmp<mode>3<mask_scalar_merge_name>): Ditto.
	(avx512f_vmcmp<mode>3<round_saeonly_name>): Ditto.
	(avx512f_vmcmp<mode>3_mask<round_saeonly_name>): Ditto.
	(avx512f_maskcmp<mode>3): Ditto.
	(avx512f_fmadd_<mode>_mask<round_name>): Ditto.
	(avx512f_fmadd_<mode>_mask3<round_name>): Ditto.
	(avx512f_fmsub_<mode>_mask<round_name>): Ditto.
	(avx512f_fmsub_<mode>_mask3<round_name>): Ditto.
	(avx512f_fnmadd_<mode>_mask<round_name>): Ditto.
	(avx512f_fnmadd_<mode>_mask3<round_name>): Ditto.
	(avx512f_fnmsub_<mode>_mask<round_name>): Ditto.
	(avx512f_fnmsub_<mode>_mask3<round_name>): Ditto.
	(avx512f_fmaddsub_<mode>_mask<round_name>): Ditto.
	(avx512f_fmaddsub_<mode>_mask3<round_name>): Ditto.
	(avx512f_fmsubadd_<mode>_mask<round_name>): Ditto.
	(avx512f_fmsubadd_<mode>_mask3<round_name>): Ditto.
	(avx512f_vextract<shuffletype>32x4_1_maskm): Ditto.
	(vec_extract_lo_<mode>_maskm): Ditto.
	(vec_extract_hi_<mode>_maskm): Ditto.
	(avx512f_vternlog<mode>_mask): Ditto.
	(avx512f_fixupimm<mode>_mask<round_saeonly_name>): Ditto.
	(avx512f_sfixupimm<mode>_mask<round_saeonly_name>): Ditto.
	(avx512f_<code><pmov_src_lower><mode>2_mask): Ditto.
	(avx512f_<code>v8div16qi2_mask): Ditto.
	(avx512f_<code>v8div16qi2_mask_store): Ditto.
	(avx512f_eq<mode>3<mask_scalar_merge_name>_1): Ditto.
	(avx512f_gt<mode>3<mask_scalar_merge_name>): Ditto.
	(avx512f_testm<mode>3<mask_scalar_merge_name>): Ditto.
	(avx512f_testnm<mode>3<mask_scalar_merge_name>): Ditto.
	(*avx512pf_gatherpf<mode>sf_mask): Ditto.
	(*avx512pf_gatherpf<mode>df_mask): Ditto.
	(*avx512pf_scatterpf<mode>sf_mask): Ditto.
	(*avx512pf_scatterpf<mode>df_mask): Ditto.
	(avx512cd_maskb_vec_dupv8di): Ditto.
	(avx512cd_maskw_vec_dupv16si): Ditto.
	(avx512f_vpermi2var<mode>3_maskz): Ditto.
	(avx512f_vpermi2var<mode>3_mask): Ditto.
	(avx512f_vpermi2var<mode>3_mask): Ditto.
	(avx512f_vpermt2var<mode>3_maskz): Ditto.
	(*avx512f_gathersi<mode>): Ditto.
	(*avx512f_gathersi<mode>_2): Ditto.
	(*avx512f_gatherdi<mode>): Ditto.
	(*avx512f_gatherdi<mode>_2): Ditto.
	(*avx512f_scattersi<mode>): Ditto.
	(*avx512f_scatterdi<mode>): Ditto.
	(avx512f_compress<mode>_mask): Ditto.
	(avx512f_compressstore<mode>_mask): Ditto.
	(avx512f_expand<mode>_mask): Ditto.
	* config/i386/subst.md (mask): Change k to Yk.
	(mask_scalar_merge): Ditto.
	(sd): Ditto.

gcc/testsuite/
	* gcc.target/i386/avx512f-inline-asm.c: Swap Yk and k.
	* gcc.target/i386/avx512f-kmovw-1.c: Also allow k0.

From-SVN: r207341
2014-01-31 13:19:10 +00:00
Marc Glisse
0878d68a0b extend.texi (Vector Extensions): Document ?: in C++.
2014-01-31  Marc Glisse  <marc.glisse@inria.fr>

gcc/
	* doc/extend.texi (Vector Extensions): Document ?: in C++.

From-SVN: r207340
2014-01-31 12:59:44 +00:00
Jakub Jelinek
6c02e13986 Fix a typo.
From-SVN: r207339
2014-01-31 13:52:39 +01:00
Richard Biener
fdfd537bcb re PR middle-end/59990 (incorrect memcpy optimization)
2014-01-31  Richard Biener  <rguenther@suse.de>

	PR middle-end/59990
	* builtins.c (fold_builtin_memory_op): Make sure to not
	use a floating-point mode or a boolean or enumeral type for
	the copy operation.

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

From-SVN: r207338
2014-01-31 11:54:26 +00:00
Jakub Jelinek
798888a050 tsan-dg.exp (tsan_init): Try to run a trivial program, if it fails don't run any tsan tests.
* lib/tsan-dg.exp (tsan_init): Try to run a trivial program,
	if it fails don't run any tsan tests.

From-SVN: r207337
2014-01-31 12:30:46 +01:00
Marek Polacek
81e5eca873 re PR c/59963 (Wrong column number for warning -Woverflow)
PR c/59963
c-family/
	* c-common.c (add_atomic_size_parameter): Pass vNULL to
	build_function_call_vec.
	(resolve_overloaded_builtin): Likewise.
	* c-common.h (build_function_call_vec): Adjust declaration.
cp/
	* typeck.c (build_function_call_vec): Add dummy arg_loc parameter.
c/
	* c-typeck.c (convert_lvalue_to_rvalue): Pass vNULL to
	build_function_call_vec.
	(build_function_call): Likewise.
	(build_atomic_assign): Likewise.
	(build_function_call_vec): Add arg_loc parameter.  Use it.
	(convert_arguments): Likewise.
	(convert_for_assignment): Rename rhs_loc to expr_loc.
	* c-parser.c (c_parser_attributes): Pass NULL to c_parser_expr_list.
	(c_parser_objc_keywordexpr): Likewise.
	(c_parser_postfix_expression_after_primary): Call
	build_function_call_vec with expr_loc rather than op_loc.
	Call c_parser_expr_list to fill arg_loc.  Pass arg_loc to
	build_function_call_vec.
	(c_parser_expr_list): Add locations parameter.  Fill it with locations
	of function arguments.
	* c-decl.c (finish_decl): Pass vNULL to build_function_call_vec.
objc/
	* objc-next-runtime-abi-02.c (build_throw_stmt): Pass vNULL to
	build_function_call_vec.
	(finish_catch): Likewise.
	(next_runtime_abi_02_get_class_reference): Likewise.
	* objc-next-runtime-abi-01.c (build_objc_method_call): Pass vNULL to
	build_function_call_vec.
	(build_throw_stmt): Likewise.
	* objc-gnu-runtime-abi-01.c: (build_objc_method_call): Pass vNULL to
	build_function_call_vec.
	(build_throw_stmt): Likewise.
testsuite/
	* gcc.dg/pr59940.c (g): Adjust dg-warning.
	(y): Adjust dg-error.
	* gcc.dg/cast-function-1.c (bar): Adjust dg-warnings.
	* gcc.dg/pr59963-1.c: New test.
	* gcc.dg/pr59963-2.c: New test.
	* gcc.dg/pr59963-3.c: New test.

From-SVN: r207335
2014-01-31 08:13:50 +00:00
DJ Delorie
4f50b9ff56 msp430.h (LIB_SPEC): Add -lcrt
* config/msp430/msp430.h (LIB_SPEC): Add -lcrt
* config/msp430/msp430.md (msp430_refsym_need_exit): New.
* config/msp430/msp430.c (msp430_expand_epilogue): Call it
whenever main() has an epilogue.

From-SVN: r207334
2014-01-30 23:17:38 -05:00
Jason Merrill
f221dc810d re PR c++/57899 (bind/function with data member: infinite recursion)
PR c++/57899
	* cp-tree.h (struct saved_scope): Add x_local_specializations.
	(local_specializations): New macro.
	* pt.c (local_specializations): Remove variable.

From-SVN: r207332
2014-01-30 22:47:22 -05:00
Ian Lance Taylor
56e13ae006 compiler: Use backend interface for conditional expressions.
From-SVN: r207330
2014-01-31 01:58:12 +00:00
GCC Administrator
8fec1e9b78 Daily bump.
From-SVN: r207329
2014-01-31 00:16:31 +00:00
Bill Schmidt
c3e9607310 rs6000.c (rs6000_expand_vector_init): Remove unused variable "field".
2014-01-30  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/rs6000.c (rs6000_expand_vector_init): Remove
	unused variable "field".
	* config/rs6000/vsx.md (vsx_mergel_<mode>): Add missing DONE.
	(vsx_mergeh_<mode>): Likewise.
	* config/rs6000/altivec.md (altivec_vmrghb): Likewise.
	(altivec_vmrghh): Likewise.
	(altivec_vmrghw): Likewise.
	(altivec_vmrglb): Likewise.
	(altivec_vmrglh): Likewise.
	(altivec_vmrglw): Likewise.
	(altivec_vspltb): Add missing uses.
	(altivec_vsplth): Likewise.
	(altivec_vspltw): Likewise.
	(altivec_vspltsf): Likewise.

From-SVN: r207326
2014-01-30 22:36:13 +00:00
Jakub Jelinek
4bb9c32da1 re PR regression/59923 (ICE in maybe_record_trace_start, at dwarf2cfi.c:2239 with -mcpu=cortex-a15 -mthumb -O2 -fvisibility=hidden -g)
PR target/59923
	* ifcvt.c (cond_exec_process_insns): Don't conditionalize
	frame related instructions.

	* gcc.target/arm/pr59923.c: New test.

From-SVN: r207324
2014-01-30 22:48:08 +01:00
Vladimir Makarov
7613fa5075 re PR rtl-optimization/59959 (LRA ICEs on a fortran case(Suspected to be similar to pr59915))
2014-01-30  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/59959
	* lra-constrains.c (simplify_operand_subreg): Assign NO_REGS to
	any reload of register whose subreg is invalid.

From-SVN: r207323
2014-01-30 21:15:51 +00:00
Jakub Jelinek
6fb82517e8 f16cintrin.h (_cvtsh_ss): Avoid -Wnarrowing warning.
* config/i386/f16cintrin.h (_cvtsh_ss): Avoid -Wnarrowing
	warning.
	* config/i386/avx512fintrin.h (_mm512_mask_cvtusepi64_storeu_epi32):
	Add missing return type - void.

From-SVN: r207321
2014-01-30 21:05:32 +01:00
Richard Sandiford
35e519c484 re PR c++/58708 (string literal operator templates broken)
gcc/cp/
	PR c++/58708
	* parser.c (make_string_pack): Use double_int::from_buffer.

From-SVN: r207320
2014-01-30 19:44:06 +00:00
Bill Schmidt
bf53d4b89e rs6000.c (rs6000_expand_vector_init): Use gen_vsx_xxspltw_v4sf_direct instead of gen_vsx_xxspltw_v4sf...
gcc:

2014-01-30  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc/config/rs6000/rs6000.c (rs6000_expand_vector_init): Use
	gen_vsx_xxspltw_v4sf_direct instead of gen_vsx_xxspltw_v4sf;
	remove element index adjustment for endian (now handled in vsx.md
	and altivec.md).
	(altivec_expand_vec_perm_const): Use
	gen_altivec_vsplt[bhw]_direct instead of gen_altivec_vsplt[bhw].
	* gcc/config/rs6000/vsx.md (UNSPEC_VSX_XXSPLTW): New unspec.
	(vsx_xxspltw_<mode>): Adjust element index for little endian.
	* gcc/config/rs6000/altivec.md (altivec_vspltb): Divide into a
	define_expand and a new define_insn *altivec_vspltb_internal;
	adjust for -maltivec=be on a little endian target.
	(altivec_vspltb_direct): New.
	(altivec_vsplth): Divide into a define_expand and a new
	define_insn *altivec_vsplth_internal; adjust for -maltivec=be on a
	little endian target.
	(altivec_vsplth_direct): New.
	(altivec_vspltw): Divide into a define_expand and a new
	define_insn *altivec_vspltw_internal; adjust for -maltivec=be on a
	little endian target.
	(altivec_vspltw_direct): New.
	(altivec_vspltsf): Divide into a define_expand and a new
	define_insn *altivec_vspltsf_internal; adjust for -maltivec=be on
	a little endian target.

gcc/testsuite:

2014-01-30  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc.dg/vmx/splat.c: New.
	* gcc.dg/vmx/splat-vsx.c: New.
	* gcc.dg/vmx/splat-be-order.c: New.
	* gcc.dg/vmx/splat-vsx-be-order.c: New.
	* gcc.dg/vmx/eg-5.c: Remove special casing for little endian.
	* gcc.dg/vmx/sn7153.c: Add special casing for little endian.

From-SVN: r207318
2014-01-30 18:59:55 +00:00
Richard Biener
c965e18748 re PR middle-end/59993 (ICE: SSA corruption)
2014-01-30  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/59993
	* tree-ssa-forwprop.c (associate_pointerplus): Check we
	can propagate form the earlier stmt and avoid the transform
	when the intermediate result is needed.

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

From-SVN: r207316
2014-01-30 18:28:19 +00:00
Richard Sandiford
5f71f3d3e0 pr33426-ivdep.cc, [...]: Require vect_int rather than vect_float.
gcc/testsuite/
	* g++.dg/vect/pr33426-ivdep.cc, g++.dg/vect/pr33426-ivdep-2.cc,
	g++.dg/vect/pr33426-ivdep-3.cc, g++.dg/vect/pr33426-ivdep-4.cc,
	gcc.dg/vect/vect-ivdep-1.c, gcc.dg/vect/vect-ivdep-2.c: Require
	vect_int rather than vect_float.

From-SVN: r207315
2014-01-30 18:18:21 +00:00