gcc

~vcs-imports/gcc/+git/gcc:aldyh/cilk-in-gomp

Last commit made on 2013-06-28
Get this branch:
git clone -b aldyh/cilk-in-gomp https://git.launchpad.net/~vcs-imports/gcc/+git/gcc

Branch merges

Branch information

Name:
aldyh/cilk-in-gomp
Repository:
lp:~vcs-imports/gcc/+git/gcc

Recent commits

5ca05cc... by Aldy Hernandez <email address hidden>

Fix merge fallout.

Use flag_enable_cilkplus instead of flag_enable_cilk.

7fb7575... by Aldy Hernandez <email address hidden>

Merge remote-tracking branch 'origin/gomp-4_0-branch' into cilk-in-gomp

Conflicts:
 gcc/Makefile.in
 gcc/c-family/c-common.h
 gcc/c/c-parser.c
 gcc/cp/Make-lang.in
 gcc/cp/cp-tree.h
 gcc/gimple.h
 gcc/omp-low.c
 gcc/testsuite/g++.dg/cilk-plus/cilk-plus.exp
 gcc/testsuite/gcc.dg/cilk-plus/cilk-plus.exp

2814409... by jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>

 * internal-fn.def (GOMP_SIMD_LANE, GOMP_SIMD_VF,
 GOMP_SIMD_LAST_LANE): New internal functions.
 * omp-low.c (omp_max_vf, lower_rec_simd_input_clauses): New
 functions.
 (lower_rec_input_clauses): Add fd argument. Enforce max_vf = 1
 if any data sharing clauses mention VLAs or for array reductions.
 Handle OMP_CLAUSE__LOOPTEMP_ clause. For
 OMP_CLAUSE_{{FIRST,LAST,}PRIVATE,LINEAR,REDUCTION} on SIMD
 constructs use "omp simd array" temporaries. For OMP_CLAUSE_LINEAR
 adjust initial value in combined constructs. Don't emit any
 barriers for #pragma omp distribute. If max_vf is lower than
 current safelen, prepend an OMP_CLAUSE_SAFELEN clause.
 (lower_lastprivate_clauses): Handle "omp simd array" temporaries.
 (lower_reduction_clauses): Exit early for #pragma omp simd.
 (expand_omp_simd): Set loop->simduid from OMP_CLAUSE__SIMDUID_
 and cfun->has_simduid_loops if set.
 If OMP_CLAUSE_SAFELEN (1) is present, don't set loop->safelen
 nor loop->force_vect.
 (lower_omp_sections, lower_omp_single, lower_omp_taskreg): Adjust
 lower_rec_input_clauses callers.
 (lower_omp_for_lastprivate): Unshare vinit.
 (lower_omp_for): Add OMP_CLAUSE__LOOPTEMP_ clauses before calling
 lower_rec_input_clauses. Adjust lower_rec_input_clauses caller.
 Always call lower_omp_for_lastprivate at the same place, even for
 #pragma omp simd.
 * tree.h (enum clause_code): Add OMP_CLAUSE__SIMDUID_.
 (OMP_CLAUSE__SIMDUID__DECL): Define.
 * tree-vectorizer.c: Include hash-table.h and tree-ssa-propagate.h.
 (simduid_to_vf, decl_to_simduid): New classes.
 (simduid_to_vf::hash, simduid_to_vf::equal, decl_to_simduid::hash,
 decl_to_simduid::equal): New methods.
 (note_simd_array_uses_struct): New struct.
 (adjust_simduid_builtins, note_simd_array_uses_cb,
 note_simd_array_uses): New functions.
 (vectorize_loops): Adjust "omp simd array" temporary array sizes
 and fold GOMP_SIMD_{LANE,VF,LAST_LANE} builtins.
 * tree-vectorizer.h (struct _stmt_vec_info): Add simd_lane_access_p
 field.
 (STMT_VINFO_SIMD_LANE_ACCESS_P): Define.
 * tree-data-ref.c (get_references_in_stmt): Allow GOMP_SIMD_LANE
 builtins in their own loops.
 * tree-inline.c (copy_cfg_body): Propagate has_force_vect_loops
 and has_simduid_loops.
 * function.h (struct function): Add has_simduid_loops field.
 * tree-ssa-ccp.c (likely_value): For GOMP_SIMD_{LANE,LAST_LANE,VF}
 builtins ignore the undefined magic argument.
 * tree-pretty-print.c (dump_omp_clause): Handle OMP_CLAUSE__SIMDUID_
 clause.
 * cfgloop.h (struct loop): Add simduid field.
 * Makefile.in (tree-vectorizer.o): Depend on $(HASH_TABLE_H)
 and tree-ssa-propagate.h.
 * tree-vect-data-refs.c (vect_analyze_data_refs): Check for SIMD
 lane access.
 * gimplify.c (omp_add_variable): Handle combination of aligned
 clause and some data sharing clause for the same decl.
 (gimplify_omp_for): For collapse (2) and above simd loops
 predetermine loop iteration vars as lastprivate instead of
 linear.
 * tree.c (omp_clause_num_ops, omp_clause_code_name): Add
 entries for OMP_CLAUSE__SIMDUID_.
 (walk_tree_1): Handle OMP_CLAUSE__SIMDUID_.
 * tree-vect-loop.c (vectorizable_live_operation): Handle live
 GOMP_SIMD_LANE result.
 * tree-vect-stmts.c (vectorizable_call): Vectorize GOMP_SIMD_LANE
 builtin.
 (vectorizable_store, vectorizable_load): Handle
 STMT_VINFO_SIMD_LANE_ACCESS_P.
 * internal-fn.c (expand_GOMP_SIMD_LANE, expand_GOMP_SIMD_VF,
 expand_GOMP_SIMD_LAST_LANE): New functions.

 * testsuite/libgomp.c++/simd-1.C: New test.
 * testsuite/libgomp.c++/simd-2.C: New test.
 * testsuite/libgomp.c++/simd-3.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@200536 138bc75d-0d04-0410-961f-82ee72b054a4

