Commit graph

138581 commits

Author SHA1 Message Date
Andreas Tobler
277420210d pr64317.c: Use 'dg-require-effective-target ia32' and 'dg-require-effective-target pie'.
2015-05-25  Andreas Tobler  <andreast@gcc.gnu.org>

        * gcc.target/i386/pr64317.c: Use 'dg-require-effective-target ia32'
	and 'dg-require-effective-target pie'.

From-SVN: r223642
2015-05-25 10:50:43 +02:00
GCC Administrator
627eba4c6f Daily bump.
From-SVN: r223640
2015-05-25 00:16:14 +00:00
Nathan Sidwell
6f2d72e0e1 re PR c++/66243 (enum class value is allowed to be initialized by value from other enum class)
cp/
	PR c++/66243
	* decl.c (build_enumerator): Don't silently convert scoped enums.

	testsuite/
	PR c++/66243
	* g++.dg/cpp0x/pr66243.C: New.

From-SVN: r223636
2015-05-24 23:17:58 +00:00
Eric Botcazou
bce0e38df9 * configure: Regenerate.
From-SVN: r223635
2015-05-24 21:58:37 +00:00
Uros Bizjak
98ce5ba507 * ChangLog: Fix whitespace.
From-SVN: r223634
2015-05-24 21:57:47 +02:00
Jan Hubicka
233ce28925 re PR lto/66180 (many -Wodr false positives when building LLVM with -flto)
PR lto/66180
	* ipa-devirt.c (type_with_linkage): Check that TYPE_STUB_DECL
	is set; check for assembler name at LTO time.
	(type_in_anonymous_namespace): Remove hacks, check that all
	anonymous types are called "<anon>"
	(odr_type_p): Simplify; add check for "<anon>"
	(odr_subtypes_equivalent): Add odr_type_p check.
	* tree.c (need_assembler_name_p): Even anonymous namespace needs
	assembler name.
	* mangle.c (mangle_decl): Mangle anonymous namespace types as
	"<anon>".
	* g++.dg/lto/pr66180_0.C: New testcase.
	* g++.dg/lto/pr66180_1.C: New testcase.

From-SVN: r223633
2015-05-24 19:38:14 +00:00
Mikael Morin
bc0c7f396b re PR fortran/66257 (ELEMENTAL procedure pointer component XX is not allowed as an actual argument)
PR fortran/66257
gcc/fortran/
	* resolve.c (resolve_actual_arglist): Don't throw an error
	if the argument with procedure pointer component is not a variable.
gcc/testsuite/
	* typebound_call_27.f90: New file.

From-SVN: r223631
2015-05-24 14:55:50 +00:00
Jan Hubicka
70e7f2a2df ipa-utils.h (method_class_type): Remove.
* ipa-utils.h (method_class_type): Remove.
	* cgraphunit.c (walk_polymorphic_call_targets): Use TYPE_METHOD_BASETYPE.
	* ipa-devirt.c (type_in_anonymous_namespace_p): Check that it is called
	on main variants only.
	(method_class_type): Remove.
	(update_type_inheritance_graph): Use TYPE_METHOD_BASETYPE.
	(build_type_inheritance_graph): Likewise.
	* ipa-icf.c (sem_function::equals_wpa): Likewise.
	* pa-polymorphic-call.c (decl_maybe_in_construction_p, 
	check_stmt_for_type_change): Use TYPE_METHOD_BASETYPE.

From-SVN: r223629
2015-05-24 06:13:44 +00:00
Jan Hubicka
66f0bbd50c tree.c (prototype_p, [...]): Constify.
* tree.c (prototype_p, virtual_method_call_p, obj_type_ref_class,
	is_typedef_decl, typedef_variant_p): Constify.
	* tree.h (prototype_p, virtual_method_call_p, obj_type_ref_class,
	is_typedef_decl, typedef_variant_p): Constify.

From-SVN: r223628
2015-05-24 04:22:35 +00:00
Trevor Saunders
0e5f14d420 add default for HAVE_tablejump
gcc/ChangeLog:

2015-05-23  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (gen_tablejump): New function.
	(HAVE_tablejump): Add default value.
	* expr.c: Adjust.
	* stmt.c: Likewise.

From-SVN: r223625
2015-05-24 00:33:06 +00:00
Trevor Saunders
b77eb5eb02 add default for HAVE_store_multiple
gcc/ChangeLog:

2015-05-23  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (gen_store_multiple): New function.
	(HAVE_store_multiple): Add default value.
	* expr.c (move_block_from_reg): Adjust.

