Commit Graph

127283 Commits

Author SHA1 Message Date
Eric Botcazou
a4d47cacbd re PR debug/59418 (ICE in maybe_record_trace_start, at dwarf2cfi.c:2221)
PR debug/59418
	* dwarf2cfi.c (dwarf2out_frame_debug_cfa_offset): Fix comment and tidy.
	(dwarf2out_frame_debug_cfa_restore): Handle TARGET_DWARF_REGISTER_SPAN.
	(dwarf2out_frame_debug_expr): Tidy.

From-SVN: r206084
2013-12-18 10:34:00 +00:00
Jan Hubicka
468f5fc95c Fix PR number.
From-SVN: r206083
2013-12-18 08:34:29 +00:00
Alexander Ivchenko
8b08db1e9b sse.md (*fma_fmadd_<mode>): Extend to support masking.
* config/i386/sse.md (*fma_fmadd_<mode>): Extend to support masking.
        (*fma_fmsub_<mode>): Ditto.
        (*fma_fnmadd_<mode>): Ditto.
        (*fma_fnmsub_<mode>): Ditto.
        (*fma_fmaddsub_<mode>): Ditto.
        (*fma_fmsubadd_<mode>): Ditto.
        (avx512f_vternlog<mode>): Ditto.
        (avx512f_fixupimm<mode>): Ditto.
        (avx512f_sfixupimm<mode>): Ditto.
        (avx512f_vpermi2var<mode>3): Ditto.
        (avx512f_vpermt2var<mode>3): Ditto.
        (avx512f_fmaddsub_<mode>_maskz): New.
        (avx512f_vternlog<mode>_maskz): Ditto.
        (avx512f_fixupimm<mode>_maskz): Ditto.
        (avx512f_sfixupimm<mode>_maskz): Ditto.
        (avx512f_vpermi2var<mode>3_maskz): Ditto.
        (avx512f_vpermt2var<mode>3_maskz): Ditto.
        (avx512f_expand<mode>_maskz): Ditto.
        * config/i386/subst.md (sd_maskz_name): Ditto.
        (sd_mask_op4): Ditto.
        (sd_mask_op5): Ditto.
        (sd_mask_codefor): Ditto.
        (sd_mask_mode512bit_condition): Ditto.
        (sd): Ditto.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>

From-SVN: r206081
2013-12-18 08:18:22 +00:00
Alexander Ivchenko
a95ec51797 sse.md (avx512f_cmp<mode>3): Extend to support masking.
* config/i386/sse.md (avx512f_cmp<mode>3): Extend to support masking.
        (avx512f_ucmp<mode>3): Ditto.
        (avx512f_eq<mode>3): Ditto.
        (avx512f_gt<mode>3): Ditto.
        (avx512f_testm<mode>3): Ditto.
        (avx512f_testnm<mode>3): Ditto.
        * config/i386/subst.md (SUBST_S): New.
        (mask_scalar_merge_name): Ditto.
        (mask_scalar_merge_operand3): Ditto.
        (mask_scalar_merge_operand4): Ditto.
        (mask_scalar_merge): Ditto.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>

From-SVN: r206080
2013-12-18 07:45:29 +00:00
GCC Administrator
82b8950fc1 Daily bump.
From-SVN: r206077
2013-12-18 00:16:52 +00:00
Jan Hubicka
bdf37f7a71 re PR middle-end/35545 (tracer pass is run too late)
PR middle-end/35535
	* gimple-fold.c (fold_gimple_assign): Attempt to devirtualize
	OBJ_TYPE_REF.
	(gimple_fold_stmt_to_constant_1): Bypass OBJ_TYPE_REF wrappers.

From-SVN: r206074
2013-12-17 23:43:22 +00:00
Jan Hubicka
a4fff37a46 re PR middle-end/35545 (tracer pass is run too late)
PR middle-end/35535
	* tree-vrp.c (extract_range_from_unary_expr_1): Handle OBJ_TYPE_REF.

From-SVN: r206073
2013-12-17 23:41:41 +00:00
Teresa Johnson
91af97c394 re PR gcov-profile/59527 (ICE: in fixup_reorder_chain, at cfgrtl.c:3739 during PGO Firefox build)
2013-12-17  Teresa Johnson  <tejohnson@google.com>

	PR gcov-profile/59527
	* cfgrtl.c (fixup_reorder_chain): Handle a region-crossing
        branch, which can't be eliminated.

