Commit Graph

138628 Commits

Author SHA1 Message Date
Martin Liska 533ab6c4c8 Change use to type-based pool allocator in sh.c.
* config/sh/sh.c (add_constant):Use new type-based pool allocator.
	(sh_reorg) Likewise.

From-SVN: r223951
2015-06-01 12:38:48 +00:00
Martin Liska ac0539d7ac Change use to type-based pool allocator in cfg.c.
* cfg.c (initialize_original_copy_tables):Use new type-based pool allocator.
	(free_original_copy_tables) Likewise.
	(copy_original_table_clear) Likewise.
	(copy_original_table_set) Likewise.

From-SVN: r223950
2015-06-01 12:38:23 +00:00
Martin Liska 4fef8379d7 Change use to type-based pool allocator in c-format.c.
* c-format.c (check_format_arg):Use new type-based pool allocator.
	(check_format_info_main) Likewise.

From-SVN: r223949
2015-06-01 12:37:49 +00:00
Martin Liska c1f5ce4830 Change use to type-based pool allocator in asan.c.
* asan.c (asan_mem_ref_get_alloc_pool):Use new type-based pool allocator.
	(asan_mem_ref_new) Likewise.
	(free_mem_ref_resources) Likewise.

From-SVN: r223948
2015-06-01 12:37:26 +00:00
Martin Liska 7e46899d1d Change use to type-based pool allocator in
* var-tracking.c (variable_htab_free):Use new type-based pool allocator.
	(attrs_list_clear) Likewise.
	(attrs_list_insert) Likewise.
	(attrs_list_copy) Likewise.
	(shared_hash_unshare) Likewise.
	(shared_hash_destroy) Likewise.
	(unshare_variable) Likewise.
	(var_reg_delete_and_set) Likewise.
	(var_reg_delete) Likewise.
	(var_regno_delete) Likewise.
	(drop_overlapping_mem_locs) Likewise.
	(variable_union) Likewise.
	(insert_into_intersection) Likewise.
	(canonicalize_values_star) Likewise.
	(variable_merge_over_cur) Likewise.
	(dataflow_set_merge) Likewise.
	(remove_duplicate_values) Likewise.
	(variable_post_merge_new_vals) Likewise.
	(dataflow_set_preserve_mem_locs) Likewise.
	(dataflow_set_remove_mem_locs) Likewise.
	(variable_from_dropped) Likewise.
	(variable_was_changed) Likewise.
	(set_slot_part) Likewise.
	(clobber_slot_part) Likewise.
	(delete_slot_part) Likewise.
	(loc_exp_insert_dep) Likewise.
	(notify_dependents_of_changed_value) Likewise.
	(emit_notes_for_differences_1) Likewise.
	(vt_emit_notes) Likewise.
	(vt_initialize) Likewise.
	(vt_finalize) Likewise.

From-SVN: r223947
2015-06-01 12:36:49 +00:00
Martin Liska 8b17d27f76 Change use to type-based pool allocator in ira-color.c.
* ira-color.c (init_update_cost_records):Use new type-based pool allocator.
	(get_update_cost_record) Likewise.
	(free_update_cost_record_list) Likewise.
	(finish_update_cost_records) Likewise.
	(initiate_cost_update) Likewise.

From-SVN: r223946
2015-06-01 12:36:01 +00:00
Martin Liska 2f77a6072c Change use to type-based pool allocator in lra.c.
* lra.c (init_insn_regs): Use new type-based pool allocator.
	(new_insn_reg) Likewise.
	(free_insn_reg) Likewise.
	(free_insn_regs) Likewise.
	(finish_insn_regs) Likewise.
	(init_insn_recog_data) Likewise.
	(init_reg_info) Likewise.
	(finish_reg_info) Likewise.
	(lra_free_copies) Likewise.
	(lra_create_copy) Likewise.
	(invalidate_insn_data_regno_info) Likewise.

From-SVN: r223945
2015-06-01 12:35:20 +00:00
Martin Liska cb8abb1cf9 Change use to type-based pool allocator in lra-lives.c.
* lra-lives.c (free_live_range): Use new type-based pool allocator.
	(free_live_range_list) Likewise.
	(create_live_range) Likewise.
	(copy_live_range) Likewise.
	(lra_merge_live_ranges) Likewise.
	(remove_some_program_points_and_update_live_ranges) Likewise.
	(lra_live_ranges_init) Likewise.
	(lra_live_ranges_finish) Likewise.

