Commit Graph

138093 Commits

Author SHA1 Message Date
Richard Henderson afc1c5fa0d i386: Add CCPmode
For testing parity coming out of asm flags.

From-SVN: r223026
2015-05-11 16:33:28 -07:00
Richard Henderson 7ca35180e9 Convert to md_asm_adjust
Using proper vectors instead of lists of trees.

From-SVN: r223025
2015-05-11 16:33:23 -07:00
Richard Henderson 15a85b055d Canonicalize asm volatility earlier
If gimple_asm_volatile_p is correct, no point re-checking.
This is also done by the C and C++ front ends, but not Ada.
So we can't yet trust ASM_VOLATILE_P from the front end.

From-SVN: r223024
2015-05-11 16:33:17 -07:00
Richard Henderson 6476a8fde0 Merge expand_asm_operands into expand_asm_stmt
Prepatory to converting from tree chains to vectors.

From-SVN: r223023
2015-05-11 16:33:12 -07:00
Richard Henderson 5570ddd5a8 Only resolve_asm_operand_names once
We do it in the front end already; no need to repeat.

From-SVN: r223022
2015-05-11 16:33:07 -07:00
Jan Hubicka 5ce039dfe9 class.c (fixup_type_variants): Do not copy TYPE_METHODS
* class.c (fixup_type_variants): Do not copy TYPE_METHODS
	(one_inheriting_sig): Assert tat we always set TYPE_METHODS of main variant.
	* semantics.c (finish_member_declaration): Likewise.
	* method.c (lazily_declare_fn): Allways add method to main variant list.

	* dwarf2out.c (gen_member_die): Sanity check that we access TYPE_MAIN_VARIANT
	for TYPE_METHODS.
	* function.c (use_register_for_decl): Look for TYPE_MAIN_VARIANT when checking
	TYPE_METHODS.
	* tree.c (free_lang_data_in_type): See TYPE_METHODS to error_mark_node
	if non-null.
	(build_distinct_type_copy): Clear TYPE_METHODS.
	(verify_type_variant): Verify that TYPE_METHODS is NULL for variants.
	(verify_type): Allow TYPE_METHODS to be error_mark_node.
	* tree.def: Update docs of YTPE_STUB_DECL and TYPE_METHODS.

From-SVN: r223021
2015-05-11 22:24:33 +00:00
Eric Botcazou 20d4397af8 emit-rtl.c (emit_pattern_after_setloc): Add missing guard.
* emit-rtl.c (emit_pattern_after_setloc): Add missing guard.
	(emit_pattern_before_setloc): Likewise.

From-SVN: r223020
2015-05-11 22:12:46 +00:00
Mikael Morin 21cd397ea3 Fix fortran/66100 bound simplification ICE
PR fortran/66100
gcc/fortran/
        * simplify.c (simplify_bound): Fix assert to accept subobject * arrays.
gcc/testsuite/
        * gfortran.dg/bound_simplification_6.f90: New.

From-SVN: r223019
2015-05-11 21:03:50 +00:00
Joseph Myers caadc44d7b * sv.po: Update.
From-SVN: r223016
2015-05-11 21:08:32 +01:00
Richard Sandiford 182b8b6956 genrecog.c (match_pattern_1): Expect the pattern to be a SEQUENCE for define_peephole2s.
gcc/
	* genrecog.c (match_pattern_1): Expect the pattern to be a SEQUENCE
	for define_peephole2s.
	(get_peephole2_pattern): New function.
	(main): Use it.  Call validate_pattern.

From-SVN: r223015
2015-05-11 19:54:42 +00:00
Paulo Matos 91c6b410ad * MAINTAINERS (Write After Approval): Add myself.
From-SVN: r223012
2015-05-11 20:09:43 +02:00
Paulo Matos e640447c6d configure.ac: Fix typo.
* configure.ac: Fix typo.
        * configure: Regenerate.

From-SVN: r223011
2015-05-11 20:09:35 +02:00
Steve Ellcey 263444332a * gcc.target/mips/branch-1.c: Pass argument to bar().
From-SVN: r223010
2015-05-11 18:01:13 +00:00
Pitchumani Sivanupandi 4e2c881f71 avr.c (avr_hard_regno_call_part_clobbered): Use LAST_CALLEE_SAVED_REG instead of hard-coded register number.
* config/avr/avr.c (avr_hard_regno_call_part_clobbered): Use
	LAST_CALLEE_SAVED_REG instead of hard-coded register number.
	(Last callee saved reg is different for AVR_TINY architecture)