From-SVN: r206072
2013-12-17 22:35:38 +00:00
Martin Liska
9cec31f43a Time profile-based function reordering (phase 2).
Co-Authored-By: Jan Hubicka <jh@suse.cz>

From-SVN: r206070
2013-12-17 22:20:12 +00:00
Jakub Jelinek
14407011d6 re PR tree-optimization/59523 (r205856 caused internal compiler error: verify_ssa failed)
PR tree-optimization/59523
	* tree-vectorizer.c (fold_loop_vectorized_call): Call update_stmt
	on updated stmts.

	* gcc.dg/pr59523.c: New test.

From-SVN: r206069
2013-12-17 22:36:21 +01:00
Ian Lance Taylor
5aac5cb24b compiler: Use backend interface for runtime errors.
From-SVN: r206067
2013-12-17 20:27:52 +00:00
Aldy Hernandez
bd925c509a ipa-inline.c (gate_ipa_inline): Remove.
* ipa-inline.c (gate_ipa_inline): Remove.
	(const pass_data pass_data_ipa_inline): Unset has_gate.
	(class pass_ipa_inline): Remove gate() method.

From-SVN: r206066
2013-12-17 20:18:28 +00:00
Marek Polacek
a7caf9054f Add __int128 test.
From-SVN: r206065
2013-12-17 18:41:01 +00:00
Andreas Tobler
95796c1fa5 unix.c (tempfile_open): Only use the needed flag O_CLOEXEC.
2013-12-17  Andreas Tobler  <andreast@gcc.gnu.org>

    * io/unix.c (tempfile_open): Only use the needed flag O_CLOEXEC.

From-SVN: r206064
2013-12-17 19:12:39 +01:00
Andreas Tobler
ae246f7f1d affinity-1.c: Remove alloca.h inlcude.
2013-12-17  Andreas Tobler  <andreast@gcc.gnu.org>

    * testsuite/libgomp.c/affinity-1.c: Remove alloca.h inlcude. Replace
    alloca () with __builtin_alloca ().
    * testsuite/libgomp.c/icv-2.c: Add FreeBSD coverage.
    * testsuite/libgomp.c/lock-3.c: Likewise.
    * testsuite/libgomp.c/pr48591.c: Likewise.

From-SVN: r206063
2013-12-17 19:05:32 +01:00
Jakub Jelinek
5a2075280a re PR middle-end/58290 (error: virtual definition of statement not up-to-date)
PR ipa/58290
	* gfortran.dg/pr58290.f90: New test.

From-SVN: r206062
2013-12-17 18:35:59 +01:00
Jan Hubicka
7656ee7297 ipa-devirt.c (get_polymorphic_call_info): Fix offset calculatoin in contains_type_p query.
* ipa-devirt.c (get_polymorphic_call_info): Fix offset calculatoin
	in contains_type_p query.

From-SVN: r206061
2013-12-17 16:08:42 +00:00
Jan Hubicka
18aacdca29 * g++.dg/ipa/devirt-13.C: Update template.
From-SVN: r206060
2013-12-17 16:07:18 +00:00
Thomas Schwinge
7bac74e552 Remove leftover variable definition.
gcc/
	* omp-low.c (tmp_ompfn_id_num): Remove leftover variable
	definition.

From-SVN: r206059
2013-12-17 16:22:29 +01:00
Thomas Schwinge
ba73b87938 Remove leftover function declaration.
gcc/
	* tree-pass.h (make_pass_expand_omp_ssa): Remove leftover function
	declaration.

From-SVN: r206058
2013-12-17 16:22:18 +01:00
Thomas Schwinge
cde7514327 Remove leftover comment.
gcc/
	* omp-low.c: Remove leftover comment.

From-SVN: r206057
2013-12-17 16:22:07 +01:00
Thomas Schwinge
b33a2b7774 Fix typo in dg-warning comment.
gcc/testsuite/
	* gcc.dg/dfp/wtr-conversion-1.c (testfunc1): Fix typo.

From-SVN: r206056
2013-12-17 16:21:57 +01:00
Thomas Schwinge
e024686951 Reflect reality in comment.
gcc/
	* omp-low.c (check_combined_parallel): Reflect reality in comment.

