Richard Sandiford [Sun, 2 Feb 2014 16:17:15 +0000 (16:17 +0000)]
configure.ac: Check __mips64 when setting host_address.
libgcc/
* configure.ac: Check __mips64 when setting host_address.
* configure: Regenerate.
* config.host (mips*-*-*): Add t-softfp-sfdf, mips/t-softfp-tf,
mips/t-mips64 and t-softfp.
(mips*-*-linux*): Don't add mips/t-tpbit.
* config/mips/t-mips (LIB2_SIDITI_CONV_FUNCS, FPBIT, FPBIT_CFLAGS)
(DPBIT, DPBIT_CFLAGS): Delete.
* config/mips/sfp-machine.h: New file.
* config/mips/t-mips64: Likewise.
* config/mips/t-softfp-tf: Likewise.
* config/mips/t-tpbit: Delete.
From-SVN: r207403
Richard Sandiford [Sun, 2 Feb 2014 16:10:12 +0000 (16:10 +0000)]
mips.c (MIPS_GET_FCSR, [...]): New macros.
gcc/
* config/mips/mips.c (MIPS_GET_FCSR, MIPS_SET_FCSR): New macros.
(mips_atomic_assign_expand_fenv): New function.
(TARGET_ATOMIC_ASSIGN_EXPAND_FENV): Define.
From-SVN: r207402
Richard Sandiford [Sun, 2 Feb 2014 16:05:09 +0000 (16:05 +0000)]
extend.texi (__builtin_mips_get_fcsr): Document.
gcc/
* doc/extend.texi (__builtin_mips_get_fcsr): Document.
(__builtin_mips_set_fcsr): Likewise.
* config/mips/mips-ftypes.def: Add MIPS_VOID_FTYPE_USI and
MIPS_USI_FTYPE_VOID.
* config/mips/mips-protos.h (mips16_expand_get_fcsr): Declare
(mips16_expand_set_fcsr): Likewise.
* config/mips/mips.c (mips16_get_fcsr_stub): New variable.
(mips16_set_fcsr_stub): Likewise.
(mips16_get_fcsr_one_only_stub): New class.
(mips16_set_fcsr_one_only_stub): Likewise.
(mips16_expand_get_fcsr, mips16_expand_set_fcsr): New functions.
(mips_code_end): Output the get_fcsr and set_fcsr stubs, if needed.
(BUILTIN_AVAIL_MIPS16, AVAIL_ALL): New macros.
(hard_float): New availability predicate.
(mips_builtins): Add get_fcsr and set_fcsr.
(mips_expand_builtin): Check BUILTIN_AVAIL_MIPS16.
* config/mips/mips.md (UNSPEC_GET_FCSR, UNSPEC_SET_FCSR): New unspecs.
(GET_FCSR_REGNUM, SET_FCSR_REGNUM): New constants.
(mips_get_fcsr, *mips_get_fcsr, mips_get_fcsr_mips16_<mode>)
(mips_set_fcsr, *mips_set_fcsr, mips_set_fcsr_mips16_<mode>): New
patterns.
gcc/testsuite/
* gcc.target/mips/get-fcsr-1.c, gcc.target/mips/get-fcsr-2.c,
gcc.target/mips/set-fcsr-1.c, gcc.target/mips/set-fcsr-2.c: New tests.
From-SVN: r207401
Richard Sandiford [Sun, 2 Feb 2014 15:58:38 +0000 (15:58 +0000)]
mips.c (mips_one_only_stub): New class.
gcc/
* config/mips/mips.c (mips_one_only_stub): New class.
(mips_need_mips16_rdhwr_p): Replace with...
(mips16_rdhwr_stub): ...this new variable.
(mips16_stub_call_address): New function.
(mips16_rdhwr_one_only_stub): New class.
(mips_expand_thread_pointer): Use mips16_stub_call_address.
(mips_output_mips16_rdhwr): Delete.
(mips_finish_stub): New function.
(mips_code_end): Use it to handle rdhwr stubs.
From-SVN: r207400
Uros Bizjak [Sun, 2 Feb 2014 15:35:53 +0000 (16:35 +0100)]
re PR target/60017 (Struct not returned correctly)
PR target/60017
* config/i386/i386.c (classify_argument): Fix handling of bit_offset
when calculating size of integer atomic types.
testsuite/ChangeLog:
PR target/60017
* gcc.c-torture/execute/pr60017.c: New test.
From-SVN: r207399
H.J. Lu [Sun, 2 Feb 2014 14:09:36 +0000 (14:09 +0000)]
Fix a typo in comments
* ipa-inline-analysis.c (true_predicate_p): Fix a typo in comments.
From-SVN: r207398
Uros Bizjak [Sun, 2 Feb 2014 13:59:39 +0000 (14:59 +0100)]
ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.
From-SVN: r207397
Mikael Morin [Sun, 2 Feb 2014 11:50:28 +0000 (11:50 +0000)]
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
GCC Administrator [Sun, 2 Feb 2014 00:16:55 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r207393
Paul Thomas [Sat, 1 Feb 2014 18:50:41 +0000 (18:50 +0000)]
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
Dmitry Gorbachev [Sat, 1 Feb 2014 12:01:56 +0000 (12:01 +0000)]
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
Richard Sandiford [Sat, 1 Feb 2014 11:50:38 +0000 (11:50 +0000)]
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
Richard Sandiford [Sat, 1 Feb 2014 10:41:37 +0000 (10:41 +0000)]
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
Richard Sandiford [Sat, 1 Feb 2014 10:33:36 +0000 (10:33 +0000)]
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
Paolo Carlini [Sat, 1 Feb 2014 09:24:42 +0000 (09:24 +0000)]
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
Jakub Jelinek [Sat, 1 Feb 2014 08:40:31 +0000 (09:40 +0100)]
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
GCC Administrator [Sat, 1 Feb 2014 00:17:04 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r207378
Vladimir Makarov [Fri, 31 Jan 2014 23:56:46 +0000 (23:56 +0000)]
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
Jakub Jelinek [Fri, 31 Jan 2014 21:25:23 +0000 (22:25 +0100)]
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
Richard Henderson [Fri, 31 Jan 2014 19:35:31 +0000 (11:35 -0800)]
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
Jason Merrill [Fri, 31 Jan 2014 18:35:53 +0000 (13:35 -0500)]
re PR ipa/59469 (LLVM build failure with gcc LTO)
PR c++/59469
* pt.c (mark_decl_instantiated): Call mark_needed.
From-SVN: r207366
Jason Merrill [Fri, 31 Jan 2014 17:30:09 +0000 (12:30 -0500)]
* g++.dg/tls/thread_local8.C: Require tls.
From-SVN: r207364
Jason Merrill [Fri, 31 Jan 2014 17:30:03 +0000 (12:30 -0500)]
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
Jason Merrill [Fri, 31 Jan 2014 16:25:55 +0000 (11:25 -0500)]
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
Paolo Carlini [Fri, 31 Jan 2014 16:22:53 +0000 (16:22 +0000)]
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
Arnaud Charlet [Fri, 31 Jan 2014 16:03:54 +0000 (17:03 +0100)]
[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
Arnaud Charlet [Fri, 31 Jan 2014 15:59:59 +0000 (16:59 +0100)]
[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
Arnaud Charlet [Fri, 31 Jan 2014 15:56:44 +0000 (16:56 +0100)]
[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
Arnaud Charlet [Fri, 31 Jan 2014 15:53:25 +0000 (16:53 +0100)]
[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
Arnaud Charlet [Fri, 31 Jan 2014 15:51:51 +0000 (16:51 +0100)]
[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
Arnaud Charlet [Fri, 31 Jan 2014 15:46:40 +0000 (16:46 +0100)]
[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
Arnaud Charlet [Fri, 31 Jan 2014 15:45:08 +0000 (16:45 +0100)]
[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
Bob Duff [Fri, 31 Jan 2014 15:43:41 +0000 (15:43 +0000)]
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
Arnaud Charlet [Fri, 31 Jan 2014 15:39:17 +0000 (16:39 +0100)]
[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
Jason Merrill [Fri, 31 Jan 2014 15:20:12 +0000 (10:20 -0500)]
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
Jason Merrill [Fri, 31 Jan 2014 15:20:05 +0000 (10:20 -0500)]
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
Max Ostapenko [Fri, 31 Jan 2014 13:42:10 +0000 (15:42 +0200)]
* c-c++-common/tsan/simple_race.c: Made test less flaky.
From-SVN: r207344
Ilya Tocar [Fri, 31 Jan 2014 13:29:08 +0000 (13:29 +0000)]
m512-check.h: Use correct rounding values.
gcc/testsuite/
* gcc.target/i386/m512-check.h: Use correct rounding values.
From-SVN: r207343
Ilya Tocar [Fri, 31 Jan 2014 13:22:57 +0000 (13:22 +0000)]
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
Ilya Tocar [Fri, 31 Jan 2014 13:19:10 +0000 (13:19 +0000)]
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
Marc Glisse [Fri, 31 Jan 2014 12:59:44 +0000 (13:59 +0100)]
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
Jakub Jelinek [Fri, 31 Jan 2014 12:52:39 +0000 (13:52 +0100)]
Fix a typo.
From-SVN: r207339
Richard Biener [Fri, 31 Jan 2014 11:54:26 +0000 (11:54 +0000)]
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
Jakub Jelinek [Fri, 31 Jan 2014 11:30:46 +0000 (12:30 +0100)]
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
Marek Polacek [Fri, 31 Jan 2014 08:13:50 +0000 (08:13 +0000)]
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
DJ Delorie [Fri, 31 Jan 2014 04:17:38 +0000 (23:17 -0500)]
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
Jason Merrill [Fri, 31 Jan 2014 03:47:22 +0000 (22:47 -0500)]
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
Ian Lance Taylor [Fri, 31 Jan 2014 01:58:12 +0000 (01:58 +0000)]
compiler: Use backend interface for conditional expressions.
From-SVN: r207330
GCC Administrator [Fri, 31 Jan 2014 00:16:31 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r207329
Bill Schmidt [Thu, 30 Jan 2014 22:36:13 +0000 (22:36 +0000)]
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
Jakub Jelinek [Thu, 30 Jan 2014 21:48:08 +0000 (22:48 +0100)]
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
Vladimir Makarov [Thu, 30 Jan 2014 21:15:51 +0000 (21:15 +0000)]
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
Jakub Jelinek [Thu, 30 Jan 2014 20:05:32 +0000 (21:05 +0100)]
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
Richard Sandiford [Thu, 30 Jan 2014 19:44:06 +0000 (19:44 +0000)]
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
Bill Schmidt [Thu, 30 Jan 2014 18:59:55 +0000 (18:59 +0000)]
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
Richard Biener [Thu, 30 Jan 2014 18:28:19 +0000 (18:28 +0000)]
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
Richard Sandiford [Thu, 30 Jan 2014 18:18:21 +0000 (18:18 +0000)]
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
Alangi Derick [Thu, 30 Jan 2014 17:29:25 +0000 (17:29 +0000)]
README.Portability: Fix typo.
2014-01-30 Alangi Derick <alangiderick@gmail.com>
* README.Portability: Fix typo.
From-SVN: r207314
Marek Polacek [Thu, 30 Jan 2014 17:24:19 +0000 (17:24 +0000)]
* gcc.dg/Wconversion-real-integer.c: Properly end comment.
From-SVN: r207312
David Holsgrove [Thu, 30 Jan 2014 17:18:17 +0000 (17:18 +0000)]
Add SImode to comparison operator, prevents ICE during combine
rtl pass with error message;
internal compiler error: in simplify_subreg, at simplify-rtx.c:5725
Use ordered_comparison_operator predicate to limit operators to
those fcmp can handle, and letting compiler reorder insns to
accomodate unordered as necessary
gcc/ChangeLog
2013-11-26 David Holsgrove <david.holsgrove@xilinx.com>
* config/microblaze/microblaze.md(cstoresf4, cbranchsf4): Replace
comparison_operator with ordered_comparison_operator.
testsuite/ChangeLog
2014-01-22 David holsgrove <david.holsgrove@xilinx.com>
* testsuite/gcc.target/microblaze/isa/fcmp4.c: New file.
From-SVN: r207311
Nick Clifton [Thu, 30 Jan 2014 16:22:58 +0000 (16:22 +0000)]
mn10300-protos.h (mn10300_store_multiple_operation_p): Rename to mn10300_store_multiple_regs.
* config/mn10300/mn10300-protos.h (mn10300_store_multiple_operation_p):
Rename to mn10300_store_multiple_regs.
* config/mn10300/mn10300.c: Likewise.
* config/mn10300/mn10300.md (store_movm): Fix typo: call
store_multiple_regs.
* config/mn10300/predicates.md (mn10300_store_multiple_operation):
Call mn10300_store_multiple_regs.
From-SVN: r207310
Marek Polacek [Thu, 30 Jan 2014 16:15:36 +0000 (16:15 +0000)]
re PR c/59940 (Imprecise column number for -Wconversion)
PR c/59940
c-family/
* c-common.h (unsafe_conversion_p): Adjust declaration.
(warnings_for_convert_and_check): Likewise.
(convert_and_check): Likewise.
* c-common.c (unsafe_conversion_p): Add location parameter. Call
expansion_point_location_if_in_system_header on it.
(warnings_for_convert_and_check): Add location parameter. Call
expansion_point_location_if_in_system_header on it. Use it.
(convert_and_check): Add location parameter. Use it.
(conversion_warning): Likewise.
(c_add_case_label): Adjust convert_and_check calls.
(scalar_to_vector): Adjust unsafe_conversion_p calls.
cp/
* typeck.c (build_ptrmemfunc1): Call convert_and_check with
input_location.
* cvt.c (cp_convert_and_check): Call warnings_for_convert_and_check
with input_location.
* call.c (build_conditional_expr_1): Call unsafe_conversion_p with
loc parameter.
c/
* c-typeck.c (build_function_call_vec): Use loc parameter.
(convert_arguments): Add location parameter. Use it.
(ep_convert_and_check): Likewise.
(build_atomic_assign): Adjust convert_for_assignment call.
(build_modify_expr): Likewise.
(digest_init): Likewise.
(c_finish_return): Likewise.
(build_conditional_expr): Adjust ep_convert_and_check calls.
(convert_for_assignment): Add rhs_loc parameter. Use it.
(build_binary_op): Adjust convert_and_check and ep_convert_and_check
calls.
testsuite/
* gcc.dg/pr59940.c: New test.
* gcc.dg/pr35635.c (func3): Move dg-warning.
From-SVN: r207309
Nick Clifton [Thu, 30 Jan 2014 16:01:43 +0000 (16:01 +0000)]
rl78.c (register_sizes): Make the "upper half" of %fp 2 to keep registers after it properly word-aligned.
* config/rl78/rl78.c (register_sizes): Make the "upper half" of
%fp 2 to keep registers after it properly word-aligned.
(rl78_alloc_physical_registers_umul): Handle the case where both
input operands are the same.
Co-Authored-By: DJ Delorie <dj@redhat.com>
From-SVN: r207308
Richard Biener [Thu, 30 Jan 2014 15:30:30 +0000 (15:30 +0000)]
re PR tree-optimization/59903 (ICE on valid code at -O3 on x86_64-linux-gnu (affecting trunk and 4.8.x))
2014-01-30 Richard Biener <rguenther@suse.de>
PR tree-optimization/59903
* tree-vect-loop.c (vect_transform_loop): Guard multiple-types
check properly.
* gcc.dg/torture/pr59903.c: New testcase.
From-SVN: r207307
Paolo Carlini [Thu, 30 Jan 2014 14:32:25 +0000 (14:32 +0000)]
re PR c++/58843 (ICE with broken destructor call)
/cp
2014-01-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58843
* typeck.c (lookup_destructor): Check dtor_type for error_mark_node.
/testsuite
2014-01-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58843
* g++.dg/lookup/crash8.C: New.
From-SVN: r207305
Paolo Carlini [Thu, 30 Jan 2014 14:28:55 +0000 (14:28 +0000)]
re PR c++/58649 (ICE with use of enum before declaration)
/cp
2014-01-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58649
* pt.c (lookup_template_class_1): Check start_enum return value
for error_mark_node.
/testsuite
2014-01-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58649
* g++.dg/template/crash117.C: New.
From-SVN: r207304
Paolo Carlini [Thu, 30 Jan 2014 14:26:51 +0000 (14:26 +0000)]
decl.c (duplicate_decls, [...]): Use TYPE_IDENTIFIER.
2014-01-30 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (duplicate_decls, typename_hash, typename_compare):
Use TYPE_IDENTIFIER.
* error.c (dump_type): Likewise.
* mangle.c (dump_substitution_candidates): Likewise.
From-SVN: r207303
Jason Merrill [Thu, 30 Jan 2014 14:21:31 +0000 (09:21 -0500)]
re PR c++/59633 (ICE with __attribute((vector_size(...))) for enum)
PR c++/59633
gcc/
* tree.c (walk_type_fields): Handle VECTOR_TYPE.
gcc/cp/
* decl2.c (attributes_naming_typedef_ok): New.
* cp-tree.h: Declare it.
* decl.c (grokdeclarator): Check it.
* tree.c (no_linkage_check): Handle VECTOR_TYPE.
From-SVN: r207302
Jason Merrill [Thu, 30 Jan 2014 14:18:15 +0000 (09:18 -0500)]
re PR c++/59645 (ICE with covariant return and volatile)
PR c++/59645
* cgraphunit.c (expand_thunk): Copy volatile arg to a temporary.
From-SVN: r207301
Richard Biener [Thu, 30 Jan 2014 14:17:02 +0000 (14:17 +0000)]
re PR c/59905 (Unfriendly abort when calling a fucntion via a function pointer cast)
2014-01-30 Richard Biener <rguenther@suse.de>
PR c/59905
* c-typeck.c (build_function_call_vec): Do not replace calls
to a function via an incompatible type with a runtime abort.
* gcc.dg/cast-function-1.c: Adjust to survive DCE.
* gcc.dg/call-diag-2.c: Remove expected warnings about calling
abort.
* gcc.dg/invalid-call-1.c: Likewise.
From-SVN: r207300
Richard Biener [Thu, 30 Jan 2014 11:58:16 +0000 (11:58 +0000)]
re PR tree-optimization/59951 (bootstrap comparison failure with -O3 for a week)
2014-01-30 Richard Biener <rguenther@suse.de>
PR tree-optimization/59951
* tree-vect-slp.c (vect_bb_slp_scalar_cost): Skip uses in debug
insns.
From-SVN: r207299
Savin Zlobec [Thu, 30 Jan 2014 05:51:30 +0000 (05:51 +0000)]
re PR target/59784 (Nios2: Wrong code generation for fextsd custom instruction)
2014-01-30 Savin Zlobec <savin.zlobec@gmail.com>
PR target/59784
* config/nios2/nios2.c (nios2_fpu_insn_asm): Fix asm output of
SFmode to DFmode case.
From-SVN: r207297
Jason Merrill [Thu, 30 Jan 2014 05:28:52 +0000 (00:28 -0500)]
re PR c++/59707 (Crash when using std::map with template class)
PR c++/59707
* call.c (add_builtin_candidate): Catch dependent types.
From-SVN: r207295
DJ Delorie [Thu, 30 Jan 2014 02:57:41 +0000 (21:57 -0500)]
msp430.opt (-minrt): New.
* config/msp430/msp430.opt (-minrt): New.
* config/msp430/msp430.h (STARTFILE_SPEC): Link alternate runtime
if -minrt given.
(ENDFILE_SPEC): Likewise.
From-SVN: r207294
GCC Administrator [Thu, 30 Jan 2014 00:16:45 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r207292
Jonathan Wakely [Wed, 29 Jan 2014 23:46:31 +0000 (23:46 +0000)]
re PR libstdc++/57226 (The installation of pretty printers is not documented)
PR libstdc++/57226
* doc/xml/manual/debug.xml (debug.gdb): Update documentation for
installation and use of python printers.
* doc/xml/manual/status_cxx2011.xml: Update.
* doc/html/*: Regenerate.
From-SVN: r207288
Jan Hubicka [Wed, 29 Jan 2014 22:50:22 +0000 (23:50 +0100)]
ipa-inline-analysis.c (clobber_only_eh_bb_p): New function.
* ipa-inline-analysis.c (clobber_only_eh_bb_p): New function.
(estimate_function_body_sizes): Use it.
From-SVN: r207287
Jason Merrill [Wed, 29 Jan 2014 22:12:09 +0000 (17:12 -0500)]
re PR c++/59989 (ICE when a template parameter pack is explicitly specified for a function template and provides a complete argument list for a template)
PR c++/59989
* pt.c (expand_template_argument_pack): Correct
non_default_args_count calculation.
From-SVN: r207285
Jason Merrill [Wed, 29 Jan 2014 20:54:21 +0000 (15:54 -0500)]
re PR c++/58466 (ICE in cxx_eval_constant_expression)
PR c++/58466
* pt.c (unify_pack_expansion): Call expand_template_argument_pack.
From-SVN: r207283
Paolo Carlini [Wed, 29 Jan 2014 20:54:09 +0000 (20:54 +0000)]
re PR c++/58561 ([c++11] ICE using declaration of function with auto in return type)
2014-01-29 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58561
* dwarf2out.c (is_cxx_auto): New.
(is_base_type): Use it.
(gen_type_die_with_usage): Likewise.
/testsuite
2014-01-29 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58561
* g++.dg/cpp1y/auto-fn23.C: New.
From-SVN: r207282
Jason Merrill [Wed, 29 Jan 2014 20:44:50 +0000 (15:44 -0500)]
re PR c++/59956 (internal compiler error: unexpected expression ‘P_S’ of kind template_parm_index)
PR c++/59956
* friend.c (do_friend): Pass the TEMPLATE_DECL to add_friend if we
have a friend template in a class template.
* pt.c (tsubst_friend_function): Look through it.
(push_template_decl_real): A friend member template is
primary.
From-SVN: r207281
Jonathan Wakely [Wed, 29 Jan 2014 20:43:44 +0000 (20:43 +0000)]
re PR libstdc++/21609 (array_allocator vs rebind & templated constructor)
PR libstdc++/21609
* include/ext/array_allocator.h: Add deprecated attribute.
From-SVN: r207280
Paolo Carlini [Wed, 29 Jan 2014 17:58:37 +0000 (17:58 +0000)]
re PR c++/58846 (ICE redeclaring __dso_handle)
/cp
2014-01-29 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58846
* decl.c (get_dso_handle_node): Don't crash if dso_handle_node
== error_mark_node.
/testsuite
2014-01-29 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58846
* g++.dg/init/dso_handle2.C: New.
From-SVN: r207276
Paolo Carlini [Wed, 29 Jan 2014 17:54:51 +0000 (17:54 +0000)]
re PR c++/58674 ([c++11] ICE with template using declaration)
/cp
2014-01-29 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58674
* pt.c (instantiate_template_1): Check for error_mark_node the second
argument too.
/testsuite
2014-01-29 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58674
* g++.dg/cpp0x/pr58674.C: New.
From-SVN: r207275
Kirill Yukhin [Wed, 29 Jan 2014 17:35:19 +0000 (17:35 +0000)]
re PR tree-optimization/59617 ([vectorizer] ICE in vectorizable_mask_load_store with AVX-512F's gathers enabled.)
gcc/testsuite/
PR target/59617
* gcc.target/i386/avx512f-gather-2.c: Remove XPASS.
* gcc.target/i386/avx512f-gather-5.c: Ditto.
From-SVN: r207274
Jason Merrill [Wed, 29 Jan 2014 17:13:16 +0000 (12:13 -0500)]
* g++.dg/parse/enum5.C: Allow for -fshort-enums.
From-SVN: r207273
Jason Merrill [Wed, 29 Jan 2014 17:13:09 +0000 (12:13 -0500)]
* g++.dg/debug/dwarf2/auto1.C: Handle other comment characters.
From-SVN: r207272
Jason Merrill [Wed, 29 Jan 2014 17:13:01 +0000 (12:13 -0500)]
re PR c++/59916 (constructors and destructors can cause "control reaches end of non-void function" warnings with -Os)
PR c++/59916
* optimize.c (maybe_thunk_body): Build a RETURN_EXPR for
cdtor_returns_this case.
From-SVN: r207271
Arnaud Charlet [Wed, 29 Jan 2014 16:23:31 +0000 (17:23 +0100)]
[multiple changes]
2014-01-29 Hristian Kirtchev <kirtchev@adacore.com>
* einfo.adb (Get_Pragma): Handle the retrieval of pragma Refined_Post.
* einfo.ads (Get_Pragma): Update the comment on special pragmas
handled by this routine.
* sem_prag.adb (Analyze_Pragma): Add a legal pragma Refined_Post
to the contract of the related subprogram body.
* sem_util.adb (Add_Contract_Item): Handle the insertion of
pragma Refined_Post into the contract of a subprogram body.
* sinfo.ads Update the documentation of node N_Contract.
* sem_res.adb (Resolve_Entity_Name): Add a guard
to detect abstract states and variables only when checking the
SPARK 2014 rules concerning volatile object placement.
2014-01-29 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Find_Equality_Types, Try_One_Interp): within an instance,
null is compatible with any access type.
From-SVN: r207269
Hristian Kirtchev [Wed, 29 Jan 2014 16:21:25 +0000 (16:21 +0000)]
sem_util.adb (Find_Placement_In_State_Space): Assume that the default placement is not in a package.
2014-01-29 Hristian Kirtchev <kirtchev@adacore.com>
* sem_util.adb (Find_Placement_In_State_Space): Assume that the default
placement is not in a package.
From-SVN: r207268
Arnaud Charlet [Wed, 29 Jan 2014 16:19:53 +0000 (17:19 +0100)]
[multiple changes]
2014-01-29 Hristian Kirtchev <kirtchev@adacore.com>
* sem_util.adb (Has_Enabled_Property): Compare the character field of
the sole property.
2014-01-29 Robert Dewar <dewar@adacore.com>
* sem_intr.adb, a-ztexio.ads, sinfo.ads, sem_res.adb, gnatlink.adb,
vms_conv.adb, a-except.ads, a-except-2005.ads, a-teioed.adb,
sem_warn.ads, treepr.ads, erroutc.ads, a-excach.adb: Minor reformatting.
From-SVN: r207267
Robert Dewar [Wed, 29 Jan 2014 16:17:48 +0000 (16:17 +0000)]
sem_util.ads, [...] (In_Pragma_Expression): New function.
2014-01-29 Robert Dewar <dewar@adacore.com>
* sem_util.ads, sem_util.adb (In_Pragma_Expression): New function.
* sem_warn.adb (Check_References): Suppress warnings if inside
Initial_Condition pragma.
From-SVN: r207266
Yury Gribov [Wed, 29 Jan 2014 16:17:22 +0000 (16:17 +0000)]
mklog: Improve support of context diffs.
2014-01-29 Yury Gribov <y.gribov@samsung.com>
* mklog: Improve support of context diffs.
From-SVN: r207265
Arnaud Charlet [Wed, 29 Jan 2014 16:16:51 +0000 (17:16 +0100)]
Update comments.
From-SVN: r207264
Arnaud Charlet [Wed, 29 Jan 2014 16:16:34 +0000 (17:16 +0100)]
Code clean up.
From-SVN: r207263
Bill Schmidt [Wed, 29 Jan 2014 16:12:28 +0000 (16:12 +0000)]
rs6000.c (altivec_expand_vec_perm_const): Use CODE_FOR_altivec_vmrg*_direct rather than CODE_FOR_altivec_vmrg*.
gcc:
2014-01-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Use
CODE_FOR_altivec_vmrg*_direct rather than CODE_FOR_altivec_vmrg*.
* config/rs6000/vsx.md (vsx_mergel_<mode>): Adjust for
-maltivec=be with LE targets.
(vsx_mergeh_<mode>): Likewise.
* config/rs6000/altivec.md (UNSPEC_VMRG[HL]_DIRECT): New
unspecs.
(mulv8hi3): Use gen_altivec_vmrg[hl]w_direct.
(altivec_vmrghb): Replace with define_expand and new
*altivec_vmrghb_internal insn; adjust for -maltivec=be with LE
targets.
(altivec_vmrghb_direct): New define_insn.
(altivec_vmrghh): Replace with define_expand and new
*altivec_vmrghh_internal insn; adjust for -maltivec=be with LE
targets.
(altivec_vmrghh_direct): New define_insn.
(altivec_vmrghw): Replace with define_expand and new
*altivec_vmrghw_internal insn; adjust for -maltivec=be with LE
targets.
(altivec_vmrghw_direct): New define_insn.
(*altivec_vmrghsf): Adjust for endianness.
(altivec_vmrglb): Replace with define_expand and new
*altivec_vmrglb_internal insn; adjust for -maltivec=be with LE
targets.
(altivec_vmrglb_direct): New define_insn.
(altivec_vmrglh): Replace with define_expand and new
*altivec_vmrglh_internal insn; adjust for -maltivec=be with LE
targets.
(altivec_vmrglh_direct): New define_insn.
(altivec_vmrglw): Replace with define_expand and new
*altivec_vmrglw_internal insn; adjust for -maltivec=be with LE
targets.
(altivec_vmrglw_direct): New define_insn.
(*altivec_vmrglsf): Adjust for endianness.
(vec_widen_umult_hi_v16qi): Use gen_altivec_vmrghh_direct.
(vec_widen_umult_lo_v16qi): Use gen_altivec_vmrglh_direct.
(vec_widen_smult_hi_v16qi): Use gen_altivec_vmrghh_direct.
(vec_widen_smult_lo_v16qi): Use gen_altivec_vmrglh_direct.
(vec_widen_umult_hi_v8hi): Use gen_altivec_vmrghw_direct.
(vec_widen_umult_lo_v8hi): Use gen_altivec_vmrglw_direct.
(vec_widen_smult_hi_v8hi): Use gen_altivec_vmrghw_direct.
(vec_widen_smult_lo_v8hi): Use gen_altivec_vmrglw_direct.
gcc/testsuite:
2014-01-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* gcc.dg/vmx/merge-be-order.c: New.
* gcc.dg/vmx/merge.c: New.
* gcc.dg/vmx/merge-vsx-be-order.c: New.
* gcc.dg/vmx/merge-vsx.c: New.
From-SVN: r207262
Hristian Kirtchev [Wed, 29 Jan 2014 16:10:44 +0000 (16:10 +0000)]
sem_prag.adb (Check_Missing_Part_Of): List all values of State_Space_Kind for readability reasons.
2014-01-29 Hristian Kirtchev <kirtchev@adacore.com>
* sem_prag.adb (Check_Missing_Part_Of): List all values of
State_Space_Kind for readability reasons. Do not emit an error on
a private item when the enclosing package lacks aspect/pragma
Abstract_State. Do not emit an error on a private package
instantiation when the corresponding generic template lacks
visible state.
(Has_Visible_State): New routine.
* sem_util.adb (Find_Placement_In_State_Space): The visible
declarations of any kind of child units in general act as proper
placement location.
From-SVN: r207261
Robert Dewar [Wed, 29 Jan 2014 15:53:48 +0000 (15:53 +0000)]
a-except-2005.adb, [...]: Minor reformatting.
2014-01-29 Robert Dewar <dewar@adacore.com>
* a-except-2005.adb, a-except.adb, a-excpol-abort.adb, a-exstat.adb,
ali.adb, a-numaux.ads, a-numaux-darwin.ads, a-numaux-libc-x86.ads,
a-numaux-vms.ads, a-numaux-vxworks.ads, a-numaux-x86.ads, aspects.ads,
a-taside.adb, a-teioed.adb, a-textio.adb, a-textio.ads, atree.adb,
atree.ads, a-witeio.adb, a-witeio.ads, a-wtedit.adb, a-ztedit.adb,
a-ztexio.adb, bcheck.adb, binde.adb, checks.adb, comperr.adb,
cstand.adb, debug_a.adb, einfo.ads, errout.adb, erroutc.adb,
eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb, exp_ch3.adb,
exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb, exp_dbug.adb,
exp_disp.adb, exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_util.adb,
freeze.adb, frontend.adb, g-comlin.ads, g-mbdira.adb, gnat1drv.adb,
gprep.adb, g-spipat.adb, i-cpp.ads, i-vxwork.ads, i-vxwork-x86.ads,
krunch.ads, layout.adb, lib-load.adb, lib-writ.adb, lib-writ.ads,
live.adb, namet.ads, osint.adb, osint-c.adb, output.ads, par.adb,
par-ch10.adb, par-ch13.adb, par-ch3.adb, par-ch4.adb, par-ch5.adb,
par-ch6.adb, par-ch9.adb, par-endh.adb, par-labl.adb, par-prag.adb,
par-sync.adb, par-tchk.adb, par-util.adb, prj.adb, repinfo.adb,
rtsfind.adb, s-arit64.adb, s-asthan-vms-alpha.adb,
s-asthan-vms-ia64.adb, s-bignum.adb, scans.adb, scng.adb, s-dimmks.ads,
sem_aggr.adb, sem_attr.adb, sem_aux.adb, sem_cat.adb, sem_ch10.adb,
sem_ch12.adb, sem_ch13.adb, sem_ch13.ads, sem_ch3.adb, sem_ch4.adb,
sem_ch5.adb, sem_ch6.adb, sem_ch8.adb, sem_disp.adb, sem_elab.adb,
sem_elim.adb, sem_eval.adb, sem_intr.adb, sem_prag.adb, sem_res.adb,
sem_type.adb, sem_util.adb, sem_warn.adb, set_targ.adb, s-fatgen.adb,
s-fatgen.ads, s-fileio.adb, s-imgcha.adb, s-imgrea.adb, sinfo.ads,
sinput-c.adb, snames.ads-tmpl, s-os_lib.adb, sprint.adb,
s-regpat.adb, s-secsta.adb, s-stalib.ads,
s-stchop.adb, s-stoele.ads, stand.ads, s-taprop-solaris.adb,
s-tasdeb-vms.adb, s-tasini.adb, s-tassta.adb, s-valdec.adb,
s-valuti.adb, s-wchjis.adb, s-wchwts.adb, system.ads, system-vms_64.ads,
system-vms-ia64.ads, treepr.adb, types.ads, uintp.adb, uname.adb,
urealp.adb, usage.adb, vxaddr2line.adb: Minor reformatting.
From-SVN: r207260
Marcus Shawcroft [Wed, 29 Jan 2014 15:45:20 +0000 (15:45 +0000)]
[AArch64] Fix sfp-machine.h _FP_I_TYPE.
2014-01-29 Marcus Shawcroft <marcus.shawcroft@arm.com>
* config/aarch64/sfp-machine.h (_FP_I_TYPE): Define
as long long.
From-SVN: r207259
Marcus Shawcroft [Wed, 29 Jan 2014 15:42:37 +0000 (15:42 +0000)]
[AArch64] Fix various white space issues.
2014-01-29 Marcus Shawcroft <marcus.shawcroft@arm.com>
* config/aarch64/aarch64.c (aarch64_expand_mov_immediate)
(aarch64_legitimate_address_p, aarch64_class_max_nregs): Adjust
whitespace.
From-SVN: r207258