From-SVN: r223009
2015-05-11 20:16:43 +03:00
Uros Bizjak bdfdc7da5c i386.c (ix86_loop_unroll_adjust): Use PATTERN (insn) when looking for memory references.
* config/i386/i386.c (ix86_loop_unroll_adjust): Use PATTERN (insn)
	when looking for memory references.

From-SVN: r223008
2015-05-11 18:35:02 +02:00
Ian Lance Taylor b1b0e90567 runtime: Fix runtime/pprof test when libgo is not optimized.
When libgo is not optimized the static function profilealloc
in malloc.goc shows up in the stack trace.  Rename it to
runtime_profilealloc so that runtime/pprof.printStackRecord
ignores it.

From-SVN: r223006
2015-05-11 16:19:23 +00:00
Alexander Monakov f1ed9790a3 re PR target/65753 ([i386] Incorrect tail call inhibition logic on i386 (32-bit))
PR target/65753
	* config/i386/i386.c (ix86_function_ok_for_sibcall): Allow PIC sibcalls
	via function pointers.

testsuite:
	* gcc.target/i386/pr65753.c: New test.

From-SVN: r223005
2015-05-11 19:10:24 +03:00
Alexander Monakov b91fd3c76a calls.c (prepare_call_address): Transform PLT call to GOT lookup and indirect call by forcing address into a...
* calls.c (prepare_call_address): Transform PLT call to GOT lookup and
	indirect call by forcing address into a pseudo with -fno-plt.
	* common.opt (flag_plt): New option.
	* doc/invoke.texi (Code Generation Options): Add -fno-plt.
	([-fno-plt]): Document.

From-SVN: r223003
2015-05-11 16:20:57 +03:00
Markus Trippelsdorf 9e4b3dd6bc re PR bootstrap/66105 (genpreds.c compile error in stage2 on powerpc64-linux)
Fix PR66105

2015-05-11  Markus Trippelsdorf  <markus@trippelsdorf.de>

	PR bootstrap/66105
	* config/rs6000/option-defaults.h: Add space between string literal
	and macro name.

From-SVN: r223002
2015-05-11 11:24:35 +00:00
Thomas Preud'homme 95cfc3357d pr64616.c: Test dump rather than assembly to work accross ARM targets.
2015-05-11  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    * gcc.target/arm/pr64616.c: Test dump rather than assembly to work
    accross ARM targets.

From-SVN: r223001
2015-05-11 10:45:25 +00:00
Christian Bruel 625ffab6c1 arm-protos.h (thumb_code, [...]): Remove.
2015-05-11  Christian Bruel  <christian.bruel@st.com>
 
 	* config/arm/arm-protos.h (thumb_code, thumb1_code): Remove.
 	* config/arm/vxworks.h (thumb_code): Replace with TARGET_THUMB.

From-SVN: r223000
2015-05-11 12:34:41 +02:00
Richard Sandiford cb6f459119 re PR rtl-optimization/66076 (ICE: in vec_safe_grow, at vec.h:618 with -funroll-loops -mno-prefer-avx128 -march=bdver4)
gcc/
	PR rtl-optimization/66076
	* rtlanal.c (generic_subrtx_iterator <T>::add_single_to_queue):
	Don't grow the heap array if it is already big enough from a
	previous iteration.

gcc/testsuite/
	PR rtl-optimization/66076
	* gcc.dg/torture/pr66076.c: New test.

From-SVN: r222999
2015-05-11 09:35:53 +00:00
Christian Bruel 258619bb2d arm-protos.h (arm_declare_function_name): Declare.
2015-05-11  Christian Bruel  <christian.bruel@st.com>

	* config/arm/arm-protos.h (arm_declare_function_name): Declare.
	(is_called_in_ARM_mode): Remove.
	* config/arm/arm.c (is_called_in_ARM_mode): Declare static bool.
	(arm_declare_function_name): Moved from from ARM_DECLARE_FUNCTION_NAME.
	* config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Call
	 arm_declare_function_name.