From-SVN: r206055
2013-12-17 16:21:45 +01:00
Thomas Schwinge
2769de23ee Document passes.def.
gcc/
	* doc/cfg.texi (Control Flow): Refer to passes.def instead of
	passes.c.
	* doc/passes.texi (Pass manager): Refer to passes.def.

From-SVN: r206054
2013-12-17 16:21:34 +01:00
Thomas Schwinge
c25a7053e9 Properly order chapters in GCC Internals manual.
gcc/
	* doc/gccint.texi (Top): Fix inclusion order.

From-SVN: r206053
2013-12-17 16:21:23 +01:00
Thomas Schwinge
cef0fd0ec8 Fix description of OpenMP parallel directive in the C and C++ front ends.
gcc/c/
	* c-parser.c (c_parser_omp_parallel): Fix description.
	gcc/cp/
	* parser.c (cp_parser_omp_parallel): Fix description.

From-SVN: r206052
2013-12-17 16:21:07 +01:00
Jakub Jelinek
fa00a5fe2a re PR testsuite/59534 (FAIL: libgomp.fortran/retval1.f90 execution test due to denormals)
PR testsuite/59534
	* testsuite/libgomp.fortran/retval1.f90 (e5): Avoid non-shortcircuited
	comparisons.

From-SVN: r206051
2013-12-17 16:17:00 +01:00
Kyrylo Tkachov
c17ac06ac2 arm-cores.def (cortex-a12): Use cortexa15 scheduling.
2013-12-17  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm-cores.def (cortex-a12): Use cortexa15 scheduling.
	* config/arm/arm.c (arm_issue_rate): Handle cortexa12.
	* config/arm/arm.md (generic_vfp): Remove cortexa12.

From-SVN: r206050
2013-12-17 13:44:07 +00:00
James Greenhalgh
7f8b9e3641 [ARM 5/5 big.LITTLE] Add support for -mcpu=cortex-a57.cortex-a53
gcc/

	* config/arm/arm-cores.def (cortex-a57.cortex-a53): New.
	* doc/invoke.texi: Document -mcpu=cortex-a57.cortex-a53.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm-tune.md: Regenerate.
	* config/arm/bpabi.h
	(BE8_LINK_SPEC): Handle -mcpu=cortex-a57.cortex-a53.

From-SVN: r206049
2013-12-17 12:32:43 +00:00
James Greenhalgh
222f9bd086 [ARM 4/5 big.LITTLE] Add support for -mcpu=cortex-a57
gcc/
	* config/arm/arm-cores.def (cortex-a57): New.
	* doc/invoke.texi: Document -mcpu=cortex-a57.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm-tune.md: Regenerate.
	* config/arm/bpabi.h (BE8_LINK_SPEC): Handle -mcpu=cortex-a57.

From-SVN: r206048
2013-12-17 12:30:35 +00:00
James Greenhalgh
4afb594c57 [ARM 3/5 big.LITTLE] Add support for -mcpu=cortex-a15.cortex-a7
2013-12-17  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/arm/arm-cores.def (cortex-a15.cortex-a7): New.
	* doc/invoke.texi: Document -mcpu=cortex-a15.cortex-a7.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm-tune.md: Regenerate.
	* config/arm/bpabi.h
	(BE8_LINK_SPEC): Handle -mcpu=cortex-a5.cortex-a7.

From-SVN: r206047
2013-12-17 12:27:38 +00:00
James Greenhalgh
c0e25e6593 [ARM 2/5 big.LITTLE] Allow tuning parameters without unique tuning targets.
gcc/
	* config/arm/arm-cores.def: Add new column for TUNE_IDENT.
	* config/arm/genopt.sh: Improve layout.
	* config/arm/arm-tune.md: Regenerate.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm-opts.h (ARM_CORE): Modify macro for TUNE_IDENT.
	* config/arm/arm.c (ARM_CORE): Modify macro for TUNE_IDENT.
	(arm_option_override): When a CPU is chosen, that should also
	form the tune target.
	* config/arm/arm.h (ARM_CORE): Modify macro for TUNE_IDENT.