From-SVN: r223624
2015-05-24 00:33:00 +00:00
Trevor Saunders
e51f0f4f35 add default for HAVE_load_multiple
gcc/ChangeLog:

2015-05-23  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (gen_load_multiple): New function.
	(HAVE_load_multiple): Add default value.
	* expr.c (move_block_to_reg): Adjust.

From-SVN: r223623
2015-05-24 00:32:54 +00:00
Trevor Saunders
15469812ac provide default for HAVE_mem_signal_fence
gcc/ChangeLog:

2015-05-23  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (gen_mem_signal_fence): New function.
	(HAVE_mem_signal_fence): Add default value.
	* optabs.c: Adjust.

From-SVN: r223622
2015-05-24 00:32:49 +00:00
Trevor Saunders
c76a461051 always define HAVE_memory_barrier
gcc/ChangeLog:

2015-05-23  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (gen_memory_barrier): New function.
	(HAVE_memory_barrier): Add default value.
	* optabs.c: Adjust.

From-SVN: r223621
2015-05-24 00:32:43 +00:00
Trevor Saunders
fcb922a9c6 provide default for HAVE_mem_thread_fence
gcc/ChangeLog:

2015-05-23  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* defaults.h (gen_mem_thread_fence): New function.
	(HAVE_mem_thread_fence): Add default definition.
	* optabs.c: Adjust.

From-SVN: r223620
2015-05-24 00:32:37 +00:00
Trevor Saunders
d0b2266a77 always define HAVE_lo_sum
gcc/ChangeLog:

2015-05-23  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* combine.c (find_split_point): Check the value of HAVE_lo_sum
	instead of if it is defined.
	(combine_simplify_rtx): Likewise.
	* lra-constraints.c (process_address_1): Likewise.
	* config/darwin.c: Adjust.
	* genconfig.c (main): Always define HAVE_lo_sum.

From-SVN: r223619
2015-05-24 00:32:31 +00:00
GCC Administrator
a63670fe10 Daily bump.
From-SVN: r223618
2015-05-24 00:16:18 +00:00
Manuel López-Ibáñez
fea70c9963 re PR fortran/44054 (Handle -Werror, -Werror=, -fdiagnostics-show-option, !GCC$ diagnostic (pragmas) and color)
gcc/fortran/ChangeLog:

2015-05-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	PR fortran/44054
	* gfortran.h (struct gfc_error_buf): Rename as
	gfc_error_buffer. Move closer to push, pop and free
	methods. Reimplement using an output_buffer.
	* error.c (errors, warnings, warning_buffer, cur_error_buffer):
	Delete everywhere in this file.
	(error_char): Delete all contents.
	(gfc_increment_error_count): Delete.
	(gfc_error_now): Update comment. Set error_buffer.flag.
	(gfc_warning_check): Do not handle warning_buffer.
	(gfc_error_1): Delete.
	(gfc_error_now_1): Delete.
	(gfc_error_check): Simplify.
	(gfc_move_error_buffer_from_to): Renamed from
	gfc_move_output_buffer_from_to.
	(gfc_push_error): Handle only gfc_error_buffer.
	(gfc_pop_error): Likewise.
	(gfc_free_error): Likewise.
	(gfc_get_errors): Remove warnings and errors.
	(gfc_diagnostics_init): Use static error_buffer.
	(gfc_error_1,gfc_error_now_1): Delete declarations.
	* symbol.c, decl.c, trans-common.c, data.c, expr.c, expr.c,
	frontend-passes.c, resolve.c, match.c, parse.c: Replace
	gfc_error_1 with gfc_error and gfc_error_now_1 with gfc_error_1
	everywhere.
	* f95-lang.c (gfc_be_parse_file): Do not update errorcount and
	warningcount here.
	* primary.c (match_complex_constant): Replace gfc_error_buf and
	output_buffer with gfc_error_buffer.

From-SVN: r223614
2015-05-23 23:02:52 +00:00
Nathan Sidwell
84a3423b97 re PR c++/65936 (ICE: canonical types differ for identical types)
cp/
	PR c++/65936
	* pt.c (lookup_template_class_1): Copy may_alias attribute too.

	testsuite/
	PR c++/65936
	* g++.dg/template/pr65936.C: New.

From-SVN: r223613
2015-05-23 22:28:54 +00:00
Prathamesh Kulkarni
94cbafd173 genmatch.c (parser::parse_operation): Reject expanding operator-list inside 'for'.
2015-05-20  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* genmatch.c (parser::parse_operation): Reject expanding operator-list inside 'for'.