f29638c... by jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>

svn merge -r200419:200532 svn+ssh://gcc.gnu.org/svn/gcc/trunk

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@200535 138bc75d-0d04-0410-961f-82ee72b054a4

beac24f... by mshawcroft <mshawcroft@138bc75d-0d04-0410-961f-82ee72b054a4>

[AArch64] Fix layout of aarch64_cannot_force_const_mem.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200532 138bc75d-0d04-0410-961f-82ee72b054a4

586bb06... by mshawcroft <mshawcroft@138bc75d-0d04-0410-961f-82ee72b054a4>

[AArch64] Update comment w.r.t SYMBOL_TINY_ABSOLUTE address model.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200531 138bc75d-0d04-0410-961f-82ee72b054a4

756fea7... by mshawcroft <mshawcroft@138bc75d-0d04-0410-961f-82ee72b054a4>

Disable strassen.f90 test for aarch64 tiny memory.

This test case is too large to fit into the aarch64 tiny memory model.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200521 138bc75d-0d04-0410-961f-82ee72b054a4

8fd61ab... by mshawcroft <mshawcroft@138bc75d-0d04-0410-961f-82ee72b054a4>

[AArch64] Remove aarch64_symbolic_constant_p.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200519 138bc75d-0d04-0410-961f-82ee72b054a4

fd71105... by ktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>

2013-06-28 Kyrylo Tkachov <email address hidden>

 * config/arm/constraints.md (Ts): New constraint.
 * config/arm/arm.md (arm_movqi_insn): Add alternatives for
 16-bit encodings.
 (compare_scc): Use "Ts" constraint for operand 0.
 (ior_scc_scc): Likewise.
 (and_scc_scc): Likewise.
 (and_scc_scc_nodom): Likewise.
 (ior_scc_scc_cmp): Likewise for operand 7.
 (and_scc_scc_cmp): Likewise.
 * config/arm/thumb2.md (thumb2_movsi_insn):
 Add alternatives for 16-bit encodings.
 (thumb2_movhi_insn): Likewise.
 (thumb2_movsicc_insn): Likewise.
 (thumb2_and_scc): Take 'and' outside cond_exec. Use "Ts" constraint.
 (thumb2_negscc): Use "Ts" constraint.
 Move mvn instruction outside cond_exec block.
 * config/arm/vfp.md (thumb2_movsi_vfp): Add alternatives
 for 16-bit encodings.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200515 138bc75d-0d04-0410-961f-82ee72b054a4

d952d54... by ktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>

2013-06-28 Kyrylo Tkachov <email address hidden>

 * config/arm/arm.md (arm_mulsi3_v6): Add alternative for 16-bit
 encoding.
 (mulsi3addsi_v6): Disable predicable variant for arm_restrict_it.
 (mulsi3subsi): Likewise.
 (mulsidi3adddi): Likewise.
 (mulsidi3_v6): Likewise.
 (umulsidi3_v6): Likewise.
 (umulsidi3adddi_v6): Likewise.
 (smulsi3_highpart_v6): Likewise.
 (umulsi3_highpart_v6): Likewise.
 (mulhisi3tb): Likewise.
 (mulhisi3bt): Likewise.
 (mulhisi3tt): Likewise.
 (maddhisi4): Likewise.
 (maddhisi4tb): Likewise.
 (maddhisi4tt): Likewise.
 (maddhidi4): Likewise.
 (maddhidi4tb): Likewise.
 (maddhidi4tt): Likewise.
 (zeroextractsi_compare0_scratch): Likewise.
 (insv_zero): Likewise.
 (insv_t2): Likewise.
 (anddi_notzesidi_di): Likewise.
 (anddi_notsesidi_di): Likewise.
 (andsi_notsi_si): Likewise.
 (iordi_zesidi_di): Likewise.
 (xordi_zesidi_di): Likewise.
 (andsi_iorsi3_notsi): Likewise.
 (smax_0): Likewise.
 (smax_m1): Likewise.
 (smin_0): Likewise.
 (not_shiftsi): Likewise.
 (unaligned_loadsi): Likewise.
 (unaligned_loadhis): Likewise.
 (unaligned_loadhiu): Likewise.
 (unaligned_storesi): Likewise.
 (unaligned_storehi): Likewise.
 (extv_reg): Likewise.
 (extzv_t2): Likewise.
 (divsi3): Likewise.
 (udivsi3): Likewise.
 (arm_zero_extendhisi2addsi): Likewise.
 (arm_zero_extendqisi2addsi): Likewise.
 (compareqi_eq0): Likewise.
 (arm_extendhisi2_v6): Likewise.
 (arm_extendqisi2addsi): Likewise.
 (arm_movt): Likewise.
 (thumb2_ldrd): Likewise.
 (thumb2_ldrd_base): Likewise.
 (thumb2_ldrd_base_neg): Likewise.
 (thumb2_strd): Likewise.
 (thumb2_strd_base): Likewise.
 (thumb2_strd_base_neg): Likewise.
 (arm_negsi2): Add alternative for 16-bit encoding.
 (arm_one_cmplsi2): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200513 138bc75d-0d04-0410-961f-82ee72b054a4