From-SVN: r206046
2013-12-17 12:26:10 +00:00
James Greenhalgh
b848e289cf [ARM 1/5 big.LITTLE] Add driver support for rewriting -mcpu names
gcc/
	* common/config/arm/arm-common.c (arm_rewrite_selected_cpu): New.
	(arm_rewrite_mcpu): Likewise.
	* config/arm/arm-protos.h (arm_rewrite_selected_cpu): New.
	* config/arm/arm.h (BIG_LITTLE_SPEC): New.
	(BIG_LITTLE_SPEC_FUNCTIONS): Likewise.
	(EXTRA_SPEC_FUNCTIONS): Include BIG_LITTLE_SPEC_FUNCTIONS.
	(ASM_CPU_SPEC): Include BIG_LITTLE_SPEC.
	* config/arm/arm.c (arm_file_start): Rewrite arm_selecetd_cpu values.

From-SVN: r206045
2013-12-17 12:24:05 +00:00
Eric Botcazou
548cfdc2ca expmed.c (lowpart_bit_field_p): Fix comment.
* expmed.c (lowpart_bit_field_p): Fix comment.
	(store_bit_field_using_insv): Fix formatting.
	(store_bit_field): Likewise.
	(store_fixed_bit_field): More declaration and remove return.
	(store_fixed_bit_field_1): Fix formatting.
	(extract_fixed_bit_field): Move declaration.
	(extract_fixed_bit_field_1): Simplify.

From-SVN: r206044
2013-12-17 12:11:40 +00:00
Jan Hubicka
61dd6a2e33 devirt-13.C: Update template.
* g++.dg/ipa/devirt-13.C: Update template.
	* ipa-utils.h (possible_polymorphic_call_targets): Determine context of
	the call.
	* gimple-fold.c (gimple_fold_call): Use ipa-devirt to devirtualize.

From-SVN: r206042
2013-12-17 10:26:59 +00:00
Jakub Jelinek
2477c234e2 expr.c (convert_modes): For SUBREG_PROMOTED_VAR_P use SUBREG_REG (x) instead of x as last gen_lowpart...
* expr.c (convert_modes): For SUBREG_PROMOTED_VAR_P use SUBREG_REG (x)
	instead of x as last gen_lowpart argument.

From-SVN: r206040
2013-12-17 09:46:16 +01:00
Jerry DeLisle
1ede59e4c7 re PR libfortran/59419 (Failing OPEN with FILE='xxx' and IOSTAT creates the file 'xxx' after revision 196783)
2013-12-16  Jerry DeLisle  <jvdelisle@gcc.gnu>

	PR libfortran/59419
	* io/file_pos.c (st_rewind): Do proper return after
	generate_error.
	* io/open.c (edit_modes): Move action code inside block that
	checks for library ok. (new_unit): Do cleanup after error.
	(st_open): Do proper return after error.
	* io/transfer.c (data_transfer_init): Likewise.

From-SVN: r206039
2013-12-17 03:06:04 +00:00
GCC Administrator
01d9018526 Daily bump.
From-SVN: r206038
2013-12-17 00:17:03 +00:00
Janus Weil
5b0b27f9c3 re PR fortran/54949 ([F03] abstract procedure pointers not rejected)
2013-12-16  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/54949
	* symbol.c (check_conflict): Forbid abstract procedure pointers.
	(gfc_add_abstract): Check for attribute conflicts.


2013-12-16  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/54949
	* gfortran.dg/proc_ptr_44.f90: New.

From-SVN: r206033
2013-12-16 23:01:58 +01:00
Chris Manghane
71eba7a0c6 compiler: Use backend interface for struct field expressions.
* go-gcc.cc (Gcc_backend::struct_field_expression): New function.

From-SVN: r206029
2013-12-16 19:58:50 +00:00
Markus Trippelsdorf
74f769b5e0 * MAINTAINERS (Write After Approval): Add myself.
From-SVN: r206027
2013-12-16 19:01:40 +00:00
Jakub Jelinek
d5fa9cc994 predict.h (PROB_LIKELY): Fix the value.
* predict.h (PROB_LIKELY): Fix the value.
	* internal-fn.c (ubsan_expand_si_overflow_mul_check): Add support
	for overflow checking for modes without 2xwider supported mode,
	if the mode has 2xnarrower mode.

	* c-c++-common/ubsan/overflow-mul-3.c: New test.
	* c-c++-common/ubsan/overflow-mul-4.c: New test.