From-SVN: r223944
2015-06-01 12:34:31 +00:00
Martin Liska 64afff5b02 Change use to type-based pool allocator in et-forest.c.
* et-forest.c (et_new_occ): Use new type-based pool allocator.
	(et_new_tree): Likewise.
	(et_free_tree): Likewise.
	(et_free_tree_force): Likewise.
	(et_free_pools): Likewise.
	(et_split): Likewise.

From-SVN: r223943
2015-06-01 12:33:23 +00:00
Martin Liska 7d50111bc5 Introduce new type-based pool allocator.
* alloc-pool.c (struct alloc_pool_descriptor): Move definition
	to header file.
	* alloc-pool.h (pool_allocator::pool_allocator): New function.
	(pool_allocator::release): Likewise.
	(inline pool_allocator::release_if_empty): Likewise.
	(inline pool_allocator::~pool_allocator): Likewise.
	(pool_allocator::allocate): Likewise.
	(pool_allocator::remove): Likewise.

From-SVN: r223942
2015-06-01 12:29:12 +00:00
James Greenhalgh 32d48af55e [Patch obvious] Fuseable is not a word -> s/fuseable/fusible/g
gcc/

	* sched-deps.c (sched_analyze_2): Replace fuseable with fusible
	in comment.

From-SVN: r223940
2015-06-01 12:00:09 +00:00
James Greenhalgh fe0b29c7f4 [ARM Obvious] Fuseable is not a word -> s/fuseable/fusible/g
gcc/

	* gcc/config/arm/arm-protos.h (tune_params): Rename fuseable_ops
	to fusible_ops.
	* gcc/config/arm/arm.c (arm_print_tune_info): Likewise.
	(arm_macro_fusion_p): Likewise.
	(arm_macro_fusion_pair_p): Likewise.

From-SVN: r223939
2015-06-01 11:59:03 +00:00
James Greenhalgh e9a3a1750a [AArch64 Obvious] "Fuseable" is not a word -> s/fuseable/fusible/g
gcc/

	* config/aarch64/aarch64-protos.h (tune_params): Rename
	fuseable_ops to fusible_ops.
	* config/aarch64/aarch64.c (generic_tunings): Rename
	fuseable_ops to fusible_ops.
	(cortexa53_tunings): Likewise.
	(cortexa57_tunings): Likewise.
	(thunderx_tunings): Likewise.
	(xgene1_tunings): Likewise.
	(aarch64_macro_fusion_p): Likewise.
	(aarch64_macro_fusion_pair_p): Likewise.

From-SVN: r223938
2015-06-01 11:57:54 +00:00
Jonathan Wakely 77d0ed47e8 libstdc++.exp (libstdc++_init): Unset LANGUAGE environment variable.
* testsuite/lib/libstdc++.exp (libstdc++_init): Unset LANGUAGE
	environment variable.

From-SVN: r223937
2015-06-01 12:57:33 +01:00
Dominik Vogt cb0edc3993 S390: Support -mtune=native and -march=native.
gcc/ChangeLog

2015-06-01  Dominik Vogt  <vogt@linux.vnet.ibm.com>

	    * config/s390/driver-native.c: New file.
	    * config/s390/x-native: New file.
	    * config.host: Add new files for s390.
	    * config/s390/s390.h (DRIVER_SELF_SPECS): Add support for -mtune=native
	    and -march=native
	    * config.gcc: Likewise.
	    * config/s390/s390.opt (march): Likewise; add PROCESSOR_NATIVE
	    * config/s390/s390-opts.h (enum processor_type): Ditto.
	    * config/s390/s390.c (s390_option_override): Catch unhandled
	    PROCESSOR_NATIVE

From-SVN: r223934
2015-06-01 11:38:44 +00:00
Jakub Jelinek a48b05f911 hotpatch-compile-15.c: Remove dg-prune-output directives.
* gcc.target/s390/hotpatch-compile-15.c: Remove dg-prune-output
	directives.
	(hp3, hp4): Add inline keyword.
	* gcc.target/s390/hotpatch-19.c: Remove dg-prune-output directive.
	(hp2): Add inline keyword.
	* gcc.target/s390/hotpatch-19.c: Remove dg-prune-output directives.
	(hp2): Add inline keyword.

