Commit Graph

142352 Commits

Author SHA1 Message Date
Andris Pavenis
83b4db6df5 lto-streamer-out.c (write_global_references): Adjust integer type.
* lto-streamer-out.c (write_global_references): Adjust integer type.
	(lto_output_decl_state_refs): Likewise.

From-SVN: r230436
2015-11-16 14:13:37 -07:00
Marek Polacek
0f62c7a0cc re PR c++/68362 (ICE: tree check: expected integer_cst, have nop_expr in get_val, at tree.h:5157)
PR c++/68362
	* c-common.c (check_case_bounds): Fold low and high cases.

	* g++.dg/delayedfold/switch-1.C: New test.

From-SVN: r230435
2015-11-16 20:16:57 +00:00
Steven G. Kargl
3e6ab82844 re PR fortran/58027 ("Arithmetic overflow converting ..." in PARAMETER triggers an ICE)
2015-11-16  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/58027
	PR fortran/60993
	* expr.c (gfc_check_init_expr): Prevent a redundant check when a
	__convert_* function was inserted into an array constructor.
	(gfc_check_assign_symbol): Check for an initialization expression
	when a __convert_* was inserted.

2015-11-16  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/58027
	PR fortran/60993
	* gfortran.dg/pr58027.f90: New test.

From-SVN: r230433
2015-11-16 19:15:25 +00:00
Marek Polacek
a868811ee5 c-ada-spec.c (dump_ada_template): Use RECORD_OR_UNION_TYPE_P.
* c-ada-spec.c (dump_ada_template): Use RECORD_OR_UNION_TYPE_P.
	* c-common.c (c_common_get_alias_set): Likewise.
	(handle_visibility_attribute): Likewise.

From-SVN: r230432
2015-11-16 17:58:39 +00:00
James Greenhalgh
971f13d745 [Patch ARM] Add support for Cortex-A35
gcc/

	* config/arm/arm-cores.def (cortex-a35): New.
	* config/arm/arm.c (arm_cortex_a35_tune): New.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm-tune.md: Regenerate.
	* config/arm/bpabi.h (BE8_LINK_SPEC): Add cortex-a35.
	* config/arm/t-aprofile: Likewise.
	* doc/invoke.texi (-mcpu): Likewise.

From-SVN: r230431
2015-11-16 17:41:10 +00:00
Jim Wilson
6480dc9d06 Add missing v8a cpus to the t-aprofile file.
gcc/
	* config/arm/t-aprofile (MULTILIB_MATCHES): Add lines for exynos-m1
	and qdf24xx and xgene1 to match -march=armv8-a.

From-SVN: r230430
2015-11-16 08:30:44 -08:00
Segher Boessenkool
7d006b0d34 simplify-rtx: Simplify sign_extend of lshiftrt to zero_extend (PR68330)
Since r230164, in PR68330 combine ends up with a sign_extend of an
lshiftrt by some constant, and it does not know to morph that into a
zero_extract (the extend will always extend with zeroes).  I think
it is best to let simplify-rtx always replace such a sign_extend by
a zero_extend, after which everything works as expected.


2015-11-15  Segher Boessenkool  <segher@kernel.crashing.org>

	PR rtl-optimization/68330
	* simplify-rtx.c (simplify_unary_operation_1): Simplify SIGN_EXTEND
	of LSHIFTRT by a non-zero constant integer.

From-SVN: r230429
2015-11-16 16:51:33 +01:00
Richard Biener
513ecaea6f re PR tree-optimization/68306 (ICE: in vectorizable_store, at tree-vect-stmts.c:5651)
2015-11-16  Richard Biener  <rguenther@suse.de>

        PR tree-optimization/68306
	* tree-vect-data-refs.c (vect_verify_datarefs_alignment): Fix
	bogus copying from verify_data_ref_alignment and use continue
	instead of return.

From-SVN: r230428
2015-11-16 15:04:00 +00:00
Oleg Endo
2fe8dfe863 re PR target/68277 ([SH]: error: insn does not satisfy its constraints when compiling erlang)
gcc/
	PR target/68277
	* config/sh/sh.md (addsi3_scr): Handle reg overlap of operands[0] and
	operands[2].
	(*addsi3): Add another insn_and_split variant for reload.

Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>