From-SVN: r222997
2015-05-11 10:23:53 +02:00
Christian Bruel d7f3cf03e4 fix date
From-SVN: r222996
2015-05-11 09:58:19 +02:00
Christian Bruel 1a7ae4cef7 arm.c (arm_option_override): Reoganized and split into : (arm_option_params_internal); New function.
2014-09-23  Christian Bruel  <christian.bruel@st.com>

	* config/arm/arm.c (arm_option_override): Reoganized and split into :
	(arm_option_params_internal); New function.
	(arm_option_check_internal): New function.
	(arm_option_override_internal): New function.
	(thumb_code, thumb1_code): Remove.
	* config/arm/arm.h (TREE_TARGET_THUMB, TREE_TARGET_THUMB1): New macros.
	(TREE_TARGET_THUM2, TREE_TARGET_ARM): Likewise.
	(thumb_code, thumb1_code): Remove.
	* config/arm/arm.md (is_thumb, is_thumb1): Check TARGET flag.

From-SVN: r222995
2015-05-11 09:53:33 +02:00
Uros Bizjak c37aa43b98 * config/alpha/alpha.c (alpha_emit_set_const_1)
(alpha_emit_set_long_const, alpha_extract_integer)
	(alpha_legitimate_constant_p, alpha_split_const_mov)
	(alpha_expand_block_clear, alpha_expand_zap_mask, print_operand):
	[HOST_BITS_PER_WIDE_INT < 64]: Remove dead code.
	(alpha_emit_set_const_1): Change "(HOST_WIDE_INT) 1" to
	HOST_WIDE_INT_1U.
	* config/alpha/predicates.md (mode_mask_operand): Do not match
	const_double RTX.
	[HOST_BITS_PER_WIDE_INT < 64]: Remove dead code.
	* config/alpha/alpha.md (abstf, *abstf_internal, UNSPEC_ZAP splitter):
	Change "(HOST_WIDE_INT) 1" to HOST_WIDE_INT_1U.
	[HOST_BITS_PER_WIDE_INT < 64]: Remove dead code.
	(*negtf_internal): Use gen_int_mode instead of immed_double_const.

From-SVN: r222994
2015-05-11 09:21:19 +02:00
Jakub Jelinek cbddf64c02 re PR target/65780 (Uninitialized common handling in executables)
PR target/65780
	* config/s390/linux.h (TARGET_BINDS_LOCAL_P): Define to
	default_binds_local_p_2.
	* config/arm/linux-elf.h (TARGET_BINDS_LOCAL_P): Likewise.
	* config/aarch64/aarch64-linux.h (TARGET_BINDS_LOCAL_P): Likewise.

From-SVN: r222992
2015-05-11 09:09:04 +02:00
Jan Hubicka 3eb92a3d25 * tree.c (verify_type_variant): Check TYPE_VALUES_RAW and TYPE_PRECISION
From-SVN: r222991
2015-05-11 02:51:51 +00:00
Jan Hubicka dafb7b56f1 Patch by Richard Biener
Patch by Richard Biener
	* coverage.c (coverage_obj_init): Delay building of type variant
	until the type is finished.

From-SVN: r222990
2015-05-11 02:48:49 +00:00
GCC Administrator 37e5311a0a Daily bump.
From-SVN: r222989
2015-05-11 00:16:15 +00:00
Jan Hubicka ad5bc3248e ipa-devirt.c (warn_types_mismatch): Do not ICE when warning about mismatch between C and C++ type...
* ipa-devirt.c (warn_types_mismatch): Do not ICE when warning about
	mismatch between C and C++ type; compoare correctly ARG_TYPES
	for non-prototypes and output correctly parameter index for METHOD_TYPE.
	(odr_types_equivalent_p): Fix wording of warning about attributes;
	it is OK to match prototype and non-prototype.

From-SVN: r222985
2015-05-10 21:58:53 +00:00
Jan Hubicka 15296d46de tree.c (free_lang_data_in_type): Free TREE_PURPOSE of TYPE_ARG_TYPES list.
* tree.c (free_lang_data_in_type): Free TREE_PURPOSE of
	TYPE_ARG_TYPES list.
	(verify_type): Permit non-NULL TREE_PURPOSE in non-LTO builds.
	* tree.def (FUNCTION_TYPE): Document TREE_PURPOSE in TYPE_ARG_TYPES