From-SVN: r223933
2015-06-01 13:38:04 +02:00
Ilya Enkovich 8e9b277397 re PR target/65527 (ICE: in expand_builtin_with_bounds, at builtins.c:7120 with -fcheck-pointer-bounds -mmpx)
gcc/

	PR target/65527
	* cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): Add
	redirection for instrumented calls.
	* lto-wrapper.c (merge_and_complain): Merge -fcheck-pointer-bounds.
	(append_compiler_options): Append -fcheck-pointer-bounds.
	* tree-chkp.h (chkp_copy_call_skip_bounds): New.
	(chkp_redirect_edge): New.
	* tree-chkp.c (chkp_copy_call_skip_bounds): New.
	(chkp_redirect_edge): New.

gcc/testsuite/

	PR target/65527
	* gcc.target/i386/mpx/chkp-fix-calls-1.c: New.
	* gcc.target/i386/mpx/chkp-fix-calls-2.c: New.
	* gcc.target/i386/mpx/chkp-fix-calls-3.c: New.
	* gcc.target/i386/mpx/chkp-fix-calls-4.c: New.

From-SVN: r223929
2015-06-01 11:24:07 +00:00
Alan Lawrence f4fa7bb473 [ARM/AArch64 Testsuite] Cleanup advsimd-intrinsics.exp, removing unnecessary loop
* gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp: Pass
	wildcard to gcc-dg-runtest; remove loop and unnecessary initialization.

From-SVN: r223928
2015-06-01 10:56:28 +00:00
Richard Biener 29764870aa re PR tree-optimization/66280 (ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1472)
2015-06-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/66280
	* tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Fix pattern
	def-use walking.

	* g++.dg/torture/pr66280.C: New testcase.
	* g++.dg/torture/pr66280-2.C: Likewise.

From-SVN: r223927
2015-06-01 10:37:30 +00:00
Eric Botcazou b4900b374e * gcc-interface/Makefile.in: Fix ARM/Darwin configuration.
From-SVN: r223924
2015-06-01 09:16:55 +00:00
Kyrylo Tkachov dba606bfa8 [AArch64] Fix type of *<LOGICAL:optab>_one_cmpl_<SHIFT:optab><mode>3 pattern
* config/aarch64/aarch64.md
	(*<LOGICAL:optab>_one_cmpl_<SHIFT:optab><mode>3): Change type to
	logic_shift_imm.

From-SVN: r223922
2015-06-01 09:11:34 +00:00
Pierre-Marie de Rodat 3b5d86ec77 utils.c (scale_by_factor_of): When handling a function call expression, process the corresponding function body.
* gcc-interface/utils.c (scale_by_factor_of): When handling a function
	call expression, process the corresponding function body.  Also handle
	potential addends.

From-SVN: r223921
2015-06-01 09:03:34 +00:00
Pierre-Marie de Rodat 66dc4b9540 decl.c (gnat_to_gnu_entity): Replace pointer types with references ones for functions that return references.
* gcc-interface/decl.c (gnat_to_gnu_entity): Replace pointer types with
	references ones for functions that return references.

From-SVN: r223920
2015-06-01 08:49:46 +00:00
Eric Botcazou bd769c8325 decl.c (gnat_to_gnu_entity): For a definition of a type coming from a limited_with...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Incomplete_Type>: For a
	definition of a type coming from a limited_with, get to the full view
	if it is not in the main code unit.

From-SVN: r223919
2015-06-01 08:41:30 +00:00
Eric Botcazou 2b50232a5d winnt.c (i386_pe_encode_section_info): Remove obsolete kludge.
* config/i386/winnt.c (i386_pe_encode_section_info) <FUNCTION_DECL>:
	Remove obsolete kludge.
ada/
	* gcc-interface/utils.c (create_var_decl_1): If an assembler name is
	specified, let the target mangle it before settting.
	(create_subprog_decl): Likewise and move this treatment last.

From-SVN: r223918
2015-06-01 08:22:14 +00:00
Eric Botcazou b2fbb27f6c lang-specs.h (TARGET_VXWORKS_RTP): Simplify and add trailing space.
* gcc-interface/lang-specs.h (TARGET_VXWORKS_RTP): Simplify and add
	trailing space.

From-SVN: r223917
2015-06-01 08:08:11 +00:00
Eric Botcazou cfa936d418 lang-specs.h (TARGET_VXWORKS_RTP): Move substitution to before first -gnatez switch.
* gcc-interface/lang-specs.h (TARGET_VXWORKS_RTP): Move substitution to
	before first -gnatez switch.

From-SVN: r223916
2015-06-01 08:06:59 +00:00
Eric Botcazou 8c41a1c8f0 decl.c (gnat_to_gnu_entity): If the record has a parent field and a representation clause...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: If the
	record has a parent field and a representation clause, make sure that
	it is properly aligned.