From-SVN: r230425
2015-11-16 14:11:50 +00:00
Richard Biener
0d334e3765 re PR middle-end/68117 (error: invalid PHI argument <<< Unknown tree: <invalid tree code> >>>)
2015-11-16  Richard Biener  <rguenther@suse.de>

	PR middle-end/68117
	* cfgexpand.c (pass_expand::execute): Destroy the edge
	redirection var map before setting RTL CFG hooks.

From-SVN: r230424
2015-11-16 14:06:08 +00:00
Alan Lawrence
def4ad19ea [i386]Migrate reduction optabs to reduc_<op>_scal
* config/i386/sse.md (reduc_splus_v8df): Rename to...
	(reduc_plus_scal_v8df): ...here; reduce to temp and extract scalar.

	(reduc_splus_v4df): Rename to...
	(reduc_plus_scal_v4df): ...here; reduce to temp and extract scalar.

	(reduc_splus_v2df): Rename to...
	(reduc_plus_scal_v2df): ...here; reduce to temp and extract scalar.

	(reduc_splus_v16sf): Rename to...
	(reduc_plus_scal_v16sf): ...here; reduce to temp and extract scalar.

	(reduc_splus_v8sf): Rename to...
	(reduc_plus_scal_v8sf): ...here; reduce to temp and extract scalar.

	(reduc_splus_v4sf): Rename to...
	(reduc_plus_scal_v4sf): ...here; reduce to temp and extract scalar.

	(reduc_<code>_<mode>, all 3 variants): Rename each to...
	(reduc_<code>_scal_<mode>): ...here; reduce to temp and extract scalar.

	(reduc_umin_v8hf): Rename to...
	(reduc_umin_scal_v8hf): ...here; reduce to temp and extract scalar.

From-SVN: r230423
2015-11-16 13:53:23 +00:00
Kirill Yukhin
fff7721799 Add __attribute__((__simd__)) to GCC.
gcc/
	* omp-low.c (pass_omp_simd_clone::gate): If target allows - call
	without additional conditions.
	* doc/extend.texi (@item simd): New.
gcc/c-family/
	* c-common.c (handle_simd_attribute): New.
	(struct attribute_spec): Add entry for "simd".
	(handle_simd_attribute): New.
gcc/c/
	* c-parser.c (c_finish_omp_declare_simd): Look for
	"simd" attribute as well. Update error message.
gcc/cp/
	* parser.c (cp_parser_late_parsing_cilk_simd_fn_info): Look for
	"simd" attribute as well. Update error message.
gcc/testsuite/
	* c-c++-common/attr-simd.c: New test.
	* c-c++-common/attr-simd-2.c: New test.
	* c-c++-common/attr-simd-3.c: New test.

From-SVN: r230422
2015-11-16 13:14:57 +00:00
Alan Lawrence
56b08a5894 [AArch64] Fix gcc.target/aarch64/vclz.c
* gcc.target/aarch64/vclz.c: Correctly place INHIB_OPTIMIZATION.

From-SVN: r230421
2015-11-16 12:41:20 +00:00
Tom de Vries
7cf76184c4 Remove first_pass_instance
2015-11-16  Tom de Vries  <tom@codesourcery.com>

	* passes.c (first_pass_instance): Remove variable.
	(execute_todo): Remove setting of first_pass_instance.
	* tree-pass.h (first_pass_instance): Remove declaration.

From-SVN: r230420
2015-11-16 12:40:50 +00:00
Tom de Vries
c06883ac2d Remove first_pass_instance from pass_ccp
2015-11-16  Tom de Vries  <tom@codesourcery.com>

	* passes.def: Add arg to pass_ccp pass instantiation.
	* tree-ssa-ccp.c (ccp_finalize): Add param nonzero_p.  Use nonzero_p
	instead of first_pass_instance.
	(do_ssa_ccp): Add and handle param nonzero_p.
	(pass_ccp::pass_ccp): Initialize nonzero_p.
	(pass_ccp::set_pass_param): New member function.  Set nonzero_p.
	(pass_ccp::execute): Call do_ssa_ccp with extra arg.
	(pass_ccp::nonzero_p): New private member.

From-SVN: r230419
2015-11-16 12:40:41 +00:00
Tom de Vries
813ccd83ae Remove first_pass_instance from pass_object_sizes
2015-11-16  Tom de Vries  <tom@codesourcery.com>

	* passes.def: Add arg to pass_object_sizes pass instantiation.
	* tree-object-size.c (pass_object_sizes::pass_object_sizes): Initialize
	insert_min_max_p.
	(pass_object_sizes::set_pass_param): New member function.  Set
	insert_min_max_p.
	(pass_object_sizes::insert_min_max_p): New private member.
	(pass_object_sizes::execute): Use insert_min_max_p instead of
	first_pass_instance.

