1. 31 Jan, 2014 18 commits
    • [multiple changes] · bdfb8ec4
      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
      Arnaud Charlet committed
    • s-taskin.ads: Minor comment fix. · 5b0e6852
      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
      Bob Duff committed
    • [multiple changes] · a54ffd6c
      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
      Arnaud Charlet committed
    • re PR c++/59646 (ICE with volatile in initializer list) · 408249b2
      	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 committed
    • re PR c++/57043 (converting overloaded complex function pow in C++11 is ambiguous) · 4b55a782
      	PR c++/57043
      	* pt.c (fn_type_unification): Don't do DEDUCE_EXACT check
      	during partial ordering.
      
      From-SVN: r207345
      Jason Merrill committed
    • * c-c++-common/tsan/simple_race.c: Made test less flaky. · af3978a1
      From-SVN: r207344
      Max Ostapenko committed
    • m512-check.h: Use correct rounding values. · e0514839
      gcc/testsuite/
              * gcc.target/i386/m512-check.h: Use correct rounding values.
      
      From-SVN: r207343
      Ilya Tocar committed
    • gcc/ · de72ea02
      	* 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 committed
    • constraints.md (Yk): Swap meaning with k. · be792bce
      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
      Ilya Tocar committed
    • extend.texi (Vector Extensions): Document ?: in C++. · 0878d68a
      2014-01-31  Marc Glisse  <marc.glisse@inria.fr>
      
      gcc/
      	* doc/extend.texi (Vector Extensions): Document ?: in C++.
      
      From-SVN: r207340
      Marc Glisse committed
    • Fix a typo. · 6c02e139
      From-SVN: r207339
      Jakub Jelinek committed
    • re PR middle-end/59990 (incorrect memcpy optimization) · fdfd537b
      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
      Richard Biener committed
    • tsan-dg.exp (tsan_init): Try to run a trivial program, if it fails don't run any tsan tests. · 798888a0
      	* lib/tsan-dg.exp (tsan_init): Try to run a trivial program,
      	if it fails don't run any tsan tests.
      
      From-SVN: r207337
      Jakub Jelinek committed
    • re PR c/59963 (Wrong column number for warning -Woverflow) · 81e5eca8
      	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
      Marek Polacek committed
    • msp430.h (LIB_SPEC): Add -lcrt · 4f50b9ff
      * 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
      DJ Delorie committed
    • re PR c++/57899 (bind/function with data member: infinite recursion) · f221dc81
      	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
      Jason Merrill committed
    • Daily bump. · 8fec1e9b
      From-SVN: r207329
      GCC Administrator committed
  2. 30 Jan, 2014 22 commits
    • rs6000.c (rs6000_expand_vector_init): Remove unused variable "field". · c3e96073
      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
      Bill Schmidt committed
    • re PR regression/59923 (ICE in maybe_record_trace_start, at dwarf2cfi.c:2239… · 4bb9c32d
      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
      Jakub Jelinek committed
    • re PR rtl-optimization/59959 (LRA ICEs on a fortran case(Suspected to be similar to pr59915)) · 7613fa50
      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
      Vladimir Makarov committed
    • f16cintrin.h (_cvtsh_ss): Avoid -Wnarrowing warning. · 6fb82517
      	* 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
      Jakub Jelinek committed
    • re PR c++/58708 (string literal operator templates broken) · 35e519c4
      gcc/cp/
      	PR c++/58708
      	* parser.c (make_string_pack): Use double_int::from_buffer.
      
      From-SVN: r207320
      Richard Sandiford committed
    • rs6000.c (rs6000_expand_vector_init): Use gen_vsx_xxspltw_v4sf_direct instead of… · bf53d4b8
      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
      Bill Schmidt committed
    • re PR middle-end/59993 (ICE: SSA corruption) · c965e187
      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 Biener committed
    • pr33426-ivdep.cc, [...]: Require vect_int rather than vect_float. · 5f71f3d3
      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
      Richard Sandiford committed
    • README.Portability: Fix typo. · ba117645
      2014-01-30  Alangi Derick  <alangiderick@gmail.com>
      
      	* README.Portability: Fix typo.
      
      From-SVN: r207314
      Alangi Derick committed
    • * gcc.dg/Wconversion-real-integer.c: Properly end comment. · 053247c8
      From-SVN: r207312
      Marek Polacek committed
    • Add SImode to comparison operator, prevents ICE during combine · 29bd5728
      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
      David Holsgrove committed
    • mn10300-protos.h (mn10300_store_multiple_operation_p): Rename to mn10300_store_multiple_regs. · c345a0b1
      	* 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
      Nick Clifton committed
    • re PR c/59940 (Imprecise column number for -Wconversion) · 68fca595
      	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
      Marek Polacek committed
    • rl78.c (register_sizes): Make the "upper half" of %fp 2 to keep registers after… · 2d70f6d4
      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
      Nick Clifton committed
    • re PR tree-optimization/59903 (ICE on valid code at -O3 on x86_64-linux-gnu… · c972624e
      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
      Richard Biener committed
    • re PR c++/58843 (ICE with broken destructor call) · 9ca57929
      /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 committed
    • re PR c++/58649 (ICE with use of enum before declaration) · e1b317ae
      /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 committed
    • decl.c (duplicate_decls, [...]): Use TYPE_IDENTIFIER. · cc27b5cd
      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
      Paolo Carlini committed
    • re PR c++/59633 (ICE with __attribute((vector_size(...))) for enum) · 404c2aea
      	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 committed
    • re PR c++/59645 (ICE with covariant return and volatile) · fc044323
      	PR c++/59645
      	* cgraphunit.c (expand_thunk): Copy volatile arg to a temporary.
      
      From-SVN: r207301
      Jason Merrill committed
    • re PR c/59905 (Unfriendly abort when calling a fucntion via a function pointer cast) · fa337f3a
      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 committed
    • re PR tree-optimization/59951 (bootstrap comparison failure with -O3 for a week) · f30a0ba5
      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
      Richard Biener committed