1. 14 Jun, 2013 5 commits
  2. 13 Jun, 2013 15 commits
  3. 12 Jun, 2013 20 commits
    • rs6000.c (emit_load_locked): Add support for power8 byte, half-word, and… · 4b02c962
      rs6000.c (emit_load_locked): Add support for power8 byte, half-word, and quad-word atomic instructions.
      
      [gcc]
      2013-06-12  Michael Meissner  <meissner@linux.vnet.ibm.com>
      	    Pat Haugen <pthaugen@us.ibm.com>
      	    Peter Bergner <bergner@vnet.ibm.com>
      
      	* config/rs6000/rs6000.c (emit_load_locked): Add support for
      	power8 byte, half-word, and quad-word atomic instructions.
      	(emit_store_conditional): Likewise.
      	(rs6000_expand_atomic_compare_and_swap): Likewise.
      	(rs6000_expand_atomic_op): Likewise.
      
      	* config/rs6000/sync.md (larx): Add new modes for power8.
      	(stcx): Likewise.
      	(AINT): New mode iterator to include TImode as well as normal
      	integer modes on power8.
      	(fetchop_pred): Use int_reg_operand instead of gpc_reg_operand so
      	that VSX registers are not considered.  Use AINT mode iterator
      	instead of INT1 to allow inclusion of quad word atomic operations
      	on power8.
      	(load_locked<mode>): Likewise.
      	(store_conditional<mode>): Likewise.
      	(atomic_compare_and_swap<mode>): Likewise.
      	(atomic_exchange<mode>): Likewise.
      	(atomic_nand<mode>): Likewise.
      	(atomic_fetch_<fetchop_name><mode>): Likewise.
      	(atomic_nand_fetch<mode>): Likewise.
      	(mem_thread_fence): Use gen_loadsync_<mode> instead of enumerating
      	each type.
      	(ATOMIC): On power8, add QImode, HImode modes.
      	(load_locked<QHI:mode>_si): Varients of load_locked for QI/HI
      	modes that promote to SImode.
      	(load_lockedti): Convert TImode arguments to PTImode, so that we
      	get a guaranteed even/odd register pair.
      	(load_lockedpti): Likewise.
      	(store_conditionalti): Likewise.
      	(store_conditionalpti): Likewise.
      
      	* config/rs6000/rs6000.md (QHI): New mode iterator for power8
      	atomic load/store instructions.
      	(HSI): Likewise.
      
      [gcc/testsuite]
      2013-06-12  Michael Meissner  <meissner@linux.vnet.ibm.com>
      	    Pat Haugen <pthaugen@us.ibm.com>
      	    Peter Bergner <bergner@vnet.ibm.com>
      
      	* gcc.target/powerpc/atomic-p7.c: New file, add tests for atomic
      	load/store instructions on power7, power8.
      	* gcc.target/powerpc/atomic-p8.c: Likewise.
      
      
      Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com>
      Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
      
      From-SVN: r200044
      Michael Meissner committed
    • fix pr c/57577 · 73a23b06
      fix pr c/57577
      gcc/c/ChangeLog
      +2013-06-12  Balaji V. Iyer  <balaji.v.iyer@intel.com>
      +
      +       * c-array-notation.c (build_array_notation_expr): Reject array notation
      +       mismatch between LHS and RHS even inside a call_expr.  Also, removed
      +       a couple while statements that were dead code.
      +
      
      gcc/testsuite/ChangeLog
      +2013-06-12  Balaji V. Iyer  <balaji.v.iyer@intel.com>
      +
      +       PR c/57577
      +       * c-c++-common/cilk-plus/AN/pr57577.c: New testcase.
      +
      
      From-SVN: r200043
      Balaji V. Iyer committed
    • re PR c++/38958 ('unused variable' warning emitted when extending the lifetime… · 6a026364
      re PR c++/38958 ('unused variable' warning emitted when extending the lifetime of a returned RAII type by holding a reference to const despite delayed destructor side-effects. [dtor])
      
      /cp
      2013-06-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/38958
      	* decl.c (poplevel): For the benefit of -Wunused-variable see
      	through references.
      
      /testsuite
      2013-06-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/38958
      	* g++.dg/warn/Wunused-var-20.C: New.
      
      From-SVN: r200042
      Paolo Carlini committed
    • mips.exp: Handle -f{no-,}common. · ef08b035
      gcc/testsuite/
      	* gcc.target/mips/mips.exp: Handle -f{no-,}common.
      	* gcc.target/mips/memcpy-1.c: Remove redundant dg-do.
      	Run with -fno-common.
      
      From-SVN: r200041
      Richard Sandiford committed
    • sec_implicit_ex.c (main): Replaced abort and exit function calls with return 1… · 3ea71f13
      sec_implicit_ex.c (main): Replaced abort and exit function calls with return 1 and return 0, respectively.
      
      2013-06-12  Balaji V. Iyer  <balaji.v.iyer@intel.com>
      
      	* c-c++-common/cilk-plus/AN/sec_implicit_ex.c (main): Replaced abort
      	and exit function calls with return 1 and return 0, respectively.
      
      From-SVN: r200038
      Balaji V. Iyer committed
    • mips.md (extended_mips16): Include GOT and constant-pool loads. · 710b6cc1
      gcc/
      	* config/mips/mips.md (extended_mips16): Include GOT and constant-pool
      	loads.
      	(insn_count): New attribute, with most cases extracted from...
      	(length): ...here.  Redefine most cases in terms of insn_count.
      	(single_insn): Delete.
      	(can_delay): Use insn_count to check for single instructions.
      	(*mul<mode>3_r4300, mul<mode>3_r4000, *mul_acc_si, *mul_acc_si_r3900)
      	(*msac_using_macc, *mul_sub_si, <u>mulsidi3_32bit_r4000)
      	(<u>mulsidi3_64bit_r4000, <su>muldi3_highpart_internal)
      	(<su>mulsi3_highpart_split, <su>muldi3_highpart_internal)
      	(<u>mulditi3_r4000, *div<mode>3, *recip<mode>3, divmod<mode>4)
      	(udivmod<mode>4, sqrt<mode>2, *rsqrt<mode>a, *rsqrt<mode>b)
      	(fix_truncdfsi2_macro, fix_truncsfsi2_macro, *lea_high64)
      	(*lea64, cprestore_<mode>, clear_hazard_<mode>, <unnamed insn>)
      	(casesi_internal_mips16_<mode>, *tls_get_tp_<mode>_split)
      	(tls_get_tp_mips16, *tls_get_tp_mips16_call_<mode>): Use "insn_count"
      	rather than "length".
      	(tls_get_tp_<mode>): Likewise.  Remove redundant "no_delay" attribute.
      	* config/mips/mips-ps-3d.md (mips_c_cond_4s, mips_cabs_cond_4s):
      	Use "insn_count" rather than "length".
      	* config/mips/mips-dsp.md
      	(mips_l<SHORT:size><u>x_ext<GPR:mode>_<P:mode>)
      	(mips_l<GPR:size>x_<P:mode>, *mips_lw<u>x_<P:mode>_ext): Remove
      	length attributes.
      
      gcc/testsuite/
      	* gcc.target/mips/umips-branch-1.c, gcc.target/mips/umips-branch-2.c:
      	New tests.
      
      From-SVN: r200037
      Richard Sandiford committed
    • re PR tree-optimization/57361 (Remove self memory assignment) · 1951f101
      2013-06-12  Marc Glisse  <marc.glisse@inria.fr>
      
      	PR tree-optimization/57361
      gcc/
      	* tree-ssa-dse.c (dse_possible_dead_store_p): Handle self-assignment.
      
      gcc/testsuite/
      	* gcc.dg/tree-ssa/pr57361.c: New file.
      
      From-SVN: r200034
      Marc Glisse committed
    • aarch64-simd.md (aarch64_combine<mode>): convert to split. · 8b033a8a
      	* config/aarch64/aarch64-simd.md (aarch64_combine<mode>): convert to split.
      	(aarch64_simd_combine<mode>): New instruction expansion.
      	* config/aarch64/aarch64-protos.h (aarch64_split_simd_combine): New
      	function prototype.
      	* config/aarch64/aarch64.c (aarch64_split_combine): New function.
      	* config/aarch64/iterators.md (Vdbl): Add entry for DF.
      
      From-SVN: r200020
      Sofiane Naci committed
    • Fix DATA_ALIGNMENT vs DATA_ABI_ALIGNMENT fallout for aarch32. · 21786a7f
      
      2013-06-12  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
      	* gcc.target/arm/unaligned-memcpy-4.c (src, dst): Initialize
      	to ensure alignment.
      	* gcc.target/arm/unaligned-memcpy-3.c (src): Likewise.
      
      From-SVN: r200019
      Ramana Radhakrishnan committed
    • cgraph.c (verify_edge_corresponds_to_fndecl): Be lax about decl has when in streaming stage. · ca0f62a8
      
      	* cgraph.c (verify_edge_corresponds_to_fndecl): Be lax about
      	decl has when in streaming stage.
      	* lto-symtab.c (lto_symtab_merge_symbols): Likewise.
      	* cgraph.h (cgraph_state): Add CGRAPH_LTO_STREAMING.
      
      	* lto.c (read_cgraph_and_symbols): Set cgraph into streaming state.
      
      From-SVN: r200018
      Jan Hubicka committed
    • parser.c (cp_parser_nested_name_specifier_opt): Fix typo in comment. · 5c3decfd
      2013-06-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* parser.c (cp_parser_nested_name_specifier_opt): Fix typo in comment.
      
      From-SVN: r200017
      Paolo Carlini committed
    • Revert accidental commit. · fafb9387
      From-SVN: r200016
      Jan Hubicka committed
    • re PR c++/42021 (Misleading error message when inherited typedefs cause ambiguity) · e20eae6a
      2013-06-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/42021
      	* parser.c (cp_parser_nested_name_specifier_opt): Avoid emitting
      	again diagnostic already emitted by cp_parser_lookup_name.
      
      From-SVN: r200013
      Paolo Carlini committed
    • re PR target/57578 (SPE detection broken on Linux (bits/predefs.h: No such file or directory)) · cddd69eb
      2013-06-12  Roland Stigge <stigge@antcom.de>
      
              PR target/57578
              * config/rs6000/t-linux (MULTIARCH_DIRNAME): Fix SPE version detection.
      
      From-SVN: r200012
      Roland Stigge committed
    • finalize_10.f90: Update scan-tree-dump. · 5d96d490
      2013-06-12  Tobias Burnus  <burnus@net-b.de>
      
              * gfortran.dg/finalize_10.f90: Update scan-tree-dump.
      
      
      Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
      
      From-SVN: r200006
      Tobias Burnus committed
    • finalize_10.f90: Update dg-dump. · 21bca843
      2013-06-12  Tobias Burnus  <burnus@net-b.de>
                  Dominique d'Humieres  <dominiq@lps.ens.fr>
      
              * gfortran.dg/finalize_10.f90: Update dg-dump.
      
      
      Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
      
      From-SVN: r200003
      Tobias Burnus committed
    • re PR tree-optimization/57537 (gcc.dg/vect/slp-widen-mult-half.c generating… · bfdeda2c
      re PR tree-optimization/57537 (gcc.dg/vect/slp-widen-mult-half.c generating wrong code on PowerPC64)
      
      	PR tree-optimization/57537
      	* tree-vect-patterns.c (vect_recog_widen_mult_pattern): If
      	vect_handle_widen_op_by_const, convert oprnd1 to half_type1.
      
      From-SVN: r200000
      Jakub Jelinek committed
    • data-streamer.h (streamer_write_char_stream): CSE obs->current_pointer. · a4fa02d1
      2013-06-12  Richard Biener  <rguenther@suse.de>
      
      	* data-streamer.h (streamer_write_char_stream): CSE
      	obs->current_pointer.
      	* data-streamer-out.c (streamer_write_uhwi_stream): Inline
      	streamer_write_char_stream manually and optimize the resulting loop.
      	(streamer_write_hwi_stream): Likewise.
      
      From-SVN: r199992
      Richard Biener committed