From-SVN: r230418
2015-11-16 12:40:33 +00:00
Tom de Vries
5ce8d99a1b Remove first_pass_instance from pass_dominator
2015-11-16  Tom de Vries  <tom@codesourcery.com>

	* passes.def: Add arg to pass_dominator pass instantiation.
	* tree-pass.h (first_pass_instance): Remove pass_dominator-related bit
	of comment.
	* tree-ssa-dom.c (pass_dominator::pass_dominator): Initialize
	may_peel_loop_headers_p.
	(pass_dominator::set_pass_param): New member function.  Set
	may_peel_loop_headers_p.
	(pass_dominator::may_peel_loop_headers_p): New private member.
	(pass_dominator::execute): Use may_peel_loop_headers_p instead of
	first_pass_instance.

From-SVN: r230417
2015-11-16 12:40:24 +00:00
Tom de Vries
2162bfe15e Remove first_pass_instance from pass_reassoc
2015-11-16  Tom de Vries  <tom@codesourcery.com>

	* passes.def: Add arg to pass_reassoc pass instantiation.
	* tree-ssa-reassoc.c (reassoc_insert_powi_p): New static variable.
	(acceptable_pow_call, reassociate_bb): Use reassoc_insert_powi_p instead
	of first_pass_instance.
	(execute_reassoc): Add and handle insert_powi_p parameter.
	(pass_reassoc::insert_powi_p): New private member.
	(pass_reassoc::pass_reassoc): Initialize insert_powi_p.
	(pass_reassoc::set_pass_param): New member function.  Set insert_powi_p.
	(pass_reassoc::execute): Call execute_reassoc with extra arg.

From-SVN: r230416
2015-11-16 12:40:14 +00:00
Tom de Vries
b0c77505dd Remove first_pass_instance from pass_vrp
2015-11-16  Tom de Vries  <tom@codesourcery.com>

	* gdbhooks.py (class PassNames): Handle extra arg NEXT_PASS argument.
	* gen-pass-instances.awk (handle_line): Same.
	* pass_manager.h (class pass_manager): Define and undefine
	NEXT_PASS_WITH_ARG.
	* passes.c (opt_pass::set_pass_param): New function.
	(pass_manager::pass_manager): Define and undefine NEXT_PASS_WITH_ARG.
	* passes.def: Add extra arg to NEXT_PASS (pass_vrp).
	* tree-pass.h (gimple_opt::set_pass_param): Declare.
	* tree-vrp.c (vrp_finalize, execute_vrp): Add and handle
	warn_array_bounds_p parameter.
	(pass_vrp::pass_vrp): Initialize warn_array_bounds_p.
	(pass_vrp::set_pass_param): New function.
	(pass_vrp::execute): Add warn_array_bounds_p arg to execute_vrp call.
	(pass_vrp::warn_array_bounds_p): New private member.

From-SVN: r230415
2015-11-16 12:40:05 +00:00
Eric Botcazou
632b092123 sparc.c (sparc_emit_probe_stack_range): Adjust.
* config/sparc/sparc.c (sparc_emit_probe_stack_range): Adjust.
	(output_probe_stack_range): Rotate the loop and simplify.

From-SVN: r230414
2015-11-16 12:19:22 +00:00
Eric Botcazou
c0f39947f8 rs6000.c (rs6000_emit_probe_stack_rang): Adjust.
* config/rs6000/rs6000.c (rs6000_emit_probe_stack_rang): Adjust.
	(output_probe_stack_range): Rotate the loop and simplify.

From-SVN: r230413
2015-11-16 12:17:51 +00:00
Eric Botcazou
16c6f54ffa i386.c (ix86_adjust_stack_and_probe): Adjust and use an lea instruction when possible.
* config/i386/i386.c (ix86_adjust_stack_and_probe): Adjust and use
	an lea instruction when possible.
	(output_adjust_stack_and_probe): Rotate the loop and simplify.
	(ix86_emit_probe_stack_range): Adjust.
	(output_probe_stack_range): Rotate the loop and simplify.