From-SVN: r223612
2015-05-23 21:22:18 +00:00
Prathamesh Kulkarni
7f0c6bad05 Fix date in ChangeLog entry for r223610
From-SVN: r223611
2015-05-23 19:53:51 +00:00
Prathamesh Kulkarni
7523ca9b70 genmatch.c (parser::parse_for): Reject iterator if used as operator-list.
2015-05-23  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* genmatch.c (parser::parse_for): Reject iterator if used as operator-list.

From-SVN: r223610
2015-05-23 19:52:05 +00:00
Prathamesh Kulkarni
b78be01498 genmatch.c (parser::parse_operator_list): Check for CPP_CLOSE_PAREN after end of id-list.
2015-05-19  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* genmatch.c (parser::parse_operator_list): Check for CPP_CLOSE_PAREN after end of id-list.

From-SVN: r223609
2015-05-23 19:36:32 +00:00
Jan Hubicka
b727ba74fb lto.c (hash_canonical_type): Be sure we hash only types that need alias set.
* lto.c (hash_canonical_type): Be sure we hash only types that
	need alias set.
	(gimple_register_canonical_type_1): Do not produce canonical
	types for types that do not need alias sets.
	* tree.c (gimple_canonical_types_compatible_p): Sanity check that
	we do not try to compute canonical type for type that does not need
	alias set.
	(verify_type): Drop FIXME for METHOD_TYPE, update FIXME for
	FUNCITON_TYPE.
	* tree.h (type_with_alias_set_p): New.

From-SVN: r223608
2015-05-23 18:25:41 +00:00
Jan Hubicka
1d1218fb65 * lto.c (hash_canonical_type): Drop hashing of METHOD_BASETYPE.
From-SVN: r223607
2015-05-23 14:32:26 +00:00
Jan Hubicka
14e40d7efc tree.c (gimple_canonical_types_compatible_p): Do not compare function attributes.
* tree.c (gimple_canonical_types_compatible_p):  Do not compare
	function attributes.
	(verify_type): Remove METHOD_TYPE FIXME; update FUNCTION_TYPE.

From-SVN: r223606
2015-05-23 13:51:26 +00:00
François Dumont
e2897e23a7 2015-05-23 François Dumont fdumont@gcc.gnu.org>
PR libstdc++/64657
	* include/debug/functions.h (__check_sorted_aux): Cast expression to
	void.

From-SVN: r223605
2015-05-23 11:17:38 +00:00
GCC Administrator
1399066d34 Daily bump.
From-SVN: r223603
2015-05-23 00:16:15 +00:00
Jim Wilson
a95492ab85 Makefile.in (check_gcc_parallelize): Delete.
gcc/
	* Makefile.in (check_gcc_parallelize): Delete.
	(lang_checks_parallelized): Update comment.
gcc/c
	* Make-lang.in (check_gcc_pallelize): Define.
gcc/cp
	* Make-lang.in (check_g++_parallelize): Update comment.
gcc/fortran
	* Make-lang.in (check_gfortran_parallelize): Update comment.

From-SVN: r223597
2015-05-22 16:39:06 -07:00
Mikhail Maltsev
d08093db84 re PR rtl-optimization/66237 (FAIL: gcc.dg/tree-prof/pr34999.c compilation, -fprofile-use -D_PROFILE_USE (internal compiler error))
PR rtl-optimization/66237

* bb-reorder.c (fix_crossing_conditional_branches): Fix wrong
location of an "as_a" cast.

From-SVN: r223596
2015-05-22 22:58:22 +00:00
Jeff Law
3b0244cc3b pa.md (non-canonical shift-add insns): Remove.
* config/pa/pa.md (non-canonical shift-add insns): Remove.
	(peepholes with non-canonical RTL sources): Remove.
	(peepholes for indexed stores of FP regs in integer modes): Match and
	generate canonical RTL.

From-SVN: r223592
2015-05-22 15:25:26 -06:00
Marc Glisse
257b01ba3e re PR other/63387 (Optimize pairs of isnan() calls into a single isunordered())
2015-05-22  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/63387
gcc/
	* match.pd ((X /[ex] A) * A -> X): Remove unnecessary condition.
	((x ord x) & (y ord y) -> (x ord y),
	(x ord x) & (x ord y) -> (x ord y)): New simplifications.
	* fold-const.c (tree_unary_nonnegative_warnv_p) <ABS_EXPR>: Handle
	vectors like scalars.
gcc/testsuite/
	* gcc.dg/pr63387-2.c: New testcase.