From-SVN: r223915
2015-06-01 08:04:16 +00:00
Richard Biener 44eff886de tree-ssa-reassoc.c (get_rank): Simplify.
2015-06-01  Richard Biener  <rguenther@suse.de>

	* tree-ssa-reassoc.c (get_rank): Simplify.

From-SVN: r223914
2015-06-01 07:56:34 +00:00
Eric Botcazou ed98eed866 trans.c (lvalue_required_p): Deal with character and enumeration literals as index values.
* gcc-interface/trans.c (lvalue_required_p) <N_Indexed_Component>: Deal
	with character and enumeration literals as index values.

From-SVN: r223913
2015-06-01 07:51:02 +00:00
Eric Botcazou 73a1a80308 gigi.h (build_simple_component_ref): Declare.
* gcc-interface/gigi.h (build_simple_component_ref): Declare.
	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Deal with
	address clause on aliased object with unconstrained nominal subtype.
	Mark the aligning variable as artificial, do not convert the address
	expression immediately but mark it as constant instead.
	* gcc-interface/utils.c (convert): If the target type contains a
	template, be prepared for an empty array.
	(maybe_unconstrained_array): Likewise.
	* gcc-interface/utils2.c (known_alignment) <POINTER_PLUS_EXPR>: Deal
	with the pattern built for aligning types.
	<INTEGER_CST>: Do not cap the value at BIGGEST_ALIGNMENT.
	(build_simple_component_ref): Make public.
	If the base object is a constructor that contains a template, fold the
	result field by field.

From-SVN: r223912
2015-06-01 07:43:09 +00:00
GCC Administrator fcdc67186b Daily bump.
From-SVN: r223910
2015-06-01 00:16:15 +00:00
Jonathan Wakely 5d946f4228 re PR libstdc++/66354 ([UBSAN] stl_algobase.h:708:7: runtime error: null pointer passed as argument)
PR libstdc++/66354
	* include/bits/stl_algobase.h (__fill_a): Check length before calling
	memset.

From-SVN: r223906
2015-05-31 23:42:17 +01:00
Eric Botcazou 1edfb384e8 c-ada-spec.c (is_tagged_type): Test for TYPE_METHODS on main variant.
* c-ada-spec.c (is_tagged_type): Test for TYPE_METHODS on main variant.
	(has_nontrivial_methods): Likewise.

From-SVN: r223905
2015-05-31 21:47:28 +00:00
Jason Merrill 255a48d641 * constexpr.c (cxx_eval_indirect_ref): Try folding first.
From-SVN: r223902
2015-05-31 16:36:26 -04:00
Jason Merrill 6ad6af49da re PR c++/66320 (ICE: in cxx_eval_constant_expression, at cp/constexpr.c:3524)
PR c++/66320
	* constexpr.c (cxx_eval_constant_expression): Treat a placeholder
	with the wrong type as non-constant.

From-SVN: r223901
2015-05-31 16:36:18 -04:00
Eric Botcazou ce8cddc1b5 * s-oscons-tmplt.c: Add explicit tests for Android alongside Linux.
From-SVN: r223900
2015-05-31 16:32:46 +00:00
H.J. Lu fee22a8053 Check CXXFLAGS, instead of CFLAGS, for NO_PIE_CFLAGS
* configure.ac (NO_PIE_CFLAGS): Check CXXFLAGS instead of CFLAGS.
	* configure: Regenerated.

From-SVN: r223899
2015-05-31 05:06:06 -07:00
Mikhail Maltsev 60b9209717 Fix C++11 compatibility issue
* config/cris/cris.h (CRIS_ARCH_CPP_DEFAULT): Fix C++11 compatibility
	issue (add space between string literal and macro).
	* config/i386/mingw32.h (REAL_LIBGCC_SPEC): Likewise.

From-SVN: r223898
2015-05-31 08:12:55 +00:00
GCC Administrator 463c7280e2 Daily bump.
From-SVN: r223896
2015-05-31 00:16:17 +00:00
Eric Botcazou a02a275438 Fix copyright years.
From-SVN: r223891
2015-05-30 21:23:24 +00:00
Eric Botcazou 329be64b06 adaint.c: Test for __linux__ instead of linux and __sun__ instead of sun.
* adaint.c: Test for __linux__ instead of linux and __sun__ instead
	of sun.  Add missing leading underscore to AIX.  Remove #elif 0.
	* adaint.h: Likewise.
	* cio.c: Likewise.
	* cstreams.c: Likewise.
	* env.c: Likewise.
	* gsocket.h: Likewise.
	* init.c: Likewise.  Test for __i386__ instead of i386.
	* link.c: Likewise.
	* s-oscons-tmplt.c: Likewise.
	* sysdep.c: Likewise.
	* terminals.c: Likewise.  Use BSD symbol instead of FREEBSD.
	* tracebak.c: Likewise.  Test for __sparc__ instead of sparc.