From-SVN: r230412
2015-11-16 12:16:54 +00:00
Christian Bruel
ae5e29239e arm_neon.h: Remove #ifndef check on __ARM_NEON.
2015-11-16  Christian Bruel  <christian.bruel@st.com>

	* config/arm/arm_neon.h: Remove #ifndef check on __ARM_NEON.
	Replace #ifdef __ARM_FEATURE_CRYPTO, __ARM_FEATURE_FMA, __ARM_FP
	with appropriate pragma GCC target.

2015-11-16  Christian Bruel  <christian.bruel@st.com>

	* lib/target-supports.exp (check_effective_target_arm_neon_ok_nocache):
	 Check __ARM_NEON__ instead of "arm_neon.h.
	* gcc.target/arm/attr-neon3.c: New test.
	* gcc.target/arm/attr-neon-fp16.c: Likewise

From-SVN: r230411
2015-11-16 12:25:02 +01:00
Christian Bruel
b8c7c62b2d re PR target/65837 ([arm-linux-gnueabihf] lto1 target specific builtin not available)
2015-11-16  Christian Bruel  <christian.bruel@st.com>

	PR target/65837
	* config/arm/arm-c.c (arm_cpu_builtins): Conditionally set and reset
	__ARM_FEATURE_FMA and __ARM_NEON_FP, __ARM_FP.

From-SVN: r230410
2015-11-16 12:20:02 +01:00
James Greenhalgh
67707f65c0 [AArch64] Cortex-A57 Choose some new branch costs.
gcc/

	* config/aarch64/aarch64.c (cortexa57_branch_costs): New.
	(cortexa57_tunings): Use it.

From-SVN: r230409
2015-11-16 10:30:21 +00:00
Christian Bruel
c910628220 re PR target/65837 ([arm-linux-gnueabihf] lto1 target specific builtin not available)
2015-11-16  Christian Bruel  <christian.bruel@st.com>

	PR target/65837
	* config/arm/arm-c.c (arm_cpu_builtins): Set or reset
	__ARM_FEATURE_CRYPTO, __VFP_FP__, __ARM_NEON__
	(arm_pragma_target_parse): Change check for arm_cpu_builtins.
	undefine __ARM_FP.
	* config/arm/arm.c (arm_can_inline_p): Check FPUs.
	(arm_valid_target_attribute_rec): Handle -mfpu attribute target.
	* doc/invoke.texi (-mfpu=): Mention attribute and pragma.
	* doc/extend.texi (-mfpu=): Describe attribute.

2015-11-16  Christian Bruel  <christian.bruel@st.com>

	PR target/65837
	gcc.target/arm/lto/pr65837_0.c
	gcc.target/arm/attr-neon2.c
	gcc.target/arm/attr-neon.c
	gcc.target/arm/attr-neon-builtin-fail.c
	gcc.target/arm/attr-crypto.c

From-SVN: r230408
2015-11-16 11:21:09 +01:00
Christian Bruel
f39cdf66d6 coding nit
From-SVN: r230407
2015-11-16 10:38:29 +01:00
Christian Bruel
00c02a7010 re PR target/65837 ([arm-linux-gnueabihf] lto1 target specific builtin not available)
2015-11-16  Christian Bruel  <christian.bruel@st.com>

	PR target/65837
	* config/arm/arm-protos.h (arm_init_neon_builtins): Declare.
	* config/arm/arm.c (arm_valid_target_attribute_tree): Call
	arm_init_neon_builtins.
	* config/arm/arm-builtins.c (arm_init_neon_builtins): Split into...
	(arm_init_neon_builtins_internal)
	(arm_init_crypto_builtins_internal):
	Test and set neon_set_p, neon_crypto_set_p.
	(neon_set_p, neon_crypto_set_p): New static booleans.

From-SVN: r230406
2015-11-16 10:00:09 +01:00
Richard Biener
da225f53f9 bb-slp-32.c: Adjust testcase.
2015-11-16  Richard Biener  <rguenther@suse.de>

	* gcc.dg/vect/bb-slp-32.c: Adjust testcase.

From-SVN: r230405
2015-11-16 08:57:42 +00:00
Christian Bruel
19708abc4b re PR target/65837 ([arm-linux-gnueabihf] lto1 target specific builtin not available)
2015-11-16  Christian Bruel  <christian.bruel@st.com>

	PR target/65837
	* config/arm/arm.c (arm_fpu_desc): Remove.
	(all_fpus): Make global.
	(arm_option_override): Use FPU TARGET accessors.
	(arm_declare_function_name): Likewise.
	* config/arm/arm.h (TARGET_VFP, TARGET_VFPD32, TARGET_VFP5)
	(TARGET_VFP_SINGLE, TARGET_VFP_DOUBLE, TARGET_NEON_FP16)
	(TARGET_FP16, TARGET_FMA, TARGET_FPU_ARMV8, TARGET_CRYPTO)
	(TARGET_NEON): Likewise.
	(all_fpus): Declare extern.
	(TARGET_FPU_NAME, TARGET_FPU_MODEL, TARGET_FPU_REV)
	(TARGET_FPU_REGS, TARGET_FPU_FEATURES): Define all_fpus accessors.