From-SVN: r223591
2015-05-22 21:05:26 +00:00
Marc Glisse
b8f75b8cde convert.c (convert_to_integer, [...]): Include the types in the error message.
2015-05-22  Marc Glisse  <marc.glisse@inria.fr>

gcc/
	* convert.c (convert_to_integer, convert_to_vector): Include the
	types in the error message.
gcc/testsuite/
	* gcc.dg/simd-1.c: Update to the new message.

From-SVN: r223590
2015-05-22 20:59:27 +00:00
Yunlian Jiang
f50f17e670 libiberty.h (asprintf): Don't declare if HAVE_DECL_ASPRINTF is not defined.
include/:
	* libiberty.h (asprintf): Don't declare if HAVE_DECL_ASPRINTF is
	not defined.
libiberty/:
	* configure.ac: Add AC_GNU_SOURCE.
	* Makefile.in (COMPILE.c): Add -D_GNU_SOURCE.
	* configure, config.in: Rebuild.
	* floatformat.c (_GNU_SOURCE): Don't define if already defined.

From-SVN: r223589
2015-05-22 20:53:45 +00:00
Marc Glisse
af563d4bb7 match.pd ((x | y) & ~x -> y & ~x, (x & y) | ~x -> y | ~x): New simplifications.
2015-05-22  Marc Glisse  <marc.glisse@inria.fr>

gcc/
	* match.pd ((x | y) & ~x -> y & ~x, (x & y) | ~x -> y | ~x): New
	simplifications.
gcc/testsuite/
	* gcc.dg/nand.c: New testcase.

From-SVN: r223587
2015-05-22 20:37:04 +00:00
Jeff Law
ddc75e8baf pa.md (integer_indexed_store splitters): Use mem_shadd_operand.
* config/pa/pa.md (integer_indexed_store splitters): Use
	mem_shadd_operand.  Use ASHIFT rather than MULT in the resulting
	insns -- adjusting the constant 2nd operand accordingly.

From-SVN: r223586
2015-05-22 14:17:09 -06:00
Jeff Law
cc55969de9 combine.c (try_combine): Canonicalize (plus (mult X pow2) Y) into (plus (ashift X log2) Y) if...
* combine.c (try_combine): Canonicalize (plus (mult X pow2) Y) into
	(plus (ashift X log2) Y) if it is a split point.

	* gcc.target/hppa/shadd-3.c: New test.

From-SVN: r223583
2015-05-22 14:08:43 -06:00
Sandra Loosemore
83844a7d2a advsimd-intrinsics.exp: Set dg-do-what-default to compile only on ARM targets without arm_neon_hw...
2015-05-22  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/testsuite/
	* gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp:
	Set dg-do-what-default to compile only on ARM targets without
	arm_neon_hw execution support.  Remove redundant c-torture-execute
	in loop over test cases.

From-SVN: r223580
2015-05-22 12:34:35 -04:00
Jeff Law
92d0b05816 pa.c (mem_shadd_or_shadd_rtx_p): New function factored out of hppa_legitimize_address to handle both forms of a...
* pa.c (mem_shadd_or_shadd_rtx_p): New function factored out
	of hppa_legitimize_address to handle both forms of a multiply
	by 2, 4 or 8.
	(hppa_legitimize_address): Use mem_shadd_or_shadd_rtx_p.
	Always generate the ASHIFT variant as the result is not directly
	used in a MEM.  Update comments and refactor slightly to improve
	readability.

From-SVN: r223579
2015-05-22 10:13:07 -06:00
Uros Bizjak
9b789cc15c config.host (i[34567]-*-*, x86_64-*-*): Add t-crtfm instead of i386/t-crtfm to tmake_file.
* config.host (i[34567]-*-*, x86_64-*-*): Add t-crtfm instead of
	i386/t-crtfm to tmake_file.
	* config/i386/crtfastmath.c (set_fast_math_sse): New function.
	(set_fast_math): Use set_fast_math_sse for SSE targets.
	* config/i386/t-crtfm: Remove.

From-SVN: r223578
2015-05-22 16:39:22 +02:00
Kyrylo Tkachov
b6ec6215e3 [AArch64] PR target/65491: Classify V1TF vectors as AAPCS64 short vectors rather than composite types
PR target/65491
	* config/aarch64/aarch64.c (aarch64_short_vector_p): Move above
	aarch64_composite_type_p.  Remove check for aarch64_composite_type_p.
	(aarch64_composite_type_p): Return false if given type and mode are
	for a short vector.

	PR target/65491
	* gcc.target/aarch64/pr65491_1.c: New test.
	* gcc.target/aarch64/aapcs64/type-def.h (vlf1_t): New typedef.
	* gcc.target/aarch64/aapcs64/func-ret-1.c: Add test for vlf1_t.