From-SVN: r206026
2013-12-16 19:46:49 +01:00
Jakub Jelinek
9728643162 internal-fn.c: Include stringpool.h and tree-ssanames.h.
* internal-fn.c: Include stringpool.h and tree-ssanames.h.
	(ubsan_expand_si_overflow_addsub_check): In the generic expansion,
	try to improve generated code if one of the arguments is constant
	or get_range_info says that one of the argument is always
	negative or always non-negative.
	* tree-vrp.c (simplify_internal_call_using_ranges): New function.
	(simplify_stmt_using_ranges): Call it.

From-SVN: r206025
2013-12-16 19:44:51 +01:00
Vladimir Makarov
91c5ee5b4a re PR rtl-optimization/59466 (Slow code generation by LRA for memory addresses on PPC)
2013-12-16  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/59466
	* emit-rtl.c (change_address_1): Don't validate address for LRA.
	* recog.c (general_operand): Accept any memory for LRA.
	* lra.c (lra_set_insn_recog_data): Add an assert.

From-SVN: r206023
2013-12-16 18:24:54 +00:00
Jakub Jelinek
7670d795d5 tree-vectorizer.h (struct _loop_vec_info): Add scalar_loop field.
* tree-vectorizer.h (struct _loop_vec_info): Add scalar_loop field.
	(LOOP_VINFO_SCALAR_LOOP): Define.
	(slpeel_tree_duplicate_loop_to_edge_cfg): Add scalar_loop argument.
	* config/i386/sse.md (maskload<mode>, maskstore<mode>): New expanders.
	* tree-data-ref.c (get_references_in_stmt): Handle MASK_LOAD and
	MASK_STORE.
	* internal-fn.def (LOOP_VECTORIZED, MASK_LOAD, MASK_STORE): New
	internal fns.
	* tree-if-conv.c: Include expr.h, optabs.h, tree-ssa-loop-ivopts.h and
	tree-ssa-address.h.
	(release_bb_predicate): New function.
	(free_bb_predicate): Use it.
	(reset_bb_predicate): Likewise.  Don't unallocate bb->aux
	just to immediately allocate it again.
	(add_to_predicate_list): Add loop argument.  If basic blocks that
	dominate loop->latch don't insert any predicate.
	(add_to_dst_predicate_list): Adjust caller.
	(if_convertible_phi_p): Add any_mask_load_store argument, if true,
	handle it like flag_tree_loop_if_convert_stores.
	(insert_gimplified_predicates): Likewise.
	(ifcvt_can_use_mask_load_store): New function.
	(if_convertible_gimple_assign_stmt_p): Add any_mask_load_store
	argument, check if some conditional loads or stores can't be
	converted into MASK_LOAD or MASK_STORE.
	(if_convertible_stmt_p): Add any_mask_load_store argument,
	pass it down to if_convertible_gimple_assign_stmt_p.
	(predicate_bbs): Don't return bool, only check if the last stmt
	of a basic block is GIMPLE_COND and handle that.  Adjust
	add_to_predicate_list caller.
	(if_convertible_loop_p_1): Only call predicate_bbs if
	flag_tree_loop_if_convert_stores and free_bb_predicate in that case
	afterwards, check gimple_code of stmts here.  Replace is_predicated
	check with dominance check.  Add any_mask_load_store argument,
	pass it down to if_convertible_stmt_p and if_convertible_phi_p,
	call if_convertible_phi_p only after all if_convertible_stmt_p
	calls.
	(if_convertible_loop_p): Add any_mask_load_store argument,
	pass it down to if_convertible_loop_p_1.
	(predicate_mem_writes): Emit MASK_LOAD and/or MASK_STORE calls.
	(combine_blocks): Add any_mask_load_store argument, pass
	it down to insert_gimplified_predicates and call predicate_mem_writes
	if it is set.  Call predicate_bbs.
	(version_loop_for_if_conversion): New function.
	(tree_if_conversion): Adjust if_convertible_loop_p and combine_blocks
	calls.  Return todo flags instead of bool, call
	version_loop_for_if_conversion if if-conversion should be just
	for the vectorized loops and nothing else.
	(main_tree_if_conversion): Adjust caller.  Don't call
	tree_if_conversion for dont_vectorize loops if if-conversion
	isn't explicitly enabled.
	* tree-vect-data-refs.c (vect_check_gather): Handle
	MASK_LOAD/MASK_STORE.
	(vect_analyze_data_refs, vect_supportable_dr_alignment): Likewise.
	* gimple.h (gimple_expr_type): Handle MASK_STORE.
	* internal-fn.c (expand_LOOP_VECTORIZED, expand_MASK_LOAD,
	expand_MASK_STORE): New functions.
	* tree-vectorizer.c: Include tree-cfg.h and gimple-fold.h.
	(vect_loop_vectorized_call, fold_loop_vectorized_call): New functions.
	(vectorize_loops): Don't try to vectorize loops with
	loop->dont_vectorize set.  Set LOOP_VINFO_SCALAR_LOOP for if-converted
	loops, fold LOOP_VECTORIZED internal call depending on if loop
	has been vectorized or not.
	* tree-vect-loop-manip.c (slpeel_duplicate_current_defs_from_edges):
	New function.
	(slpeel_tree_duplicate_loop_to_edge_cfg): Add scalar_loop argument.
	If non-NULL, copy basic blocks from scalar_loop instead of loop, but
	still to loop's entry or exit edge.
	(slpeel_tree_peel_loop_to_edge): Add scalar_loop argument, pass it
	down to slpeel_tree_duplicate_loop_to_edge_cfg.
	(vect_do_peeling_for_loop_bound, vect_do_peeling_for_loop_alignment):
	Adjust callers.
	(vect_loop_versioning): If LOOP_VINFO_SCALAR_LOOP, perform loop
	versioning from that loop instead of LOOP_VINFO_LOOP, move it to the
	right place in the CFG afterwards.
	* tree-vect-loop.c (vect_determine_vectorization_factor): Handle
	MASK_STORE.
	* cfgloop.h (struct loop): Add dont_vectorize field.
	* tree-loop-distribution.c (copy_loop_before): Adjust
	slpeel_tree_duplicate_loop_to_edge_cfg caller.
	* optabs.def (maskload_optab, maskstore_optab): New optabs.
	* passes.def: Add a note that pass_vectorize must immediately follow
	pass_if_conversion.
	* tree-predcom.c (split_data_refs_to_components): Give up if
	DR_STMT is a call.
	* tree-vect-stmts.c (vect_mark_relevant): Don't crash if lhs
	is NULL.
	(exist_non_indexing_operands_for_use_p): Handle MASK_LOAD
	and MASK_STORE.
	(vectorizable_mask_load_store): New function.
	(vectorizable_call): Call it for MASK_LOAD or MASK_STORE.
	(vect_transform_stmt): Handle MASK_STORE.
	* tree-ssa-phiopt.c (cond_if_else_store_replacement): Ignore
	DR_STMT where lhs is NULL.
	* optabs.h (can_vec_perm_p): Fix up comment typo.
	(can_vec_mask_load_store_p): New prototype.
	* optabs.c (can_vec_mask_load_store_p): New function.

	* gcc.dg/vect/vect-cond-11.c: New test.
	* gcc.target/i386/vect-cond-1.c: New test.
	* gcc.target/i386/avx2-gather-5.c: New test.
	* gcc.target/i386/avx2-gather-6.c: New test.
	* gcc.dg/vect/vect-mask-loadstore-1.c: New test.
	* gcc.dg/vect/vect-mask-load-1.c: New test.

From-SVN: r206022
2013-12-16 19:24:15 +01:00
Jakub Jelinek
d5be902880 Additional ChangeLog entry fix.
From-SVN: r206021
2013-12-16 18:59:52 +01:00
Jakub Jelinek
4b6891952f Fix up ChangeLog entry function name.
From-SVN: r206020
2013-12-16 18:55:13 +01:00
Jakub Jelinek
97a778bdcd re PR libgomp/59337 (surprising OMP error message)
PR libgomp/59337
	* openmp.c (resolve_omp_atomic): Adjust error message.

	* gfortran.dg/gomp/pr59337.f90: New test.

From-SVN: r206017
2013-12-16 16:33:42 +01:00
Kirill Yukhin
292e6398d0 Revert r206010.
From-SVN: r206016
2013-12-16 14:04:02 +00:00
Kyrylo Tkachov
2c00495a87 driver-arm.c (arm_cpu_table): Add cortex-a12 entry.
2013-12-16  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/driver-arm.c (arm_cpu_table): Add cortex-a12 entry.

From-SVN: r206015
2013-12-16 13:56:28 +00:00