From-SVN: r230404
2015-11-16 09:46:42 +01:00
Trevor Saunders
c21f7c9dcd PR 68366 - include emit-rtl.h in sdbout.c
Some of the pa target macros rely on macros in emit-rtl.h and sdbout.c
uses some of those macros, which means that sdbout.c needs to include
emit-rtl.h.

gcc/ChangeLog:

2015-11-15  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	PR middle-end/68366
	* sdbout.c: Include emit-rtl.h and function.h.

From-SVN: r230402
2015-11-16 02:28:15 +00:00
GCC Administrator
1f25fa058e Daily bump.
From-SVN: r230401
2015-11-16 00:16:12 +00:00
David Edelsohn
d9adb4761a on_exit.c: New file.
* config/rs6000/on_exit.c: New file.
        * config/rs6000/t-aix-cxa (LIB2ADDEH): Build on_exit.c.
        * config/rs6000/libgcc-aix-cxa.ver (on_exit): Add symbol to exports.

From-SVN: r230398
2015-11-15 18:41:44 -05:00
Gerald Pfeifer
01a0467e23 freebsd.h (SUBTARGET32_DEFAULT_CPU): Change to i586.
* config/i386/freebsd.h (SUBTARGET32_DEFAULT_CPU): Change to i586.
	Remove support for FreeBSD 5 and earlier.

From-SVN: r230397
2015-11-15 20:03:24 +00:00
Paul Thomas
78ab5260a1 re PR fortran/50221 (Allocatable string length fails with array assignment)
2015-11-15  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/50221
	PR fortran/68216
	PR fortran/63932
	PR fortran/66408
	* trans_array.c (gfc_conv_scalarized_array_ref): Pass the
	symbol decl for deferred character length array references.
	* trans-stmt.c (gfc_trans_allocate): Keep the string lengths
	to update deferred length character string lengths.
	* trans-types.c (gfc_get_dtype_rank_type); Use the string
	length of deferred character types for the dtype size.
	* trans.c (gfc_build_array_ref): For references to deferred
	character arrays, use the domain max value, if it is a variable
	to set the 'span' and use pointer arithmetic for acces to the
	element.
	(trans_code): Set gfc_current_locus for diagnostic purposes.

	PR fortran/67674
	* trans-expr.c (gfc_conv_procedure_call): Do not fix deferred
	string lengths of components.

	PR fortran/49954
	* resolve.c (deferred_op_assign): New function.
	(gfc_resolve_code): Call it.
	* trans-array.c (concat_str_length): New function.
	(gfc_alloc_allocatable_for_assignment): Jump directly to alloc/
	realloc blocks for deferred character length arrays because the
	string length might change, even if the shape is the same. Call
	concat_str_length to obtain the string length for concatenation
	since it is needed to compute the lhs string length.
	Set the descriptor dtype appropriately for the new string
	length.
	* trans-expr.c (gfc_trans_assignment_1): Use the rse string
	length for all characters, other than deferred types. For
	concatenation operators, push the rse.pre block to the inner
	most loop so that the temporary pointer and the assignments
	are properly placed.

2015-11-15  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/50221
	* gfortran.dg/deferred_character_1.f90: New test.
	* gfortran.dg/deferred_character_4.f90: New test for comment
	#4 of the PR.

	PR fortran/68216
	* gfortran.dg/deferred_character_2.f90: New test.

	PR fortran/67674
	* gfortran.dg/deferred_character_3.f90: New test.

	PR fortran/63932
	* gfortran.dg/deferred_character_5.f90: New test.

	PR fortran/66408
	* gfortran.dg/deferred_character_6.f90: New test.

	PR fortran/49954
	* gfortran.dg/deferred_character_7.f90: New test.

From-SVN: r230396
2015-11-15 14:07:52 +00:00
Jonathan Wakely
356510acd9 PR libstdc++/68353 fix _GLIBCXX_USE_C99_WCHAR test
PR libstdc++/68353
	* include/bits/basic_string.h: Test value of _GLIBCXX_USE_C99_WCHAR
	not whether it is defined.
	* include/ext/vstring.h: Likewise.