From-SVN: r222984
2015-05-10 21:03:15 +00:00
Mikhail Maltsev e587377d38 * MAINTAINERS (Write After Approval): Add myself.
From-SVN: r222983
2015-05-10 18:13:57 +00:00
Thomas Koenig 7fc67fcb4d re PR fortran/66041 (Matmul ICE)
2015-05-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/66041
	* frontend-passes.c (scalarized_expr): Set correct dimension and
	shape for the expression to be passed to lbound. Remove trailing
	references after array refrence.
	(inline_matmul_assign):  Remove gfc_copy_expr from calls
	to scalarized_expr().

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

	PR fortran/66041
	* gfortran.dg/inline_matmul_7.f90:  New test.
	* gfortran.dg/inline_matmul_8.f90:  New test.
	* gfortran.dg/inline_matmul_9.f90:  New test.

From-SVN: r222982
2015-05-10 18:08:33 +00:00
Jan Hubicka e3855ed21a * tree.h (is_lang_specific): Constify.
From-SVN: r222981
2015-05-10 14:20:09 +00:00
Jan Hubicka 9a22098d4d * tree.c (verify_type): Verify TYPE_BINFO and TYPE_VALUES_RAW.
From-SVN: r222980
2015-05-10 14:13:32 +00:00
Mikael Morin 22fa926f19 bound simplification refactoring
gcc/fortran/
	* simplify.c (simplify_bound_dim): Don't check for emptyness
	in the case of cobound simplification.  Factor lower/upper
	bound differenciation before the actual simplification.
	(simplify_bound): Remove assumed shape specific simplification.  
	Don't give up early for the lbound of an assumed shape.
gcc/testsuite/
	* gfortran.dg/bound_simplification_5.f90: New.

From-SVN: r222979
2015-05-10 13:56:47 +00:00
Jason Merrill edff0c0662 c-opts.c (c_common_post_options): Also clear cpp_opts->cpp_warn_cxx11_compat.
* c-opts.c (c_common_post_options): Also clear
	cpp_opts->cpp_warn_cxx11_compat.

From-SVN: r222978
2015-05-09 20:47:33 -04:00
Jason Merrill 129211bc88 c-common.h (enum cxx_dialect): Add cxx_unset.
gcc/c-family/
	* c-common.h (enum cxx_dialect): Add cxx_unset.
	* c-common.c (cxx_dialect): Initialize to cxx_unset.
	* c-opts.c (c_common_post_options): Set C++ dialect to C++98 if unset.
gcc/testsuite/
	* lib/target-supports.exp (cxx_default): New global.
	(check_effective_target_c++11_only)
	(check_effective_target_c++14_only)
	(check_effective_target_c++98_only)
	(check_effective_target_c++1z_only): Check it.

From-SVN: r222977
2015-05-09 20:47:12 -04:00
Jason Merrill 381bf11ee9 c.opt (std=c++14): Remove Undocumented flag and experimental warning.
* c.opt (std=c++14): Remove Undocumented flag and experimental warning.
	(std=gnu++0x): Mark as Undocumented.
	(std=gnu++1y): Add deprecated message.

From-SVN: r222976
2015-05-09 20:46:34 -04:00
Jason Merrill 839473d010 synopsis.cc: Add _GLIBCXX14_CONSTEXPR.
* testsuite/20_util/headers/functional/synopsis.cc: Add
	_GLIBCXX14_CONSTEXPR.
	* testsuite/25_algorithms/headers/algorithm/synopsis.cc: Likewise.

From-SVN: r222975
2015-05-09 20:46:12 -04:00
GCC Administrator 6b534c5e3a Daily bump.
From-SVN: r222974
2015-05-10 00:16:19 +00:00
Marc Glisse 441898b206 re PR tree-optimization/64454 (optimize (x%5)%5)
2015-05-09  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/64454
gcc/
	* tree-vrp.c (extract_range_from_binary_expr_1) <TRUNC_MOD_EXPR>:
	Rewrite.
