1. 20 Nov, 2012 12 commits
    • gcc/ · 342be7f7
      	* config/aarch64/aarch64-builtins.c
      	(aarch64_simd_builtin_type_bits): Rename to...
      	(aarch64_simd_builtin_type_mode): ...this, make sequential.
      	(aarch64_simd_builtin_datum): Refactor members.
      	(VAR1, VAR2, ..., VAR12): Update accordingly.
      	(aarch64_simd_builtin_data): Include from aarch64-simd-builtins.def.
      	(aarch64_builtins): Update accordingly.
      	(init_aarch64_simd_builtins): Refactor, rename to...
      	(aarch64_init_simd_builtins): ...this.
      	(aarch64_simd_builtin_compare): Remove.
      	(locate_simd_builtin_icode): Likewise.
      	* config/aarch64/aarch64-protos.h (aarch64_init_builtins): New.
      	(aarch64_expand_builtin): New.
      	* config/aarch64/aarch64-simd-builtins.def: New file.
      	* config/aarch64/aarch64.c (aarch64_init_builtins):
      	Move to aarch64-builtins.c.
      	(aarch64_expand_builtin): Likewise.
      	* config/aarch64/aarch64.h
      	(aarch64_builtins): Move to aarch64-builtins.c.
      
      
      Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
      
      From-SVN: r193658
      James Greenhalgh committed
    • re PR tree-optimization/55260 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:263… · dffdd6e5
      re PR tree-optimization/55260 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:263 with -O2 -fno-inline -fipa-cp-clone)
      
      2012-11-20  Martin Jambor  <mjambor@suse.cz>
      
      	PR tree-optimization/55260
      	* ipa-cp.c (find_aggregate_values_for_callers_subset): Rename info to
      	dest_info, use caller_info instead of info when determining whether
      	callee is a clone.
      
      	* testsuite/g++.dg/torture/pr55260-1.C: New test.
      
      From-SVN: r193657
      Martin Jambor committed
    • sse.md (*<ssse3_avx2>_pmulhrsw<mode>3): Merge *avx2_pmulhrswv16hi3 and... · e7d8fc6c
              * config/i386/sse.md (*<ssse3_avx2>_pmulhrsw<mode>3): Merge                                                 
              *avx2_pmulhrswv16hi3 and *ssse3_pmulhrswv8hi3 into one pattern.
      
      From-SVN: r193656
      Andrey Turetskiy committed
    • Fix to commit 193651. · c5c18dd1
      gcc/testsuite/
      	* gcc.target/aarch64/atomic-comp-swap-release-acquire.c:
      	Actually add this file.
      	* gcc.target/aarch64/atomic-op-acq_rel.c: Likewise.
      	* gcc.target/aarch64/atomic-op-acquire.c: Likewise.
      	* gcc.target/aarch64/atomic-op-char.c: Likewise.
      	* gcc.target/aarch64/atomic-op-consume.c: Likewise.
      	* gcc.target/aarch64/atomic-op-imm.c: Likewise.
      	* gcc.target/aarch64/atomic-op-int.c: Likewise.
      	* gcc.target/aarch64/atomic-op-long.c: Likewise.
      	* gcc.target/aarch64/atomic-op-relaxed.c: Likewise.
      	* gcc.target/aarch64/atomic-op-release.c: Likewise.
      	* gcc.target/aarch64/atomic-op-seq_cst.c: Likewise.
      	* gcc.target/aarch64/atomic-op-short.c: Likewise.
      
      From-SVN: r193654
      James Greenhalgh committed
    • Fix revision 193651. · 86c818c2
      gcc/
      	* config/aarch64/atomics.md: Actually add this file.
      
      From-SVN: r193653
      James Greenhalgh committed
    • aarch64.md (define_attr "sync_*"): Remove. · 0462169c
      gcc/
      	* config/aarch64/aarch64.md
      	(define_attr "sync_*"): Remove.
      	(define_attr "length"): Update.
      	Include atomics.md.
      	* config/aarch64/aarch64-protos.h
      	(aarch64_expand_compare_and_swap): Add function prototype.
      	(aarch64_split_compare_and_swap): Likewise.
      	(aarch64_split_atomic_op): Likewise.
      	(aarch64_expand_sync): Remove function prototype.
      	(aarch64_output_sync_insn): Likewise.
      	(aarch64_output_sync_lock_release): Likewise.
      	(aarch64_sync_loop_insns): Likewise.
      	(struct aarch64_sync_generator): Remove.
      	(enum aarch64_sync_generator_tag): Likewise.
      	* config/aarch64/aarch64.c
      	(aarch64_legitimize_sync_memory): Remove function.
      	(aarch64_emit): Likewise.
      	(aarch64_insn_count): Likewise.
      	(aarch64_output_asm_insn): Likewise.
      	(aarch64_load_store_suffix): Likewise.
      	(aarch64_output_sync_load): Likewise.
      	(aarch64_output_sync_store): Likewise.
      	(aarch64_output_op2): Likewise.
      	(aarch64_output_op3): Likewise.
      	(aarch64_output_sync_loop): Likewise.
      	(aarch64_get_sync_operand): Likewise.
      	(aarch64_process_output_sync_insn): Likewise.
      	(aarch64_output_sync_insn): Likewise.
      	(aarch64_output_sync_lock_release): Likewise.
      	(aarch64_sync_loop_insns): Likewise.
      	(aarch64_call_generator): Likewise.
      	(aarch64_expand_sync): Likewise.
      	(* emit_f): Remove variable.
      	(aarch64_insn_count): Likewise.
      	(FETCH_SYNC_OPERAND): Likewise.
      	(aarch64_emit_load_exclusive): New function.
      	(aarch64_emit_store_exclusive): Likewise.
      	(aarch64_emit_unlikely_jump): Likewise.
      	(aarch64_expand_compare_and_swap): Likewise.
      	(aarch64_split_compare_and_swap): Likewise.
      	(aarch64_split_atomic_op): Likewise.
      	* config/aarch64/iterators.md
      	(atomic_sfx): New mode attribute.
      	(atomic_optab): New code attribute.
      	(atomic_op_operand): Likewise.
      	(atomic_op_str): Likewise.
      	(syncop): Rename to atomic_op.
      	* config/aarch64/sync.md: Delete.
      	* config/aarch64/atomics.md: New file.
      
      gcc/testsuite
      	* gcc.target/aarch64/atomic-comp-swap-release-acquire.c: New testcase.
      	* gcc.target/aarch64/atomic-op-acq_rel.c: Likewise.
      	* gcc.target/aarch64/atomic-op-acquire.c: Likewise.
      	* gcc.target/aarch64/atomic-op-char.c: Likewise.
      	* gcc.target/aarch64/atomic-op-consume.c: Likewise.
      	* gcc.target/aarch64/atomic-op-imm.c: Likewise.
      	* gcc.target/aarch64/atomic-op-int.c: Likewise.
      	* gcc.target/aarch64/atomic-op-long.c: Likewise.
      	* gcc.target/aarch64/atomic-op-relaxed.c: Likewise.
      	* gcc.target/aarch64/atomic-op-release.c: Likewise.
      	* gcc.target/aarch64/atomic-op-seq_cst.c: Likewise.
      	* gcc.target/aarch64/atomic-op-short.c: Likewise.
      
      From-SVN: r193651
      Sofiane Naci committed
    • re PR debug/55094 (ICE in maybe_record_trace_start, at dwarf2cfi.c:2224) · 206604dc
      	PR middle-end/55094
      	* builtins.c (expand_builtin_trap): Add REG_ARGS_SIZE note
      	on the trap insn for !ACCUMULATE_OUTGOING_ARGS.
      	* cfgcleanup.c (outgoing_edges_match): Don't look at debug insns
      	on the first old_insns_match_p call.  For !ACCUMULATE_OUTGOING_ARGS
      	fail if the last real insn doesn't have REG_ARGS_SIZE note.
      
      	* gcc.dg/pr55094.c: New test.
      
      From-SVN: r193649
      Jakub Jelinek committed
    • re PR bootstrap/55370 (Bad libgcc.map) · 1b845c6e
      	PR bootstrap/55370
      	* libgcc-std.ver.in: Add GCC_4.8.0 and %inherit for it.
      
      From-SVN: r193648
      Jakub Jelinek committed
    • re PR middle-end/54921 (wrong code with -Os -fno-omit-frame-pointer… · 40155239
      re PR middle-end/54921 (wrong code with -Os -fno-omit-frame-pointer -fsched2-use-superblocks -fstack-protector -ftree-slp-vectorize)
      
      	PR rtl-optimization/54921
      	* cselib.h (fp_setter_insn): New prototype.
      	* cselib.c (fp_setter_insn): New function.
      	(cselib_process_insn): If frame_pointer_needed,
      	call cselib_invalidate_rtx (stack_pointer_rtx) after
      	processing a frame pointer setter.
      	* var-tracking.c (fp_setter): Removed.
      	(vt_initialize): Use fp_setter_insn instead of fp_setter.
      
      	* gcc.dg/pr54921.c: New test.
      
      From-SVN: r193647
      Jakub Jelinek committed
    • rs6000.md (movdf_hardfloat32): Reorder move constraints so that the traditional… · 4ced1d6d
      rs6000.md (movdf_hardfloat32): Reorder move constraints so that the traditional floating point loads...
      
      2012-11-19  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	* config/rs6000/rs6000.md (movdf_hardfloat32): Reorder move
      	constraints so that the traditional floating point loads, stores,
      	and moves are done first, then the VSX loads, stores, and moves,
      	and finally the GPR loads, stores, and moves so that reload
      	chooses FPRs over GPRs, and uses the traditional load/store
      	instructions which provide an offset.
      	(movdf_hardfloat64): Likewise.
      
      From-SVN: r193645
      Michael Meissner committed
    • array_allocator.h: Replace uses of __GXX_EXPERIMENTAL_CXX0X__ with __cplusplus. · 6b1328eb
      	* include/ext/array_allocator.h: Replace uses of
      	__GXX_EXPERIMENTAL_CXX0X__ with __cplusplus.
      
      From-SVN: r193644
      Jonathan Wakely committed
    • Daily bump. · b51eb4ff
      From-SVN: r193643
      GCC Administrator committed
  2. 19 Nov, 2012 27 commits
  3. 18 Nov, 2012 1 commit
    • gcc/ · d2eeb2d1
      	* doc/md.texi (extv@var{m}, extvmisalign@var{m}, extzv@var{m})
      	(extzvmisalign@var{m}, insv@var{m}, insvmisalign@var{m}): Document.
      	(insv, extv, extzv): Deprecate.
      	* optabs.def (insv_optab, extv_optab, extzv_optab)
      	(insvmisalign_optab, extvmisalign_optab, extzvmisalign_optab):
      	New optabs.
      	* optabs.c (get_optab_extraction_insn): New function.
      	(get_extraction_insn): Use it.
      	* config/mips/mips.md (extv): Split into...
      	(extvmisalign<mode>, extv<mode>): ...these new patterns.  Rename
      	existing extv<mode> pattern to...
      	(*extv<mode>): ...this.
      	(extzv): Split into...
      	(extzvmisalign<mode>, extzv<mode>): ...these new patterns.  Rename
      	existing extzv<mode> pattern to...
      	(*extzv<mode>): ...this.
      	(insv): Split into...
      	(insvmisalign<mode>, insv<mode>): ...these new patterns.  Rename
      	existing insv<mode> pattern to...
      	(*insv<mode>): ...this.  Use const_int_operand rather than
      	immediate_operand.
      	* config/mips/mips.c (mips_block_move_straight): Use set_mem_size
      	to set the size of BLKmode accesses.
      	(mips_get_unaligned_mem): Require OP0 to be a BLKmode memory,
      	turning it from an "rtx *" to an rtx.
      	(mips_expand_ext_as_unaligned_load): Simplify for new optab
      	interface.  Update call to mips_get_unaligned_mem.
      	(mips_expand_ins_as_unaligned_store): Update call to
      	mips_get_unaligned_mem.
      
      From-SVN: r193606
      Richard Sandiford committed