From-SVN: r230395
2015-11-15 11:15:08 +00:00
Trevor Saunders
1d899da297 always define ENABLE_OFFLOADING
gcc/cp/ChangeLog:

2015-11-14  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* parser.c (cp_parser_omp_declare_target): Adjust.

gcc/ChangeLog:

2015-11-14  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* configure: Regenerate.
	* configure.ac: Always define ENABLE_OFFLOADING.
	* cgraph.c (cgraph_node::create): Adjust.
	* gcc.c (process_command): Likewise.
	* omp-low.c (create_omp_child_function): Likewise.
	(expand_omp_target): Likewise.
	* varpool.c (varpool_node::get_create): Likewise.

gcc/c/ChangeLog:

2015-11-14  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* c-parser.c (c_parser_omp_declare_target): Adjust.

From-SVN: r230393
2015-11-15 00:18:08 +00:00
Trevor Saunders
dd4fb6097a always define EH_RETURN_HANDLER_RTX
gcc/ChangeLog:

2015-11-14  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (EH_RETURN_HANDLER_RTX): New default definition.
	* df-scan.c (df_get_exit_block_use_set): Adjust.
	* except.c (expand_eh_return): Likewise.

From-SVN: r230392
2015-11-15 00:18:01 +00:00
Trevor Saunders
ab7b56730b always define TARGET_PECOFF
gcc/ChangeLog:

2015-11-14  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* config/i386/i386.h (TARGET_PECOFF): Remove define.
	* defaults.h (TARGET_PECOFF): New default definition.
	* varasm.c (handle_vtv_comdat_section): Adjust.

gcc/cp/ChangeLog:

2015-11-14  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* vtable-class-hierarchy.c (vtv_generate_init_routine): Adjust.

From-SVN: r230391
2015-11-15 00:17:56 +00:00
Trevor Saunders
5394314855 remove conditional compilation of sdb debug info
gcc/ChangeLog:

2015-11-14  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h: New definition of SDB_DEBUGGING_INFO.
	* doc/tm.texi: Regenerate.
	* doc/tm.texi.in: Adjust.
	* final.c (rest_of_clean_state): Remove check if
	SDB_DEBUGGING_INFO is defined.
	* function.c (number_blocks): Likewise.
	* output.h: Likewise.
	* sdbout.c: Likewise.
	* toplev.c (process_options): Likewise.

From-SVN: r230390
2015-11-15 00:17:51 +00:00
Trevor Saunders
d36402d9f0 remove EXTENDED_SDB_BASIC_TYPES
The last target using this was i960, which was removed many years ago,
so there's no reason to keep it.

gcc/ChangeLog:

2015-11-14  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* gsyms.h (enum sdb_type): Remove code for
	EXTENDED_SDB_BASIC_TYPES.
	(enum sdb_masks): Likewise.
	* sdbout.c (plain_type_1): Likewise.
	* system.h: Poison EXTENDED_SDB_BASIC_TYPES macro.

From-SVN: r230389
2015-11-15 00:17:43 +00:00
GCC Administrator
6aab8e4f18 Daily bump.
From-SVN: r230388
2015-11-15 00:16:15 +00:00
Jakub Jelinek
00b9bd52a8 libgomp.texi: Update references from OpenMP 4.0 to OpenMP 4.5 sections.
* libgomp.texi: Update references from OpenMP 4.0 to OpenMP 4.5
	sections.

From-SVN: r230384
2015-11-14 23:02:42 +01:00
Andreas Tobler
301d1d00e6 acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Change locale implementation from darwin to DragonFly.
2015-11-14  Andreas Tobler  <andreast@gcc.gnu.org>

    * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Change locale implementation
    from darwin to DragonFly.
    * configure: Regenerate.
    * config/os/bsd/freebsd/ctype_configure_char.cc: Improve locale
    support, do it the same as DragonFly.
    * config/os/bsd/freebsd/os_defines.h: Add fine grained C99 defines.

From-SVN: r230383
2015-11-14 22:17:24 +01:00
Jason Merrill
38e5f0454c re PR bootstrap/68346 (Bootstrap failure on i686-linux)
PR bootstrap/68346
	* call.c (build_new_op_1): Don't fold arguments to
	warn_tautological_cmp.