gcc/testsuite/
	* gcc.dg/tree-ssa/vrp97.c: New file.
	* gcc.dg/vect/slp-perm-7.c: Update.

From-SVN: r222970
2015-05-09 15:40:05 +00:00
Aldy Hernandez a31765efbf re PR bootstrap/66085 (Revision r222934 breaks bootstrap on darwin.)
PR bootstrap/66085
	* decl2.c (note_mangling_alias): Declare arguments as unused.

From-SVN: r222969
2015-05-09 13:50:21 +00:00
Mikael Morin 14aeb3cd27 Fix fortran/65894 elemental procedures wrong-code
gcc/fortran/
2015-05-09  Mikael Morin  <mikael@gcc.gnu.org>

	PR fortran/65894
	* trans-array.h (gfc_scalar_elemental_arg_saved_as_reference):
	New prototype.
	* trans-array.c (gfc_scalar_elemental_arg_saved_as_reference):
	New function.
	(gfc_add_loop_ss_code): Use gfc_scalar_elemental_arg_saved_as_reference
	as conditional.
	(gfc_walk_elemental_function_args): Set the dummy_arg field.
	* trans.h (gfc_ss_info): New subfield dummy_arg.
	* trans-expr.c (gfc_conv_procedure_call): Revert the change
	of revision 222361.
	(gfc_conv_expr): Use gfc_scalar_elemental_arg_saved_as_reference
	as conditional.

gcc/testsuite/
2015-05-09  Andre Vehreschild  <vehre@gmx.de>

	PR fortran/65894
	* gfortran.dg/elemental_subroutine_11.f90: New test.

From-SVN: r222968
2015-05-09 13:36:14 +00:00
Eric Botcazou 1f0e2688af utils.c (gnat_write_global_declarations): Use type_decl method instead of global_decl for TYPE_DECLs.
* gcc-interface/utils.c (gnat_write_global_declarations): Use type_decl
	method instead of global_decl for TYPE_DECLs.

From-SVN: r222967
2015-05-09 11:31:21 +00:00
Jason Merrill 1be0899d94 openacc.h (__GOACC_NOTHROW): Fix noexcept syntax.
* openacc.h (__GOACC_NOTHROW): Fix noexcept syntax.

	* testsuite/libgomp.oacc-c-c++-common/reduction-4.c (main): Use
	_Complex.

From-SVN: r222966
2015-05-09 00:50:35 -04:00
Jason Merrill f8356d52f2 std_c++0x_neg.cc: Add -std=c++98.
* testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/1.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/2.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/3.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/4.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/5.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/6.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/7.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/3946.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/assign_neg.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/20_util/headers/functional/synopsis.cc: Add -Wno-deprecated.
	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Adjust expected errors.
	* testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:  Likewise.
	* testsuite/ext/array_allocator/1.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/2.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/26875.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/3.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/check_allocate_max_size.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/check_deallocate_null.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/check_delete.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/check_new.cc: Add -Wno-deprecated.
	* testsuite/ext/profile/mutex_extensions_neg.cc: Prune follow-on error.
	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc: Add -std=c++98.
	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc: Add -std=c++98.
	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Add -std=c++98.
	* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Add -std=c++98 -fno-show-column.
	* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc: Add -std=c++98.
	* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc: Add -std=c++98.
	* testsuite/tr1/6_containers/utility/pair.cc: Add -std=c++98.
	* testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: Add -std=c++98.

From-SVN: r222965
2015-05-09 00:50:30 -04:00
Jason Merrill 6cd9cb89eb Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
* src/c++98/Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
	* src/c++98/Makefile.in: Regenerate.
	* src/Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
	* src/Makefile.in: Regenerate.

From-SVN: r222964
2015-05-09 00:50:23 -04:00
Jason Merrill 045a58e455 memcmp-1.c: Fix narrowing.
gcc/testsuite/
	* c-c++-common/asan/memcmp-1.c: Fix narrowing.
	* c-c++-common/asan/no-asan-stack.c: Fix narrowing.
	* c-c++-common/torture/vector-shift1.c: Fix narrowing.
	* c-c++-common/torture/vshuf-2.inc: Fix narrowing.
	* g++.dg/torture/pr33572.C: Compile with -std=c++98.

From-SVN: r222963
2015-05-09 00:50:19 -04:00