From-SVN: r223890
2015-05-30 21:13:59 +00:00
Andreas Schwab c67e8801d9 m68k.h (ASM_PCREL_SPEC): Pass --pcrel also for implict or explicit -fPIE or -fpie.
* config/m68k/m68k.h (ASM_PCREL_SPEC): Pass --pcrel also for
implict or explicit -fPIE or -fpie.

From-SVN: r223889
2015-05-30 17:04:15 +00:00
Mike Frysinger 98ca38bf64 alpha: turn -mcpu=<cpu> into -m<cpu> for the assembler all the time
If you create a toolchain with the target alphaev68-unknown-linux-gnu, gcc
will use the -mcpu=ev67 by default when compiling.  Some software packages
(like gmp) will use this target info to decide that it may freely use
assembly code that targets ev67+.  The trouble comes in when trying to
compile that pure assembly code.

While gcc will use -mcpu=ev67 just fine, it will invoke gas without an
-mev67 option, so the assembler will default to the lowest common
denominator -- ev4 in this case.  Inline assembly in C code is normally
just peachy because gcc's assembler output will start with ".arch <cpu>"
and the assembler will accept that.  But if the hand coded assembly code
lacks that .arch, you easily end up with errors like so:
	opcode `cttz' not supported for target <all>

While the assembly code could/should be fixed to explicitly output the
.arch directive, I think it's reasonable to expect this to work:
	echo 'cttz $20,$21' | gcc -x assembler -c - -o /dev/null -mcpu=ev67

This simple patch implements that, although I guess it is a bit redundant
in the default case where gcc outputs .arch.  Perhaps that should all be
punted in favor of a specs-only approach.  Considering gas respects .arch
in the code over the command line, it should also make things more natural.
The command line is processed in the standard/expected way -- gcc defaults
the -m option while user's custom -mcpu/-Wa,-m options come after, and the
guy writing the assembly code is free to use .arch to override everything
else.

From-SVN: r223888
2015-05-30 16:39:52 +00:00
H.J. Lu 4af8bb9762 Fix dg-warning in gcc.dg/alias-8.c
* gcc.dg/alias-8.c: Fix dg-warning.

From-SVN: r223887
2015-05-30 08:36:59 -07:00
Jonathan Wakely 12fc64ac3a stl_algobase.h (__equal<true>::equal): Check length instead of checking for null pointers.
* include/bits/stl_algobase.h (__equal<true>::equal): Check length
	instead of checking for null pointers.
	(__lexicographical_compare<true>::__lc): Only check shorter length.

From-SVN: r223886
2015-05-30 12:44:02 +01:00
DJ Delorie 7d21a61eb5 expmed.c (extract_bit_field_1): Avoid clobbering a yet-to-be-used base/index register.
* expmed.c (extract_bit_field_1): Avoid clobbering a
yet-to-be-used base/index register.

From-SVN: r223885
2015-05-30 02:05:54 -04:00
Mikhail Maltsev ec3dfdac4d Add new script to contrib (GIMPLE syntax highlighting rules for Vim).
contrib/
	* gimple.vim: New file.

From-SVN: r223884
2015-05-30 05:44:17 +00:00
Jan Hubicka 6e042ef4e2 alias.c (alias_set_entry_d): Add is_pointer and has_pointer.
* alias.c (alias_set_entry_d): Add is_pointer and has_pointer.
	(alias_stats): Add num_universal.
	(alias_set_subset_of): Special case pointers; be ready for NULL
	children.
	(alias_sets_conflict_p): Special case pointers; be ready for NULL
	children.
	(init_alias_set_entry): Break out from ...
	(record_alias_subset): ... here; propagate new fields;
	allocate children only when really needed.
	(get_alias_set): Do less generous pointer globbing.
	(dump_alias_stats_in_alias_c): Update statistics.
	* gcc.dg/alias-8.c: Do not xfail.
	* gcc.dg/pr62167.c: Prevent FRE.
	* gcc.dg/alias-14.c: New testcase.

From-SVN: r223883
2015-05-30 00:32:04 +00:00
GCC Administrator 530141b637 Daily bump.
From-SVN: r223882
2015-05-30 00:16:15 +00:00