Commit Graph

138093 Commits

Author SHA1 Message Date
Jason Merrill d5449acf6b DR 1467 PR c++/51747
DR 1467
	PR c++/51747
	* typeck2.c (digest_init_r): Fix single element list.

From-SVN: r222881
2015-05-07 12:46:49 -04:00
Segher Boessenkool a3facd7c6c re PR middle-end/192 (String literals don't obey -fdata-sections)
PR middle-end/192
	PR middle-end/54303
	* varasm.c (function_mergeable_rodata_prefix): New function.
	(mergeable_string_section): Use it.
	(mergeable_constant_section): Use it.

gcc/testsuite/
	* gcc.dg/fdata-sections-2.c: New file.

From-SVN: r222880
2015-05-07 17:51:01 +02:00
Marek Polacek 302f83f948 re PR testsuite/66046 (UBSan output pattern tests fail on target ARM board.)
PR testsuite/66046
	* c-c++-common/ubsan/align-6.c: Don't match trailing newlines in the
	last dg-output.
	* c-c++-common/ubsan/align-7.c: Likewise.
	* c-c++-common/ubsan/bounds-8.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-9.c: Likewise.
	* c-c++-common/ubsan/load-bool-enum.c: Likewise.
	* c-c++-common/ubsan/null-1.c: Likewise.
	* c-c++-common/ubsan/null-10.c: Likewise.
	* c-c++-common/ubsan/null-11.c: Likewise.
	* c-c++-common/ubsan/null-2.c: Likewise.
	* c-c++-common/ubsan/null-3.c: Likewise.
	* c-c++-common/ubsan/null-4.c: Likewise.
	* c-c++-common/ubsan/null-5.c: Likewise.
	* c-c++-common/ubsan/null-6.c: Likewise.
	* c-c++-common/ubsan/null-7.c: Likewise.
	* c-c++-common/ubsan/null-8.c: Likewise.
	* c-c++-common/ubsan/null-9.c: Likewise.
	* c-c++-common/ubsan/object-size-1.c: Likewise.
	* c-c++-common/ubsan/object-size-10.c: Likewise.
	* c-c++-common/ubsan/object-size-4.c: Likewise.
	* c-c++-common/ubsan/object-size-5.c: Likewise.
	* c-c++-common/ubsan/object-size-7.c: Likewise.
	* c-c++-common/ubsan/object-size-8.c: Likewise.
	* c-c++-common/ubsan/object-size-9.c: Likewise.
	* c-c++-common/ubsan/overflow-add-2.c: Likewise.
	* c-c++-common/ubsan/overflow-int128.c: Likewise.
	* c-c++-common/ubsan/overflow-mul-2.c: Likewise.
	* c-c++-common/ubsan/overflow-mul-4.c: Likewise.
	* c-c++-common/ubsan/overflow-negate-1.c: Likewise.
	* c-c++-common/ubsan/overflow-negate-3.c: Likewise.
	* c-c++-common/ubsan/overflow-sub-2.c: Likewise.
	* c-c++-common/ubsan/overflow-sub-4.c: Likewise.
	* c-c++-common/ubsan/pr59333.c: Likewise.
	* c-c++-common/ubsan/pr59667.c: Likewise.
	* c-c++-common/ubsan/pr60613-2.c: Likewise.
	* c-c++-common/ubsan/pr60636.c: Likewise.
	* c-c++-common/ubsan/pr63802.c: Likewise.
	* c-c++-common/ubsan/recovery-1.c: Likewise.
	* c-c++-common/ubsan/recovery-3.c: Likewise.
	* c-c++-common/ubsan/shift-1.c: Likewise.
	* c-c++-common/ubsan/shift-2.c: Likewise.
	* c-c++-common/ubsan/shift-4.c: Likewise.
	* c-c++-common/ubsan/shift-7.c: Likewise.
	* c-c++-common/ubsan/undefined-2.c: Likewise.
	* c-c++-common/ubsan/vla-1.c: Likewise.
	* g++.dg/ubsan/null-1.C: Likewise.
	* g++.dg/ubsan/null-3.C: Likewise.
	* g++.dg/ubsan/null-4.C: Likewise.
	* g++.dg/ubsan/vptr-8.C: Likewise.
	* g++.dg/ubsan/vptr-9.C: Likewise.
	* gcc.dg/ubsan/bounds-2.c: Likewise.
	* gcc.dg/ubsan/object-size-9.c: Likewise.

From-SVN: r222878
2015-05-07 14:44:26 +00:00
Jeff Law 48451e8f3c match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New simplifier to narrow arithmetic.
* match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New
	simplifier to narrow arithmetic.
	* generic-match-head.c: (types_match, single_use): New functions.
	* gimple-match-head.c: (types_match, single_use): New functions.

	* gcc.dg/tree-ssa/shorten-1.c: New test.

From-SVN: r222877
2015-05-07 07:18:07 -06:00
Venkataramanan Kumar 963ba1b266 combine.c (make_compound_operation): Remove checks for PLUS/MINUS rtx type.
2015-05-07  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>

        * combine.c (make_compound_operation): Remove checks for PLUS/MINUS
        rtx type.

From-SVN: r222874
2015-05-07 10:47:54 +00:00
Richard Biener 465770e439 re PR tree-optimization/66002 (paq8p benchmark 50% slower than clang on sandybridge)
2015-05-07  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/66002
	* passes.def: Schedule another pass_merge_phi after ifcombine, right
	before phiopt.

	* gcc.dg/vect/vect-125.c: New testcase.

From-SVN: r222873
2015-05-07 09:52:38 +00:00
Marek Polacek e0f0d3b9d2 c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting flexible member array-like members if...
* c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting
	flexible member array-like members if SANITIZE_BOUNDS_STRICT.

	* doc/invoke.texi: Document -fsanitize=bounds-strict.
	* flag-types.h (enum sanitize_code): Add SANITIZE_BOUNDS_STRICT, or it
	into SANITIZE_NONDEFAULT.
	* opts.c (common_handle_option): Handle -fsanitize=bounds-strict.

	* c-c++-common/ubsan/bounds-10.c: New test.

From-SVN: r222871
2015-05-07 08:08:57 +00:00
Uros Bizjak ad2c39af63 re PR target/66015 (align directives not propagated after __attribute__ ((__optimize__ ("O2"))))
PR target/66015
	* config/alpha/alpha.c (alpha_override_options_after_change): New.
	(TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): New.
	(alpha_override_options): Move align_loops, align_jumps and
	align_functions handling into alpha_override_options_after_change.

From-SVN: r222870
2015-05-07 09:34:29 +02:00
GCC Administrator 06cb4b647a Daily bump.
From-SVN: r222869
2015-05-07 00:16:16 +00:00
Ian Lance Taylor 87bde062dd compiler: Analyze escape information of interface parameters.
When analyzing function calls with interface parameters, all arguments
related to an interface parameter were assumed to escape via the
function arguments.  Now, if an argument is related to a non-escaping
parameter with an interface type, the argument may be stack-allocated.

From-SVN: r222865
2015-05-06 22:59:54 +00:00
Thomas Koenig f1abbf6901 re PR fortran/37131 (inline matmul for small matrix sizes)
2015-05-06  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/37131
	* gfortran.h (gfc_isym_id):  Add GFC_ISYM_FE_RUNTIME_ERROR.
	(gfc_intrinsic_sym):  Add vararg.
	* intrinsic.h (gfc_check_fe_runtime_error):  Add prototype.
	(gfc_resolve_re_runtime_error):  Likewise.
	Add prototype for gfc_is_reallocatable_lhs.
	* trans-array.h (gfc_is_reallocatable_lhs):  Remove prototype.
	* check.c (gfc_check_fe_runtime_error):  New function.
	* intrinsic.c (add_sym_1p):  New function.
	(make_vararg):  New function.
	(add_subroutines):  Add fe_runtime_error.
	(gfc_intrinsic_sub_interface): Skip sorting for variable number
	of arguments.
	* iresolve.c (gfc_resolve_fe_runtime_error):  New function.
	* lang.opt (inline-matmul-limit):  New option.
	(gfc_post_options): If no inline matmul limit has been set and
	BLAS is called externally, use the BLAS limit.
	* frontend-passes.c:  Include intrinsic.h.
	(var_num):  New global counter for naming temporary variablbles.
	(matrix_case):  Enum for differentiating the different matmul
	cases.
	(realloc_string_callback):  Add "trim" to the variable name.
	(create_var): Add optional argument vname as part of the name.
	Use var_num. Set dimension of result correctly. Split off block
	creation into
	(insert_block): New function.
	(cfe_expr_0): Use "fcn" as part of temporary variable name.
	(optimize_namesapce): Also set gfc_current_ns. Call
	inline_matmul_assign.
	(combine_array_constructor):  Use "constr" as part of
	temporary name.
	(get_array_inq_function):  New function.
	(build_logical_expr):  New function.
	(get_operand):  new function.
	(inline_limit_check):  New function.
	(runtime_error_ne):  New function.
	(matmul_lhs_realloc):  New function.
	(is_functino_or_op):  New function.
	(has_function_or_op):  New function.
	(freeze_expr):  New function.
	(freeze_references):  New function.
	(convert_to_index_kind):  New function.
	(create_do_loop):  New function.
	(get_size_m1):  New function.
	(scalarized_expr):  New function.
	(inline_matmul_assign):  New function.
	* simplify.c (simplify_bound):  Simplify the case of the
	lower bound of an assumed-shape argument.

2015-05-06  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/37131
	* gfortran.dg/dependency_26.f90: Add option to suppress inlining
	matmul.
	* gfortran.dg/function_optimize_1.f90:  Likewise.
	* gfortran.dg/function_optimize_2.f90:  Likewise.
	* gfortran.dg/function_optimize_5.f90:  Likewise.
	* gfortran.dg/function_optimize_7.f90:  Likewise.
	* gfortran.dg/inline_matmul_1.f90:  New test.
	* gfortran.dg/inline_matmul_2.f90:  New test.
	* gfortran.dg/inline_matmul_3.f90:  New test.
	* gfortran.dg/inline_matmul_4.f90:  New test.
	* gfortran.dg/inline_matmul_5.f90:  New test.
	* gfortran.dg/inline_matmul_6.f90:  New test.

From-SVN: r222864
2015-05-06 20:23:48 +00:00
David Malcolm 5631585aa6 jit: add test-benchmark.c
gcc/testsuite/ChangeLog:
	* jit.dg/harness.h (set_options): Wrap with
	#ifndef TEST_ESCHEWS_SET_OPTIONS.
	* jit.dg/jit.exp (is_testcase_meant_to_generate_a_reproducer):
	Special-case test-benchmark.c as a negative.
	* jit.dg/test-benchmark.c: New file.

From-SVN: r222863
2015-05-06 20:13:50 +00:00
Julian Brown d2463960a4 oacc-init.c (acc_device_lock): Add explanatory comment.
* oacc-init.c (acc_device_lock): Add explanatory comment.
	(resolve_device): Add comment about locking requirement.
	(acc_init_1, acc_shutdown_1): Likewise. Add locking around
	gomp_init_device and gomp_fini_device calls.
	(acc_get_num_devices, acc_set_device_type, acc_get_device_type)
	(acc_get_device_num, acc_set_device_num): Add locking around
	resolve_device and gomp_init_device calls.

From-SVN: r222862
2015-05-06 19:10:14 +00:00
Julian Brown e38fdba42b oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for goacc_thread_lock on error paths.
* oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for
	goacc_thread_lock on error paths.
	* oacc-mem.c (lookup_host): Remove locking from function. Note
	locking requirement for caller in function comment.
	(lookup_dev): Likewise.
	(acc_free, acc_deviceptr, acc_hostptr, acc_is_present)
	(acc_map_data, acc_unmap_data, present_create_copy, delete_copyout)
	(update_dev_host, gomp_acc_insert_pointer, gomp_acc_remove_pointer):
	Add locking.

From-SVN: r222860
2015-05-06 16:45:49 +00:00
Sandra Loosemore 5a0ff57c48 unknown-elf.h (STARTFILE_SPEC): Add conditional linking of crtfastmath.o.
2015-05-06  Sandra Loosemore  <sandra@codesourcery.com>
	    Chris Jones  <chrisj@nvidia.com>
	    Joshua Conner  <jconner@nvidia.com>

	gcc/
	* config/arm/unknown-elf.h (STARTFILE_SPEC): Add conditional
	linking of crtfastmath.o.
	* config/arm/linux-eabi.h (STARTFILE_SPEC): Likewise.

	libgcc/
	* config.host (arm*-*-linux*): Add support for crtfastmath.o.
	(arm*-*-uclinux*): Likewise.
	(arm*-*-eabi* | arm*-*-rtems*): Likewise.
	* config/arm/crtfastmath.c: New file.


Co-Authored-By: Chris Jones <chrisj@nvidia.com>
Co-Authored-By: Joshua Conner <jconner@nvidia.com>

From-SVN: r222857
2015-05-06 12:01:05 -04:00
Segher Boessenkool 29e597d0e6 rs6000.md (cstore<mode>4_signed_imm): New expander.
* config/rs6000/rs6000.md (cstore<mode>4_signed_imm): New expander.
	(cstore<mode>4_unsigned_imm): New expander.
	(cstore<mode>4): Remove empty constraint strings.  Use the new
	expanders.

From-SVN: r222855
2015-05-06 17:55:10 +02:00
Yvan Roux 93e956161e re PR target/64208 ([iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90))
gcc/
2015-05-06  Yvan Roux  <yvan.roux@linaro.org>

	PR target/64208
	* config/arm/iwmmxt.md ("*iwmmxt_arm_movdi"): Cleanup redundant
	alternatives.

gcc/testsuite/
2015-05-06  Yvan Roux  <yvan.roux@linaro.org>

	PR target/64208
	* gcc.target/arm/pr64208.c: New test.

From-SVN: r222853
2015-05-06 14:23:57 +00:00
Szabolcs Nagy 2149da1b26 [AArch64] Fix geniterators.sh to use standard BRE syntax in sed
On behalf of Szabolcs Nagy.

2015-05-06  Szabolcs Nagy  <szabolcs.nagy@arm.com>

	* config/aarch64/geniterators.sh: Use standard BRE in sed.

From-SVN: r222852
2015-05-06 13:23:01 +00:00
Alan Modra d5e6e133bb re PR target/66033 (rs6000 nops removed by rtl_dce)
PR target/66033
	* config/rs6000/rs6000.md (nop): Use an unspec pattern.
	(UNSPEC_NOP): Define.
	(reload_vsx_from_gpr<mode>): Add missing DONE.
	(reload_gpr_from_vsx<mode>): Likewise.
	* config/rs6000/vsx.md (vsx_mul_v2di): Likewise.
	(vsx_div_v2di, vsx_udiv_v2di): Likewise.

From-SVN: r222851
2015-05-06 22:42:19 +09:30
Alan Modra 2ed81af483 re PR target/66020 (FAIL: gcc.target/powerpc/ppc64-abi-2.c execution test)
PR target/66020
	* gcc.target/powerpc/ppc64-abi-2.c (my_mcount): Rewrite.
	(gparms): Make volatile.

From-SVN: r222850
2015-05-06 22:40:59 +09:30
Richard Biener ccd8556454 re PR fortran/62283 (basic-block vectorization fails)
2015-05-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/62283
	* gcc.dg/vect/bb-slp-32.c: Remove XFAIL.

From-SVN: r222849
2015-05-06 12:21:01 +00:00
Christian Bruel 487edc878f re PR target/66015 (align directives not propagated after __attribute__ ((__optimize__ ("O2"))))
2015-05-06  Christian Bruel  <christian.bruel@st.com>

	PR target/66015
	* config/aarch64/aarch64.c (aarch64_override_options): Move align_loops,
	align_jumps, align_functions into aarch64_override_options_after_change.

From-SVN: r222847
2015-05-06 12:54:40 +02:00
Richard Biener 240a94da04 tree-vect-slp.c (vect_supported_load_permutation_p): Use vect_transform_slp_perm_load to check if...
2015-05-06  Richard Biener  <rguenther@suse.de>

	* tree-vect-slp.c (vect_supported_load_permutation_p): Use
	vect_transform_slp_perm_load to check if we support a permutation
	for basic-block vectorization.

	* gcc.dg/vect/bb-slp-34.c: New testcase.

From-SVN: r222846
2015-05-06 10:49:35 +00:00
Nick Clifton edbb33c795 rl78.c (need_to_save): Save register 22 if it is used, even if it is not being used as a frame pointer.
* config/rl78/rl78.c (need_to_save): Save register 22 if it is
	used, even if it is not being used as a frame pointer.

From-SVN: r222845
2015-05-06 10:19:07 +00:00
Richard Biener c88718a925 re PR fortran/62283 (basic-block vectorization fails)
2015-05-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/62283
	* gcc.dg/vect/bb-slp-14.c: Adjust.

From-SVN: r222843
2015-05-06 06:47:38 +00:00
Jason Merrill 8243e2a9d0 c.opt (Wterminate): New.
gcc/c-family/
	* c.opt (Wterminate): New.
gcc/cp/
	* cp-gimplify.c (cp_genericize_r): Track TRY_BLOCK and
	MUST_NOT_THROW_EXPR, warn about a THROW_EXPR directly within a
	MUST_NOT_THROW_EXPR.
	(cp_genericize_data): Add try_block field.
	(cp_genericize_tree): Initialize it.
	* except.c (expand_end_catch_block): Set TREE_NO_WARNING on
	implicit rethrow.

From-SVN: r222842
2015-05-05 22:25:01 -04:00
Jason Merrill 81b6a6c55b Fix obj-c++.dg/encode-10.mm with cxx_dialect == cxx11.
* constexpr.c (potential_constant_expression_1) [AT_ENCODE_EXPR]:
	Return false.

From-SVN: r222841
2015-05-05 22:24:49 -04:00
Jason Merrill 32ad49af4c Fix g++.dg/torture/Wsizeof-pointer-memaccess2.C with -std=c++11
Fix g++.dg/torture/Wsizeof-pointer-memaccess2.C with -std=c++11
	* semantics.c (finish_call_expr): Check complain.

From-SVN: r222840
2015-05-05 22:24:44 -04:00
Jason Merrill 15ed2619b2 Fix gdb.cp/anon-struct.cc with -std=c++11.
gcc/
	* dwarf2out.c (gen_member_die): Don't emit anything for an
	anonymous class constructor.
gcc/cp/
	* decl2.c (reset_type_linkage_2): Update the DECL_NAME of a
	maybe-in-charge constructor.

From-SVN: r222839
2015-05-05 22:24:38 -04:00
Jason Merrill f8aa3dd388 decl.c (start_decl): Don't push the plain VAR_DECL for a variable template.
* decl.c (start_decl): Don't push the plain VAR_DECL for a
	variable template.

From-SVN: r222837
2015-05-05 22:07:40 -04:00
Jason Merrill b8dd691344 DR 1518 DR 1630 PR c++/54835 PR c++/60417
DR 1518
	DR 1630
	PR c++/54835
	PR c++/60417
	* call.c (convert_like_real): Check value-initialization before
	explicit.
	* typeck2.c (process_init_constructor_record): Don't set
	CONSTRUCTOR_IS_DIRECT_INIT.
	(process_init_constructor_array): Likewise.
	* init.c (build_vec_init): Likewise.

From-SVN: r222836
2015-05-05 22:07:34 -04:00
GCC Administrator 99573e81e8 Daily bump.
From-SVN: r222834
2015-05-06 00:16:15 +00:00
Joseph Myers c72f37e6ae * sv.po: Update.
From-SVN: r222829
2015-05-05 22:30:18 +01:00
Ian Lance Taylor 5003ddad85 compiler: Don't make temporaries for constant string concatentation.
Fixes golang/go#10642.

From-SVN: r222828
2015-05-05 20:56:59 +00:00
David Malcolm 21c0a521e4 Fix indentation issues seen by -Wmisleading-indentation
gcc/ChangeLog:
	* auto-profile.c (afdo_find_equiv_class): Fix indentation so
	that it reflects the block structure.
	(afdo_propagate_edge): Likewise.
	(afdo_calculate_branch_prob): Likewise.
	(afdo_annotate_cfg): Likewise.
	* cfgcleanup.c (equal_different_set_p): Likewise.
	(try_crossjump_to_edge): Likewise.
	* cgraph.c (cgraph_node::verify_node): Likewise.
	* cgraphunit.c (expand_all_functions): Likewise.
	* config/i386/i386.c (ix86_expand_copysign): Likewise.
	(exact_dependency_1): Likewise.
	* dwarf2asm.c (dw2_output_indirect_constants): Likewise.
	* dwarf2out.c (tree_add_const_value_attribute_for_decl): Likewise.
	* gensupport.c (process_define_subst): Likewise.
	* lto-wrapper.c (merge_and_complain): Likewise.
	* tree-if-conv.c (if_convertible_bb_p): Likewise.
	* tree-ssa-loop-prefetch.c (find_or_create_group): Likewise.
	* tree-ssa-tail-merge.c (gsi_advance_fw_nondebug_nonlocal): Likewise.
	* tree-vect-data-refs.c (vect_grouped_load_supported): Likewise.
	* tree-vect-loop.c (vectorizable_reduction): Likewise.
	* tree-vect-slp.c (vect_transform_slp_perm_load): Likewise.
	* tree-vect-stmts.c (vectorizable_shift): Likewise.
	* tree-vrp.c (vrp_finalize): Likewise.
	* tree.c (variably_modified_type_p): Likewise.

gcc/cp/ChangeLog:
	* parser.c (cp_parser_asm_definition): Only test for
        error_mark_node if "outputs" was just set.
	(cp_parser_asm_definition): Likewise for "inputs".

gcc/fortran/ChangeLog:
	* expr.c (check_inquiry): Fix indentation so that it reflects the
	block structure.
	* interface.c (compare_parameter): Likewise.
	* parse.c (parse_oacc_structured_block): Likewise.
	* target-memory.c (expr_to_char): Likewise.
	* trans-types.c (gfc_init_kinds): Likewise.

libcpp/ChangeLog:
	* pch.c (cpp_valid_state): Fix indentation so that it reflects the
	block structure.

From-SVN: r222823
2015-05-05 19:41:11 +00:00
Jack Howarth 0674c9de9d config.gcc: Use darwin9.h, darwin10.h and darwin12.h on darwin12 and later.
2015-05-05  Jack Howarth  <howarth.at.gcc@gmail.com>

	* config.gcc: Use darwin9.h, darwin10.h and darwin12.h
	on darwin12 and later.
	* config/darwin12.h (LINK_GCC_C_SEQUENCE_SPEC): Add
	file to pass -rdynamic on darwin12 and later.
	* config/darwin.opt (rdynamic): Add.

From-SVN: r222822
2015-05-05 18:06:49 +00:00
Uros Bizjak 3836ac7c33 extend.texi (C Extensions): Update menu for moved Variable Attributes and Type Attributes sections.
* doc/extend.texi (C Extensions): Update menu for moved Variable
        Attributes and Type Attributes sections.

From-SVN: r222819
2015-05-05 19:36:40 +02:00
Uros Bizjak 588823d277 re PR target/65990 (ICE: in extract_insn, at recog.c:2341 (unrecognizable insn) with -mmemcpy-strategy=rep_8byte👎noalign -m32 -mtune=btver2)
PR target/65990
	* config/i386/i386.c (ix86_parse_stringop_strategy_string): Error out
	if rep_8byte stringop strategy was specified for 32-bit target.

testsuite/ChangeLog:

	PR target/65990
	* gcc.target/i386/pr65990.c: New test.

From-SVN: r222817
2015-05-05 18:53:27 +02:00
Ian Lance Taylor bd9e8f7e4a re PR go/66016 (Accessing nil Func's name results in crash)
PR go/66016
runtime: Don't crash in Func.Name if the Func is nil.

Related to Go issue 10696

From-SVN: r222816
2015-05-05 16:38:57 +00:00
Ilya Tocar 460f31eeeb re PR target/65915 (FAIL: gcc.target/i386/avx512f-vrndscalepd-2.c (internal compiler error))
PR target/65915
* config/i386/i386.md (vector convert to float spltiter): Check for
xmm16+, when splitting scalar float conversion.
* config/i386/sse.md (sse2_cvtsi2sd): Support EVEX version.

testsuite/ChangeLog:

PR target/65915
* gcc.target/i386/pr65915.c: New.

From-SVN: r222811
2015-05-05 18:43:13 +03:00
Nick Clifton d7edde11e0 msp430-opts.h (enum msp430_regions): New.
* config/msp430/msp430-opts.h (enum msp430_regions): New.
	* config/msp430/msp430.c (msp430_override_options): Complain if
	-mcode-region or -mdata-region is used on a non MSP430X.
	(msp430_section_attr): New function.  Checks lower, upper and
	either attributes.
	(msp430_attribute_table): Add lower, upper and either.
	(gen_prefix): New function.  Generates a prefix for a section
	name.
	(msp430_select_section): New function - handles the choice of
	section for an object.  Takes into account memory region
	attributes and options.
	(msp430_function_section): Use gen_prefix.
	(TARGET_SECTION_TYPE_FLAGS): Define.
	(msp430_section_type_flags): New function.
	(TARGET_ASM_UNIQUE_SECTION): Define.
	(msp430_unique_section): New function.
	(msp430_output_aligned_decl_common): New function.
	(msp430_do_not_relax_short_jumps): New function.
	* config/msp430/msp430.h (USE_SELECT_SECTION_FOR_FUNCTIONS):
	Define.
	(ASM_OUTPUT_ALIGNED_DECL_COMMON): Define.
	* config/msp430/msp430-protos.h
	(msp430_do_not_relax_short_jumps): New prototype.
	(msp430_output_aligned_decl_common): New prototype.
	* config/msp430/msp430.md (length): New attribute.
	(cbranchhi4_real): If msp430_do_not_relax_short_jumps is true
	then use a long code sequence for short jumps.
	* config/msp430/msp430.opt (mcode-region): New.
	(mdata-region): New.
	* doc/invoke.texi: Document new options.
	* doc/extend.texi: Document new attributes.

From-SVN: r222810
2015-05-05 15:15:13 +00:00
David Malcolm c87b25e697 libcpp: Improvements to comments in line-map.h/c
libcpp/ChangeLog:
	* include/line-map.h: Fix comment at the top of the file.
	(source_location): Rewrite and expand the comment for this
	typedef, adding an ascii-art table to clarify how source_location
	values are allocated.
	* line-map.c: Fix comment at the top of the file.

From-SVN: r222806
2015-05-05 14:21:02 +00:00
Matthew Wahab b9066f5ae8 [AArch64] Add branch-cost to cpu tuning information.
* gcc/config/aarch64-protos.h (struct cpu_branch_cost): New.
        (tune_params): Add field branch_costs.
	(aarch64_branch_cost): Declare.
	* gcc/config/aarch64.c (generic_branch_cost): New.
	(generic_tunings): Set field cpu_branch_cost to generic_branch_cost.
	(cortexa53_tunings): Likewise.
	(cortexa57_tunings): Likewise.
	(thunderx_tunings): Likewise.
	(xgene1_tunings): Likewise.
	(aarch64_branch_cost): Define.
	* gcc/config/aarch64/aarch64.h (BRANCH_COST): Redefine.

From-SVN: r222805
2015-05-05 14:01:28 +00:00
Uros Bizjak 6987c38487 i386.c: Use HOST_WIDE_INT_1 instead of (HOST_WIDE_INT) 1 and HOST_WIDE_INT_1U instead...
* config/i386/i386.c: Use HOST_WIDE_INT_1 instead of (HOST_WIDE_INT) 1
	and HOST_WIDE_INT_1U instead of (unsigned HOST_WIDE_INT) 1.
	* config/i386/i386.md: Ditto.
	* config/i386/winnt.c: Ditto.

From-SVN: r222804
2015-05-05 13:02:49 +02:00
Matthew Wahab 78b1add959 [docs] Update __atomic builtins documentation.
* doc/extend.texi (__atomic Builtins): Move implementation details
	to the end of the description, rewrite opening paragraphs, state
	difference with __sync builtins, state C11/C++11 assumptions,
	weaken itemized descriptions, add explanation of memory model
	behaviour, expand description of compare-exchange, simplify text.

From-SVN: r222803
2015-05-05 10:37:00 +00:00
Tom de Vries 98314a7e82 Xfail gcc.dg/tree-ssa/stdarg-2.c f15 scans
2015-05-05  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/tree-ssa/stdarg-2.c: Xfail f15 scans which test for presence of
	'va_list escapes 0'.

From-SVN: r222802
2015-05-05 10:32:28 +00:00
Tom de Vries c8c86ecf8d Undo incorrect fix in tree-ssa/stdarg-2.c f15 scans
2015-05-05  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/tree-ssa/stdarg-2.c: Undo incorrect fix in f15 scans committed
	in r222173.

From-SVN: r222801
2015-05-05 10:32:18 +00:00
Renlin Li 53e38f0275 [PATCH][AARCH64]Use mov for add with large immediate.
gcc/

2015-05-05  Renlin Li  <renlin.li@arm.com>

	* config/aarch64/aarch64.md (add<mode>3): Use mov when allowed.

From-SVN: r222800
2015-05-05 10:16:46 +00:00
Thomas Schwinge ae8ffbbb8d [PR testsuite/65205, libgomp/65993] Fix dg-shouldfail usage in OpenACC libgomp tests
In dg-output, don't expect "0x" prefix for "%p" format specifier, don't expect
"(nil)" for NULL pointer.

	PR testsuite/65205
	PR libgomp/65993
	libgomp/
	* testsuite/libgomp.oacc-c-c++-common/clauses-2.c: In dg-output,
	don't expect "0x" prefix for "%p" format specifier, don't expect
	"(nil)" for NULL pointer.
	* testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/data-already-1.c: More
	accurately specify what we're looking for.
	* testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
	* testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
	* testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
	* testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.

From-SVN: r222799
2015-05-05 11:39:29 +02:00
Yvan Roux 74c4e863bf pr65067.c: Require Thumb2 effective target.
gcc/testsuite/
2015-05-05  Yvan Roux  <yvan.roux@linaro.org>

	* gcc.target/arm/pr65067.c: Require Thumb2 effective target.
	* gcc.target/arm/pr65924.c: Likewise.

From-SVN: r222798
2015-05-05 09:37:11 +00:00