janus [Mon, 16 Dec 2013 22:01:58 +0000 (22:01 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206033
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Mon, 16 Dec 2013 19:58:50 +0000 (19:58 +0000)]
compiler: Use backend interface for struct field expressions.
* go-gcc.cc (Gcc_backend::struct_field_expression): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206029
138bc75d-0d04-0410-961f-
82ee72b054a4
trippels [Mon, 16 Dec 2013 19:01:40 +0000 (19:01 +0000)]
* MAINTAINERS (Write After Approval): Add myself.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206027
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 16 Dec 2013 18:46:49 +0000 (18:46 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206026
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 16 Dec 2013 18:44:51 +0000 (18:44 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206025
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Mon, 16 Dec 2013 18:24:54 +0000 (18:24 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206023
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 16 Dec 2013 18:24:15 +0000 (18:24 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206022
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 16 Dec 2013 17:59:52 +0000 (17:59 +0000)]
Additional ChangeLog entry fix.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206021
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 16 Dec 2013 17:55:13 +0000 (17:55 +0000)]
Fix up ChangeLog entry function name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206020
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 16 Dec 2013 15:33:42 +0000 (15:33 +0000)]
PR libgomp/59337
* openmp.c (resolve_omp_atomic): Adjust error message.
* gfortran.dg/gomp/pr59337.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206017
138bc75d-0d04-0410-961f-
82ee72b054a4
kyukhin [Mon, 16 Dec 2013 14:04:02 +0000 (14:04 +0000)]
Revert r206010.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206016
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Mon, 16 Dec 2013 13:56:28 +0000 (13:56 +0000)]
2013-12-16 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/driver-arm.c (arm_cpu_table): Add cortex-a12 entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206015
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 16 Dec 2013 13:37:43 +0000 (13:37 +0000)]
PR ipa/59265
* ipa-profile.c (ipa_profile_generate_summary): Do not ICE when
call is already devirtualized.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206014
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 16 Dec 2013 10:56:45 +0000 (10:56 +0000)]
* Makefile.in (version.o): Restore dependencies on
$(REVISION), $(DATESTAMP), $(BASEVER) and $(DEVPHASE).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206013
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Mon, 16 Dec 2013 10:52:48 +0000 (10:52 +0000)]
PR ipa/59473
* ipa-devirt.c (get_class_context): Do not ICE when type is found
at wrong offset.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206012
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 16 Dec 2013 10:34:28 +0000 (10:34 +0000)]
PR libgomp/58756
* omp-low.c (lower_rec_input_clauses) <case OMP_CLAUSE_REDUCTION>: For
reductions without placeholder if is_simd, but when not using
GOMP_SIMD* internal calls, also perform the reduction operation
on the outer var rather than simple assignment.
* testsuite/libgomp.c/pr58756.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206011
138bc75d-0d04-0410-961f-
82ee72b054a4
kyukhin [Mon, 16 Dec 2013 08:52:08 +0000 (08:52 +0000)]
* config/i386/i386.c (slm_cost): Fix imul cost for HI.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206010
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 16 Dec 2013 08:09:05 +0000 (08:09 +0000)]
PR middle-end/58956
PR middle-end/59470
* gimple-walk.h (walk_stmt_load_store_addr_fn): New typedef.
(walk_stmt_load_store_addr_ops, walk_stmt_load_store_ops): Use it
for callback params.
* gimple-walk.c (walk_stmt_load_store_ops): Likewise.
(walk_stmt_load_store_addr_ops): Likewise. Adjust all callback
calls to supply the gimple operand containing the base tree
as an extra argument.
* tree-ssa-ter.c: Include gimple-walk.h.
(find_ssaname, find_ssaname_in_store): New helper functions.
(find_replaceable_in_bb): For calls or GIMPLE_ASM, only set
same_root_var if USE is used somewhere in the stores of the stmt.
* ipa-prop.c (visit_ref_for_mod_analysis): Remove name of the stmt
argument and ATTRIBUTE_UNUSED, add another unnamed tree argument.
* ipa-pure-const.c (check_load, check_store, check_ipa_load,
check_ipa_store): Likewise.
* gimple.c (gimple_ior_addresses_taken_1, check_loadstore): Likewise.
* ipa-split.c (test_nonssa_use, mark_nonssa_use): Likewise.
(verify_non_ssa_vars, visit_bb): Adjust their callers.
* cfgexpand.c (add_scope_conflicts_1): Use
walk_stmt_load_store_addr_fn type for visit variable.
(visit_op, visit_conflict): Remove name of the stmt
argument and ATTRIBUTE_UNUSED, add another unnamed tree argument.
* tree-sra.c (asm_visit_addr): Likewise. Remove name of the data
argument and ATTRIBUTE_UNUSED.
* cgraphbuild.c (mark_address, mark_load, mark_store): Add another
unnamed tree argument.
* gimple-ssa-isolate-paths.c (check_loadstore): Likewise. Remove
ATTRIBUTE_UNUSED from stmt parameter.
* gcc.target/i386/pr59470.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206009
138bc75d-0d04-0410-961f-
82ee72b054a4
cltang [Mon, 16 Dec 2013 04:28:24 +0000 (04:28 +0000)]
2013-12-16 Chung-Lin Tang <cltang@codesourcery.com>
* opts-common.c (integral_argument): Add support for
hexadecimal command option integer arguments. Update comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206008
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 16 Dec 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206007
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sun, 15 Dec 2013 22:19:33 +0000 (22:19 +0000)]
PR ipa/59265
* ipa-prop.c (ipa_analyze_call_uses): Skip already
devirtualized calls.
g++.dg/torture/pr59265.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206004
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sun, 15 Dec 2013 18:40:50 +0000 (18:40 +0000)]
* gcc.dg/vect/vect-nop-move.c (foo32x2_be): Call
__builtin_ia32_emms for 32bit x86 targets.
(foo32x2_le): Ditto.
(main): Reorder function calls.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206002
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sun, 15 Dec 2013 12:43:06 +0000 (12:43 +0000)]
* gcc.target/i386/pr57756.c (dg-options): Add -mno-sse3.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206000
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sun, 15 Dec 2013 12:24:17 +0000 (12:24 +0000)]
* ChangeLog: Add missing PR number.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205999
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sun, 15 Dec 2013 11:20:53 +0000 (11:20 +0000)]
* gcc.target/i386/pr43662.c (dg-options):
Add -maccumulate-outgoing-args.
* gcc.target/i386/pr43869.c (dg-options): Ditto.
* gcc.target/i386/pr57003.c (dg-options): Ditto.
* gcc.target/i386/avx-vzeroupper-16.c (dg-options):
Remove -mtune=generic and add -maccumulate-outgoing-args instead.
* gcc.target/i386/avx-vzeroupper-17.c (dg-options): Ditto.
* gcc.target/i386/avx-vzeroupper-18.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/func-1.c (dg-options):
Add -maccumulate-outgoing-args.
* gcc.target/x86_64/abi/callabi/func-2a.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/func-2b.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/func-indirect.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/func-indirect-2a.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/func-indirect-2b.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/leaf-1.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/leaf-2.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/pr38891.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-1.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-2.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-3.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-4a.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-4b.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-5a.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-5b.c (dg-options): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205998
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Sun, 15 Dec 2013 09:49:51 +0000 (09:49 +0000)]
2013-12-15 Janus Weil <janus@gcc.gnu.org>
PR fortran/59493
* class.c (gfc_find_intrinsic_vtab): Handle BT_CLASS.
2013-12-15 Janus Weil <janus@gcc.gnu.org>
PR fortran/59493
* gfortran.dg/unlimited_polymorphic_15.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205997
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 15 Dec 2013 00:16:28 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205996
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sat, 14 Dec 2013 22:08:48 +0000 (22:08 +0000)]
PR middle-end/58477
* ipa-prop.c (stmt_may_be_vtbl_ptr_store): Skip clobbers.
* g++.dg/ipa/devirt-19.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205993
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Sat, 14 Dec 2013 20:07:52 +0000 (20:07 +0000)]
More overflow-negate-* testing.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205992
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sat, 14 Dec 2013 18:28:22 +0000 (18:28 +0000)]
PR middle-end/58477
* cgraphclones.c (cgraph_clone_edge): Do not resolve speculative edges.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205991
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Sat, 14 Dec 2013 17:47:22 +0000 (17:47 +0000)]
2013-12-14 Janus Weil <janus@gcc.gnu.org>
PR fortran/59502
* primary.c (gfc_match_varspec): Check for 'class_ok'.
2013-12-14 Janus Weil <janus@gcc.gnu.org>
PR fortran/59502
* gfortran.dg/class_57.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205990
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Sat, 14 Dec 2013 17:01:49 +0000 (17:01 +0000)]
Restore flag_pic in ix86_function_specific_restore
gcc/
PR target/59492
* config/i386/i386.c (ix86_function_specific_restore): Don't
change -fPIC.
2013-12-14 H.J. Lu <hongjiu.lu@intel.com>
PR target/59492
* g++.dg/other/pr59492.C: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205989
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Sat, 14 Dec 2013 16:59:34 +0000 (16:59 +0000)]
Fix the ChangeLog entries
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205988
138bc75d-0d04-0410-961f-
82ee72b054a4
schwab [Sat, 14 Dec 2013 15:30:45 +0000 (15:30 +0000)]
* g++.dg/cilk-plus/cilk-plus.exp: Fix last change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205987
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 14 Dec 2013 15:24:58 +0000 (15:24 +0000)]
* var-tracking.c (add_stores): Fix oversight in latest commit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205986
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Sat, 14 Dec 2013 13:31:04 +0000 (13:31 +0000)]
More tests for ubsan.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205985
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Sat, 14 Dec 2013 12:19:56 +0000 (12:19 +0000)]
PR sanitizer/59503
* internal-fn.c (ubsan_expand_si_overflow_addsub_check): Call
expand_binop with correct optab depending on code.
testsuite/
* c-c++-common/ubsan/pr59503.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205984
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Sat, 14 Dec 2013 10:31:56 +0000 (10:31 +0000)]
2013-12-14 Janus Weil <janus@gcc.gnu.org>
PR fortran/59450
* module.c (mio_expr): Handle type-bound function expressions.
2013-12-14 Janus Weil <janus@gcc.gnu.org>
PR fortran/59450
* gfortran.dg/typebound_proc_31.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205983
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Sat, 14 Dec 2013 08:06:22 +0000 (08:06 +0000)]
Fix REG_PARM_STACK_SPACE usage in expand_call
2013-12-14 Tom de Vries <tom@codesourcery.com>
* calls.c (expand_call): Fix REG_PARM_STACK_SPACE comparison.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205982
138bc75d-0d04-0410-961f-
82ee72b054a4
dj [Sat, 14 Dec 2013 03:45:14 +0000 (03:45 +0000)]
* config/rl78/rl78-expand.md (one_cmplqi2): Make constant signed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205981
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 14 Dec 2013 00:16:27 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205980
138bc75d-0d04-0410-961f-
82ee72b054a4
dj [Fri, 13 Dec 2013 21:58:29 +0000 (21:58 +0000)]
* config/msp430/msp430.md (movqi): replace general_operand with
msp_general_operand and nonimmediate_operand with
msp_nonimmediate_operand to allow volatile operands.
(movhi): Likewise.
(movpsi): Likewise.
(addpsi3): Likewise.
(addhi3): Likewise.
(addhi3_cy): Likewise.
(addchi4_cy): Likewise.
(xor<mode>3): Likewise.
(ome_cmpl<mode>2): Likewise.
(extendqihi2): Likewise.
(zero_extendqihi2): Likewise.
(zero_extendhipsi2): Likewise.
(truncpsihi2): Likewise.
(srai_1): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205977
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Fri, 13 Dec 2013 21:52:21 +0000 (21:52 +0000)]
Fix g++.dg/cilk-plus/cilk-plus.exp
* g++.dg/cilk-plus/cilk-plus.exp: Properly set ld_library_path.
Use TEST_EXTRA_LIBS instead of ALWAYS_CFLAGS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205976
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Fri, 13 Dec 2013 21:42:02 +0000 (21:42 +0000)]
* configure.ac: Add user-friendly check for native x86_64-linux
multilibs.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205975
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Fri, 13 Dec 2013 20:47:19 +0000 (20:47 +0000)]
2013-12-13 Vladimir Makarov <vmakarov@redhat.com>
* ira.h (struct ira_reg_equiv): Rename to ira_reg_equiv_s.
* ira.c: Ditto.
* lra-int.h (lra_init_equiv): New prototype.
* lra-constraints.c (lra_init_equiv, update_equiv): New functions.
(loc_equivalence_callback): Use the 3rd arg.
(lra_constraints): Update equivalences. Pass curr_insn to
simplify_replace_fn_rtx.
* lra.c (lra): Call lra_init_equiv.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205974
138bc75d-0d04-0410-961f-
82ee72b054a4
zadeck [Fri, 13 Dec 2013 19:04:14 +0000 (19:04 +0000)]
2013-12-13 Kenneth Zadeck <zadeck@naturalbridge.com>
* genmodes.c (emit_max_int): Fixed missing parens.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205970
138bc75d-0d04-0410-961f-
82ee72b054a4
aldyh [Fri, 13 Dec 2013 17:50:18 +0000 (17:50 +0000)]
PR tree-optimization/59149
* calls.c (flags_from_decl_or_type): Fail on non decl or type.
* trans-mem.c (diagnose_tm_1): Do not call flags_from_decl_or_type
if no type or decl.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205967
138bc75d-0d04-0410-961f-
82ee72b054a4
bviyer [Fri, 13 Dec 2013 16:44:02 +0000 (16:44 +0000)]
Enabled Usage of _Cilk_spawn and _Cilk_sync in Cilk Runtime (libcilkrts).
+2013-12-13 Balaji V. Iyer <balaji.v.iyer@intel.com>
+
+ * Makefile.am (GENERAL_FLAGS): Removed undefining of Cilk keywords.
+ * Makefile.in: Reconfigure.
+ * runtime/symbol_test.c: Added a #define to clear out _Cilk_for.
+
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205965
138bc75d-0d04-0410-961f-
82ee72b054a4
zadeck [Fri, 13 Dec 2013 16:38:53 +0000 (16:38 +0000)]
2013-12-13 Kenneth Zadeck <zadeck@naturalbridge.com>
* config/arc/arc.h (BITS_PER_UNIT): Removed.
* config/bfin/bfin.h (BITS_PER_UNIT): Removed.
* config/lm32/lm32.h (BITS_PER_UNIT): Removed.
* config/m32c/m32c.h (BITS_PER_UNIT): Removed.
* config/microblaze/microblaze.h (BITS_PER_UNIT): Removed.
* config/picochip/picochip.h (BITS_PER_UNIT): Removed.
* config/spu/spu.h (BITS_PER_UNIT): Removed.
* defaults.h (BITS_PER_UNIT): Removed.
* config/i386/i386-modes.def (MAX_BITSIZE_MODE_ANY_INT): New.
* doc/rtl (BITS_PER_UNIT): Moved from tm.texi.
(MAX_BITSIZE_MODE_ANY_INT): Updated.
* doc/tm.texi (BITS_PER_UNIT): Removed.
* doc/tm.texi.in (BITS_PER_UNIT): Removed.
* genmodes.c (bits_per_unit, max_bitsize_mode_any_int): New.
(create_modes): Added code to set bits_per_unit and
max_bitsize_mode_any_int.
(emit_max_int): Changed code generation.
* mkconfig.sh: Added insn-modes.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205964
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 13 Dec 2013 16:34:39 +0000 (16:34 +0000)]
PR tree-optimization/45685
* tree-ssa-phiopt.c (neg_replacement): New function.
(tree_ssa_phiopt_worker): Call it.
PR tree-optimization/45685
* gcc.dg/tree-ssa/pr45685.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205963
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Fri, 13 Dec 2013 16:11:41 +0000 (16:11 +0000)]
Update HImode imul cost for Silvermont
2013-12-13 Yuri Rumyantsev <ysrumyan@gmail.com>
* config/i386/i386.c (slm_cost): Fix imul cost for HI.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205962
138bc75d-0d04-0410-961f-
82ee72b054a4
amker [Fri, 13 Dec 2013 11:36:22 +0000 (11:36 +0000)]
PR tree-optimization/58296
PR tree-optimization/41488
* tree-scalar-evolution.c: Include necessary header files.
(simplify_peeled_chrec): New function.
(analyze_evolution_in_loop): New static variable.
Call simplify_peeled_chrec.
* tree-ssa-loop-ivopts.c (mark_bivs): Don't mark peeled IV as biv.
(add_old_iv_candidates): Don't add candidate for peeled IV.
* tree-affine.h (aff_combination_zero_p): New function.
PR tree-optimization/58296
PR tree-optimization/41488
* gcc.dg/tree-ssa/scev-7.c: New test.
* gcc.dg/pr41488.c: New test.
* g++.dg/pr59445.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205959
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Fri, 13 Dec 2013 10:00:40 +0000 (10:00 +0000)]
* config/msp430/msp430.c (is_wakeup_func): New function. Returns
true if the current function has the wakeup attribute.
(msp430_start_function): Note if the function has the wakeup
attribute.
(msp430_attribute_table): Add wakeup attribute.
(msp430_expand_epilogue): Add support for wakeup functions.
* config/msp430/msp430.md (disable_interrupts): Emit a NOP after
the DINT instruction.
* doc/extend.texi: Document the wakeup attribute.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205958
138bc75d-0d04-0410-961f-
82ee72b054a4
ktietz [Fri, 13 Dec 2013 09:24:16 +0000 (09:24 +0000)]
PR c++/57897
* config/i386/i386.c (ix86_option_override_internal): Set for
x64 target flag_unwind_tables, if flag_asynchronous_unwind_tables
was explicit set.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205957
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Fri, 13 Dec 2013 05:23:14 +0000 (05:23 +0000)]
Update to copy of current master Go testsuite.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205955
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 13 Dec 2013 03:58:54 +0000 (03:58 +0000)]
comment
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205953
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 13 Dec 2013 03:58:48 +0000 (03:58 +0000)]
PR c++/58954
* pt.c (resolve_overloaded_unification): Use instantiate_template.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205952
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 13 Dec 2013 00:16:59 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205951
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 12 Dec 2013 22:59:35 +0000 (22:59 +0000)]
* gcc-interface/Makefile.in (ARM linux, GNU eabi): Tweak regexp.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205948
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 12 Dec 2013 22:52:25 +0000 (22:52 +0000)]
Fix date
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205946
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 12 Dec 2013 22:50:07 +0000 (22:50 +0000)]
PR ada/55946
gnattools/
* Makefile.in (host): Define.
(host_alias): Likewise.
(TOOLS_FLAGS_TO_PASS_RE): Add LDFLAGS.
(GNATMAKE_FOR_HOST): Define.
(GNATLINK_FOR_HOST): Likewise.
(GNATBIND_FOR_HOST): Likewise.
(GNATLS_FOR_HOST): Likewise.
(RTS_DIR): Move around and use GNATLS_FOR_HOST.
(TOOLS_FLAGS_TO_PASS_CROSS): Use the other *_HOST variables.
gcc/ada/
* gcc-interface/Make-lang.in (ada/doctools/xgnatugn): Use gnatmake.
* gcc-interface/Makefile.in (GCC_LINK): Add LDFLAGS.
(../../gnatmake): Remove LDFLAGS.
(../../gnatlink): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205945
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 12 Dec 2013 21:35:02 +0000 (21:35 +0000)]
compiler: Better error messages for { on line after if/for/switch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205944
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 12 Dec 2013 21:19:20 +0000 (21:19 +0000)]
* i386.md (simple LEA peephole2): Add missing mode to zero_extend
for zero-extended MULT simple LEA pattern.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205943
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 12 Dec 2013 21:03:10 +0000 (21:03 +0000)]
compiler: Check for nil when slicing pointer to array.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205942
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 12 Dec 2013 20:42:24 +0000 (20:42 +0000)]
compiler: Tweak untyped nil error message.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205941
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 12 Dec 2013 20:13:58 +0000 (20:13 +0000)]
runtime: Fix defer of unlock thread at program startup.
Don't free stack allocated defer block. Also ensure we have a
Go context in a few more places before freeing the block.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205940
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 12 Dec 2013 19:41:11 +0000 (19:41 +0000)]
2013-12-12 Tobias Burnus <burnus@net-b.de>
PR fortran/59440
* trans-decl.c (generate_namelist_decl): Ensure debug DIE
is created by setting DECL_IGNORED_P to 0.
2013-12-12 Tobias Burnus <burnus@net-b.de>
PR fortran/59440
* gfortran.dg/namelist_83.f90: New.
* gfortran.dg/namelist_83_2.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205939
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 12 Dec 2013 19:25:29 +0000 (19:25 +0000)]
compiler: Don't permit importing a package as "init".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205938
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 12 Dec 2013 18:45:24 +0000 (18:45 +0000)]
compiler: Don't compare structs with blank non-comparable fields.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205937
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 12 Dec 2013 17:55:44 +0000 (17:55 +0000)]
PR middle-end/59470
* g++.dg/opt/pr59470.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205934
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 12 Dec 2013 17:44:01 +0000 (17:44 +0000)]
reflect: Fix MakeFunc returning float32 or float64 on 386.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205932
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Thu, 12 Dec 2013 15:51:49 +0000 (15:51 +0000)]
2013-12-12 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/59470
* lra-coalesce.c (lra_coalesce): Invalidate inheritance pseudo
values if necessary.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205930
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 12 Dec 2013 13:35:21 +0000 (13:35 +0000)]
PR c++/58627
* call.c (add_template_candidate_real): Don't call ggc_free on targs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205927
138bc75d-0d04-0410-961f-
82ee72b054a4
chefmax [Thu, 12 Dec 2013 11:44:23 +0000 (11:44 +0000)]
2013-12-12 Max Ostapenko <m.ostapenko@partner.samsung.com>
* c-c++-common/tsan/free_race2.c: New file.
* c-c++-common/tsan/race_on_barrier2.c: Likewise.
* c-c++-common/tsan/race_on_mutex.c: Likewise.
* c-c++-common/tsan/race_on_mutex2.c: Likewise.
* c-c++-common/tsan/simple_race.c: Likewise.
* c-c++-common/tsan/simple_stack.c: Likewise.
* g++.dg/tsan/aligned_vs_unaligned_race.C: Likewise. Test applies only on x86_64-linux targets.
* g++.dg/tsan/atomic_free.C: Likewise.
* g++.dg/tsan/atomic_free2.C: Likewise.
* g++.dg/tsan/benign_race.C: Likewise.
* g++.dg/tsan/cond_race.C: Likewise.
* g++.dg/tsan/default_options.C: Likewise.
* g++.dg/tsan/fd_close_norace.C: Likewise.
* g++.dg/tsan/fd_close_norace2.C: Likewise.
* g++-dg/tsan/tsan.exp: Modified to run additional C++ tests.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205925
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 12 Dec 2013 10:13:18 +0000 (10:13 +0000)]
Minor fixes
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205924
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 12 Dec 2013 08:52:06 +0000 (08:52 +0000)]
PR libgomp/59467
* gimplify.c (omp_check_private): Add copyprivate argument, if it
is true, don't check omp_privatize_by_reference.
(gimplify_scan_omp_clauses): For OMP_CLAUSE_COPYPRIVATE verify
decl is private in outer context. Adjust omp_check_private caller.
* gfortran.dg/gomp/pr59467.f90: New test.
* c-c++-common/gomp/pr59467.c: New test.
* testsuite/libgomp.fortran/crayptr2.f90: Add private (d) clause to
!$omp parallel.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205922
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Thu, 12 Dec 2013 07:49:42 +0000 (07:49 +0000)]
PR testsuite/59442
* gcc.target/i386/sse2-movapd-1.c: Fix alignment attributes.
* gcc.target/i386/sse2-movapd-2.c: Likewise.
* gcc.target/i386/avx-vmovapd-256-1.c: Likewise.
* gcc.target/i386/avx-vmovapd-256-2.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205919
138bc75d-0d04-0410-961f-
82ee72b054a4
zqchen [Thu, 12 Dec 2013 05:48:08 +0000 (05:48 +0000)]
2013-12-12 Zhenqiang Chen <zhenqiang.chen@arm.com>
* config.host (arm*-*-uclinux*): Move t-arm before t-bpabi.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205917
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 12 Dec 2013 02:24:20 +0000 (02:24 +0000)]
* go-lang.c (go_langhook_post_options): Disable sibling calls by
default.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205915
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 12 Dec 2013 01:08:52 +0000 (01:08 +0000)]
compiler, reflect, runtime: Implement method values in reflect.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205913
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 12 Dec 2013 00:16:27 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205912
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 11 Dec 2013 23:43:16 +0000 (23:43 +0000)]
reflect, runtime: Let reflect.MakeFunc functions call recover.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205908
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 11 Dec 2013 22:42:20 +0000 (22:42 +0000)]
compiler: Minor fixes for recover thunks.
Avoid name collisions when a method calls recover.
Don't crash if a method with an unnamed receiver calls
recover.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205906
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 11 Dec 2013 22:15:14 +0000 (22:15 +0000)]
PR rtl-optimization/59446
* tree-ssa-threadupdate.c (mark_threaded_blocks): Properly
test for crossing a loop header.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205905
138bc75d-0d04-0410-961f-
82ee72b054a4
tmsriram [Wed, 11 Dec 2013 20:06:46 +0000 (20:06 +0000)]
2013-12-11 Sriraman Tallam <tmsriram@google.com>
PR target/59390
* config/i386/i386.c (get_builtin): New function.
(ix86_builtin_vectorized_function): Replace all instances of
ix86_builtins[...] with get_builtin(...).
(ix86_builtin_reciprocal): Ditto.
PR target/59390
* gcc.target/i386/pr59390.c: New test.
* gcc.target/i386/pr59390_1.c: New test.
* gcc.target/i386/pr59390_2.c: New test.
Tested boot-strap on all languages and test parity on x86_64 and with -m32.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205904
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 11 Dec 2013 19:50:56 +0000 (19:50 +0000)]
2013-12-11 Tobias Burnus <burnus@net-b.de>
* config/fpu-387.h (sigill_hdlr, get_fpu_rounding_mode): Emit
* SSE
instructions when __SSE_MATH__ is defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205903
138bc75d-0d04-0410-961f-
82ee72b054a4
bviyer [Wed, 11 Dec 2013 18:23:27 +0000 (18:23 +0000)]
Added Compiler Support for _Cilk_spawn and _Cilk_sync for C++.
gcc/c-family/ChangeLog
2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
* cilk.c (cilk_outline): Made this function non-static.
(gimplify_cilk_spawn): Removed pre_p and post_p arguments.
(create_cilk_wrapper): Added a new parameter: a function pointer.
(c_install_body_w_frame_cleanup): Remove
(extract_free_variables): Added VEC_INIT_EXPR and CONSTRUCTOR case.
* c-common.h (cilk_outline): New prototype.
(gimplify_cilk_spawn): Removed two parameters.
(cilk_install_body_with_frame_cleanup): New prototype.
* c-gimplify.c (c_gimplify_expr): Added MODIFY_EXPR, CALL_EXPR and
CILK_SPAWN_STMT case.
gcc/c/ChangeLog
2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
* c-objc-common.h (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Remove.
(LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
(LANG_HOOKS_CILKPLUS_CILKPLUS_GIMPLIFY_SPAWN): Likewise.
* c-typeck.c (cilk_install_body_with_frame_cleanup): New function.
gcc/ChangeLog
2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
* langhooks.h (lang_hooks_for_decls): Remove lang_hooks_for_cilkplus.
(lang_hooks_for_cilkplus): Remove.
* langhooks.c (lhd_cilk_detect_spawn): Likewise.
(lhd_install_body_with_frame_cleanup): Likewise.
* langhooks-def.h (LANG_HOOKS_CILKPLUS_FRAME_CLEANUP): Likewise.
(LANG_HOOKS_CILKPLUS_DETECT_SPAWN_AND_UNWRAP): Likewise.
(LANG_HOOKS_CILKPLUS_CILKPLUS_GIMPLIFY_SPAWN): Likewise.
(LANG_HOOKS_CILKPLUS): Likewise.
(LANG_HOOKS_DECLS): Remove LANG_HOOKS_CILKPLUS.
* gimplify.c (gimplify_expr): Removed CILK_SPAWN_STMT case.
(gimplify_modify_expr): Removed handling of _Cilk_spawn in expr.
(gimplify_call_expr): Likewise.
gcc/cp/ChangeLog
2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
* cp-tree.h (cilk_valid_spawn): New prototype.
(gimplify_cilk_spawn): Likewise.
(create_try_catch_expr): Likewise.
* decl.c (finish_function): Insert Cilk function-calls when a
_Cilk_spawn is used in a function.
* parser.c (cp_parser_postfix_expression): Added RID_CILK_SPAWN and
RID_CILK_SYNC cases.
* cp-cilkplus.c (set_cilk_except_flag): New function.
(set_cilk_except_data): Likewise.
(cilk_install_body_with_frame_cleanup): Likewise.
* except.c (create_try_catch_expr): Likewise.
* parser.h (IN_CILK_SPAWN): New #define.
* pt.c (tsubst_expr): Added CILK_SPAWN_STMT and CILK_SYNC_STMT cases.
* semantics.c (potential_constant_expression_1): Likewise.
* typeck.c (cp_build_compound_expr): Reject a spawned function in a
compound expression.
(check_return_expr): Reject a spawned function in a return expression.
* cp-gimplify.c (cp_gimplify_expr): Added a CILK_SPAWN_STMT and
CALL_EXPR case. Added handling of spawned function in MODIFY_EXPR
and INIT_EXPR.
gcc/testsuite/ChangeLog
2013-12-11 Balaji V. Iyer <balaji.v.iyer@intel.com>
* g++.dg/cilk-plus/CK/catch_exc.cc: New test case.
* g++.dg/cilk-plus/CK/const_spawn.cc: Likewise.
* g++.dg/cilk-plus/CK/fib-opr-overload.cc: Likewise.
* g++.dg/cilk-plus/CK/fib-tplt.cc: Likewise.
* g++.dg/cilk-plus/CK/lambda_spawns.cc: Likewise.
* g++.dg/cilk-plus/CK/lambda_spawns_tplt.cc: Likewise.
* g++.dg/cilk-plus/cilk-plus.exp: Added support to run Cilk Keywords
test stored in c-c++-common. Also, added the Cilk runtime's library
to the ld_library_path.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205902
138bc75d-0d04-0410-961f-
82ee72b054a4
edlinger [Wed, 11 Dec 2013 17:15:44 +0000 (17:15 +0000)]
2013-12-11 Bernd Edlinger <bernd.edlinger@hotmail.de>
* expr.c (expand_assignment): Remove dependency on
flag_strict_volatile_bitfields. Always set the memory
access mode.
(expand_expr_real_1): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205899
138bc75d-0d04-0410-961f-
82ee72b054a4
edlinger [Wed, 11 Dec 2013 17:09:17 +0000 (17:09 +0000)]
2013-12-11 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR middle-end/59134
* expmed.c (store_bit_field): Use narrow_bit_field_mem and
store_fixed_bit_field_1 for -fstrict-volatile-bitfields.
(store_fixed_bit_field): Split up. Call store_fixed_bit_field_1
to do the real work.
(store_fixed_bit_field_1): New function.
(store_split_bit_field): Limit the unit size to the memory mode size,
to prevent recursion.
testsuite:
* gcc.c-torture/compile/pr59134.c: New test.
* gnat.dg/misaligned_volatile.adb: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205898
138bc75d-0d04-0410-961f-
82ee72b054a4
edlinger [Wed, 11 Dec 2013 16:59:24 +0000 (16:59 +0000)]
2013-12-11 Bernd Edlinger <bernd.edlinger@hotmail.de>
Sandra Loosemore <sandra@codesourcery.com>
PR middle-end/23623
PR middle-end/48784
PR middle-end/56341
PR middle-end/56997
* expmed.c (strict_volatile_bitfield_p): Add bitregion_start
and bitregion_end parameters. Test for compliance with C++
memory model.
(store_bit_field): Adjust call to strict_volatile_bitfield_p.
Add fallback logic for cases where -fstrict-volatile-bitfields
is supposed to apply, but cannot.
(extract_bit_field): Likewise. Use narrow_bit_field_mem and
extract_fixed_bit_field_1 to do the extraction.
(extract_fixed_bit_field): Revert to previous mode selection algorithm.
Call extract_fixed_bit_field_1 to do the real work.
(extract_fixed_bit_field_1): New function.
testsuite:
* gcc.dg/pr23623.c: Update to test interaction with C++
memory model.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205897
138bc75d-0d04-0410-961f-
82ee72b054a4
edlinger [Wed, 11 Dec 2013 16:50:05 +0000 (16:50 +0000)]
2013-12-11 Sandra Loosemore <sandra@codesourcery.com>
PR middle-end/23623
PR middle-end/48784
PR middle-end/56341
PR middle-end/56997
gcc/
* expmed.c (strict_volatile_bitfield_p): New function.
(store_bit_field_1): Don't special-case strict volatile
bitfields here.
(store_bit_field): Handle strict volatile bitfields here instead.
(store_fixed_bit_field): Don't special-case strict volatile
bitfields here.
(extract_bit_field_1): Don't special-case strict volatile
bitfields here.
(extract_bit_field): Handle strict volatile bitfields here instead.
(extract_fixed_bit_field): Don't special-case strict volatile
bitfields here. Simplify surrounding code to resemble that in
store_fixed_bit_field.
* doc/invoke.texi (Code Gen Options): Update
-fstrict-volatile-bitfields description.
gcc/testsuite/
* gcc.dg/pr23623.c: New test.
* gcc.dg/pr48784-1.c: New test.
* gcc.dg/pr48784-2.c: New test.
* gcc.dg/pr56341-1.c: New test.
* gcc.dg/pr56341-2.c: New test.
* gcc.dg/pr56997-1.c: New test.
* gcc.dg/pr56997-2.c: New test.
* gcc.dg/pr56997-3.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205896
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Wed, 11 Dec 2013 14:02:44 +0000 (14:02 +0000)]
2013-12-11 Janus Weil <janus@gcc.gnu.org>
PR fortran/58916
* resolve.c (conformable_arrays): Treat scalar 'e2'.
(resolve_allocate_expr): Check rank also for unlimited-polymorphic
variables.
2013-12-11 Janus Weil <janus@gcc.gnu.org>
PR fortran/58916
* gfortran.dg/allocate_with_source_4.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205894
138bc75d-0d04-0410-961f-
82ee72b054a4
clyon [Wed, 11 Dec 2013 13:13:43 +0000 (13:13 +0000)]
Regenerate gcc/configure and gcc/config.in
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205892
138bc75d-0d04-0410-961f-
82ee72b054a4
clyon [Wed, 11 Dec 2013 12:57:08 +0000 (12:57 +0000)]
2013-12-11 Kugan Vivekanandarajah <kuganv@linaro.org>
* configure.ac: Add check for aarch64 assembler -mabi support.
* configure: Regenerate.
* config.in: Regenerate.
* config/aarch64/aarch64-elf.h (ASM_MABI_SPEC): New define.
(ASM_SPEC): Update to substitute -mabi with ASM_MABI_SPEC.
* config/aarch64/aarch64.h (aarch64_override_options): Issue error
if assembler does not support -mabi and option ilp32 is selected.
* doc/install.texi: Added note that building gcc 4.9 and after
with pre 2.24 binutils will not support -mabi=ilp32.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205891
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Wed, 11 Dec 2013 12:40:08 +0000 (12:40 +0000)]
Add a missing tree code to a switch.
* c-common.c (c_fully_fold_internal): Handle ADDR_SPACE_CONVERT_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205890
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Wed, 11 Dec 2013 12:40:00 +0000 (12:40 +0000)]
Remove an unused global tree, last used by objc some years ago.
* c-common.h (enum c_tree_index): Remove CTI_INT_ARRAY_TYPE.
(int_array_type_node): Remove.
* c-common.c (c_common_nodes_and_builtins): Don't build it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205889
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Wed, 11 Dec 2013 12:25:05 +0000 (12:25 +0000)]
PR sanitizer/59399
* expr.c (expand_expr_real_1): Remove assert dealing with
internal calls and turn that into a condition instead.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205888
138bc75d-0d04-0410-961f-
82ee72b054a4
yroux [Wed, 11 Dec 2013 12:04:09 +0000 (12:04 +0000)]
2013-12-11 Yvan Roux <yvan.roux@linaro.org>
* config/arm/arm.opt (mlra): Enable LRA by default.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205887
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 11 Dec 2013 09:19:41 +0000 (09:19 +0000)]
PR tree-optimization/59417
* tree-ssa-copy.c (fini_copy_prop): If copy_of[i].value is defined
in a different bb rhan var, only duplicate points-to info and
not alignment info and don't duplicate range info.
* tree-ssa-loop-niter.c (determine_value_range): Instead of
assertion failure handle inconsistencies in range info by only
using var's range info and not PHI result range infos.
* gcc.c-torture/compile/pr59417.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205884
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 11 Dec 2013 09:18:33 +0000 (09:18 +0000)]
PR tree-optimization/59386
* tree-inline.c (remap_gimple_stmt): If not id->do_not_unshare,
unshare_expr (id->retval) before passing it to gimple_build_assign.
* gcc.c-torture/compile/pr59386.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205883
138bc75d-0d04-0410-961f-
82ee72b054a4