From-SVN: r223577
2015-05-22 14:36:27 +00:00
Paolo Carlini
320d13eccc re PR c++/65598 (Fix column location for 'explicit')
/cp
2015-05-22  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/65598
	* decl.c (grokdeclarator): Use the correct location in error
	messages about 'explicit'.

/testsuite
2015-05-22  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/65598
	* g++.dg/cpp0x/explicit9.C: New.
	* g++.dg/cpp0x/explicit8.C: Check the locations too.

From-SVN: r223576
2015-05-22 14:14:38 +00:00
Richard Biener
effb52dae5 tree-vectorizer.h (struct _slp_oprnd_info): Add second_pattern member.
2015-05-22  Richard Biener  <rguenther@suse.de>

	* tree-vectorizer.h (struct _slp_oprnd_info): Add second_pattern
	member.
	* tree-vect-loop.c (vect_analyze_loop_operations): Look at
	patterns when determining whether SLP is pure.
	(vect_is_slp_reduction): Remove check for pattern stmts.
	(vect_is_simple_reduction_1): Remove dead code.
	* tree-vect-slp.c (vect_create_oprnd_info): Initialize second_pattern.
	(vect_get_and_check_slp_defs): Pass in the stmt number.
	Allow the first def in a reduction to be not a pattern stmt when
	the rest of the stmts def are patterns.
	(vect_build_slp_tree_1): Allow tcc_expression codes like
	SAD_EXPR and DOT_PROD_EXPR.
	(vect_build_slp_tree): Adjust.
	(vect_analyze_slp): Refactor and move BB vect error message ...
	(vect_slp_analyze_bb_1): ... here.

From-SVN: r223574
2015-05-22 13:52:58 +00:00
Arnaud Charlet
088c7e1b0c [multiple changes]
2015-05-22  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Constrain_Concurrent): If the context is a
	type declaration, generate an Itype_Reference for the anonymous
	subtype, to force elaboration at this point in gigi.

2015-05-22  Gary Dismukes  <dismukes@adacore.com>

	* layout.adb, einfo.ads, sem_ch12.adb, freeze.adb, sem_util.ads,
	exp_ch4.adb, sem_ch6.adb: Minor reformatting and typo fixes.

From-SVN: r223573
2015-05-22 15:33:18 +02:00
Aldy Hernandez
f8d851c6f7 tree-switch-conversion.c (build_one_array): Set DECL_IGNORED_P for CSWTCH temporary.
* tree-switch-conversion.c (build_one_array): Set DECL_IGNORED_P
	for CSWTCH temporary.

From-SVN: r223572
2015-05-22 13:31:29 +00:00
Nathan Sidwell
e55ffe1001 fix to use rvalue where expected
From-SVN: r223571
2015-05-22 13:22:19 +00:00
Arnaud Charlet
c42e1b178c Minor reformatting.
From-SVN: r223570
2015-05-22 15:19:46 +02:00
Ed Schonberg
e6b3f5ba80 sem_res.adb (Resolve_Actuals): If the call is to an overridden operation...
2015-05-22  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb (Resolve_Actuals): If the call is to an overridden
	operation, replace the names of the actuals in named associations
	with the names of the actuals of the subprogram that is eventually
	executed. The names of the formals and the defaults can differ
	between the two operations when they are operations of a formal
	derived type.

From-SVN: r223569
2015-05-22 15:17:54 +02:00
Arnaud Charlet
d992a425b7 [multiple changes]
2015-05-22  Bob Duff  <duff@adacore.com>

	* a-convec.ads, a-convec.adb (Append): Check for fast path. Split
	out slow path into separate procedure. Inline Append. Fast path
	now avoids calling Insert.
	(Finalize): Do the busy checking last, so the container gets emptied.
	(Insert, Insert_Space): Remove redundancy.

2015-05-22  Robert Dewar  <dewar@adacore.com>

	* switch-c.adb (Scan_Front_End_Switches): Insist on -gnatc
	for -gnatd.V.

From-SVN: r223567
2015-05-22 15:09:47 +02:00
Arnaud Charlet
84238eb02a gnatvsn.ads: Minor code reorg to remember more easily to update variables.
* gnatvsn.ads: Minor code reorg to remember more easily to update
	variables.

From-SVN: r223566
2015-05-22 15:06:34 +02:00