From-SVN: r230382
2015-11-14 13:54:16 -05:00
Jakub Jelinek
e460634820 omp-low.c (lower_omp_ordered): Add argument to GOMP_SMD_ORDERED_* internal calls - 0 if...
gcc/
2015-11-14  Jakub Jelinek  <jakub@redhat.com>

	* omp-low.c (lower_omp_ordered): Add argument to GOMP_SMD_ORDERED_*
	internal calls - 0 if ordered simd and 1 for ordered threads simd.
	* tree-vectorizer.c (adjust_simduid_builtins): If GOMP_SIMD_ORDERED_*
	argument is 1, replace it with GOMP_ordered_* call instead of removing
	it.
gcc/c/
2015-11-14  Jakub Jelinek  <jakub@redhat.com>

	* c-typeck.c (c_finish_omp_clauses): Don't mark
	GOMP_MAP_FIRSTPRIVATE_POINTER decls addressable.
gcc/cp/
2015-11-14  Jakub Jelinek  <jakub@redhat.com>

	* semantics.c (finish_omp_clauses): Don't mark
	GOMP_MAP_FIRSTPRIVATE_POINTER decls addressable.
libgomp/
2015-11-14  Jakub Jelinek  <jakub@redhat.com>
	    Aldy Hernandez  <aldyh@redhat.com>
	    Ilya Verbin  <ilya.verbin@intel.com>

	* ordered.c (gomp_doacross_init, GOMP_doacross_post,
	GOMP_doacross_wait, gomp_doacross_ull_init, GOMP_doacross_ull_post,
	GOMP_doacross_ull_wait): For GFS_GUIDED don't divide number of
	iterators or IV by chunk size.
	* parallel.c (gomp_resolve_num_threads): Don't assume that
	if thr->ts.team is non-NULL, then pool must be non-NULL.
	* libgomp-plugin.h (GOMP_PLUGIN_target_task_completion): Declare.
	* libgomp.map (GOMP_PLUGIN_1.1): New symbol version, export
	GOMP_PLUGIN_target_task_completion.
	* Makefile.am (libgomp_la_SOURCES): Add priority_queue.c.
	* Makefile.in: Regenerate.
	* libgomp.h: Shuffle prototypes and forward definitions around so
	priority queues can be defined.
	(enum gomp_task_kind): Add GOMP_TASK_ASYNC_RUNNING.
	(enum gomp_target_task_state): New enum.
	(struct gomp_target_task): Add state, tgt, task and team fields.
	(gomp_create_target_task): Change return type to bool, add
	state argument.
	(gomp_target_task_fn): Change return type to bool.
	(struct gomp_device_descr): Add async_run_func.
	(struct gomp_task): Remove children, next_child, prev_child,
	next_queue, prev_queue, next_taskgroup, prev_taskgroup.
	Add pnode field.
	(struct gomp_taskgroup): Remove children.
	Add taskgroup_queue.
	(struct gomp_team): Change task_queue type to a priority queue.
	(splay_compare): Define inline.
	(priority_queue_offset): New.
	(priority_node_to_task): New.
	(task_to_priority_node): New.
	* oacc-mem.c: Do not include splay-tree.h.
	* priority_queue.c: New file.
	* priority_queue.h: New file.
	* splay-tree.c: Do not include splay-tree.h.
	(splay_tree_foreach_internal): New.
	(splay_tree_foreach): New.
	* splay-tree.h: Become re-entrant if splay_tree_prefix is defined.
	(splay_tree_callback): Define typedef.
	* target.c (splay_compare): Move to libgomp.h.
	(GOMP_target): Don't adjust *thr in any way around running offloaded
	task.
	(GOMP_target_ext): Likewise.  Handle target nowait.
	(GOMP_target_update_ext, GOMP_target_enter_exit_data): Check
	return value from gomp_create_target_task, if false, fallthrough
	as if no dependencies exist.
	(gomp_target_task_fn): Change return type to bool, return true
	if the task should have another part scheduled later.  Handle
	target nowait.
	(gomp_load_plugin_for_device): Initialize async_run.
	* task.c (gomp_init_task): Initialize children_queue.
	(gomp_clear_parent_in_list): New.
	(gomp_clear_parent_in_tree): New.
	(gomp_clear_parent): Handle priorities.
	(GOMP_task): Likewise.
	(priority_queue_move_task_first,
	gomp_target_task_completion, GOMP_PLUGIN_target_task_completion):
	New functions.
	(gomp_create_target_task): Use priority queues.  Change return type
	to bool, add state argument, return false if for async
	{{enter,exit} data,update} constructs no dependencies need to be
	waited for, handle target nowait.  Set task->fn to NULL instead of
	gomp_target_task_fn.
	(verify_children_queue): Remove.
	(priority_list_upgrade_task): New.
	(priority_queue_upgrade_task): New.
	(verify_task_queue): Remove.
	(priority_list_downgrade_task): New.
	(priority_queue_downgrade_task): New.
	(gomp_task_run_pre): Use priority queues.
	Abstract code out to priority_queue_downgrade_task.
	(gomp_task_run_post_handle_dependers): Use priority queues.
	(gomp_task_run_post_remove_parent): Likewise.
	(gomp_task_run_post_remove_taskgroup): Likewise.
	(gomp_barrier_handle_tasks): Likewise.  Handle target nowait target
	tasks specially.
	(GOMP_taskwait): Likewise.
	(gomp_task_maybe_wait_for_dependencies): Likewise.  Abstract code to
	priority-queue_upgrade_task.
	(GOMP_taskgroup_start): Use priority queues.
	(GOMP_taskgroup_end): Likewise.  Handle target nowait target tasks
	specially.  If taskgroup is NULL, and thr->ts.level is 0, act as a
	barrier.
	* taskloop.c (GOMP_taskloop): Handle priorities.
	* team.c (gomp_new_team): Call priority_queue_init.
	(free_team): Call priority_queue_free.
	(gomp_free_thread): Call gomp_team_end if thr->ts.team is artificial
	team created for target nowait in implicit parallel region.
	(gomp_team_start): For nested check, test thr->ts.level instead of
	thr->ts.team != NULL.
	* testsuite/libgomp.c/doacross-3.c: New test.
	* testsuite/libgomp.c/ordered-5.c: New test.
	* testsuite/libgomp.c/priority.c: New test.
	* testsuite/libgomp.c/target-31.c: New test.
	* testsuite/libgomp.c/target-32.c: New test.
	* testsuite/libgomp.c/target-33.c: New test.
	* testsuite/libgomp.c/target-34.c: New test.
liboffloadmic/
2015-11-14  Ilya Verbin  <ilya.verbin@intel.com>

	* runtime/offload_host.cpp (task_completion_callback): New
	variable.
	(offload_proxy_task_completed_ooo): Call task_completion_callback.
	(__offload_register_task_callback): New function.
	* runtime/offload_host.h (__offload_register_task_callback): New
	declaration.
	* plugin/libgomp-plugin-intelmic.cpp (offload): Add async_data
	argument, handle async offloading.
	(register_main_image): Call register_main_image.
	(GOMP_OFFLOAD_init_device, get_target_table, GOMP_OFFLOAD_alloc,
	GOMP_OFFLOAD_free, GOMP_OFFLOAD_host2dev, GOMP_OFFLOAD_dev2host,
	GOMP_OFFLOAD_dev2dev) Adjust offload callers.
	(GOMP_OFFLOAD_async_run): New function.
	(GOMP_OFFLOAD_run): Implement using GOMP_OFFLOAD_async_run.

From-SVN: r230381
2015-11-14 19:42:13 +01:00
Steven G. Kargl
67f0527a22 re PR fortran/67803 (ICE on concatenating wrong character array constructor)
2015-11-14  Steven G. Kargl  <kargl@gcc.gnu.org>

    PR fortran/67803
    * array.c (gfc_match_array_constructor): If array constructor included
    a CHARACTER typespec, check array elements for compatible type.

2015-11-14  Steven G. Kargl  <kargl@gcc.gnu.org>

    PR fortran/67803
    * gfortran.dg/pr67803.f90: New test.

From-SVN: r230379
2015-11-14 17:31:16 +00:00
Jonathan Wakely
230b4edeee Fix std::wstring capacity test for short wchar_t
* testsuite/21_strings/basic_string/capacity/char/18654.cc: Use
	real minimum capacity.
	* testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc:
	Likewise.

From-SVN: r230378
2015-11-14 17:24:42 +00:00
David Edelsohn
bfc6afd929 * testsuite/experimental/random/randint.cc: Add dg-add-options tls.
From-SVN: r230377
2015-11-14 09:22:53 -05:00
David Edelsohn
9357bae918 * g++.dg/cpp/ucn-1.C: Fix typo.
From-SVN: r230376
2015-11-14 08:36:15 -05:00