Commit Graph

125238 Commits

Author SHA1 Message Date
Andi Kleen
cc4029ee79 Fix handling of very long asm statements in inliner
An auto generated program with a 6.4mio line asm statement gave
with 4.7 and 4.8:

xxx.c:6400017:1: internal compiler error: in account_size_time, at
ipa-inline-analysis.c:601

The problem is that the inliner counts the number of lines in the asm
statement and multiplies that with a weight. With the weight this
overflows 32bit signed int, and triggers an assert for negative time.

Fix this by limiting the number of lines to 1000 for asm cost
estimation. The RTL backend also does similar multiplications for
jump shortening. I haven't tried to address this, but presumably
it's less likely to result in a failure.

gcc/:
2013-09-08  Andi Kleen  <ak@linux.intel.com>

	* tree-inline.c (estimate_num_insns): Limit asm cost to 1000.

From-SVN: r202374
2013-09-08 23:41:38 +00:00
Caroline Tice
41e96dc8f0 Update libvtv testsuite so that most of the tests now run under
the dejagnu test harness.

From-SVN: r202373
2013-09-08 16:35:14 -07:00
Caroline Tice
f085f27e12 Fix PR 58300...
Fix PR 58300:  Re-order events with -fvtable-verify=preinit
flag, so constructor init function is  not written to assembly
file until after call to cgraph_process_new_functions.

From-SVN: r202371
2013-09-08 14:58:07 -07:00
Jan Hubicka
7b395dddb5 * ipa.c (walk_polymorphic_call_targets): Fix inliner summary update.
From-SVN: r202370
2013-09-08 20:32:46 +00:00
Richard Sandiford
c34c46dd82 ira.c (update_equiv_regs): Only call set_paradoxical_subreg for non-debug insns.
gcc/
	* ira.c (update_equiv_regs): Only call set_paradoxical_subreg
	for non-debug insns.
	* lra.c (new_insn_reg): Take the containing insn as a parameter.
	Only modify lra_reg_info[].biggest_mode if it's non-debug insn.
	(collect_non_operand_hard_regs, add_regs_to_insn_regno_info): Update
	accordingly.

gcc/testsuite/
	* g++.dg/debug/ra1.C: New test.

From-SVN: r202369
2013-09-08 18:15:49 +00:00
Jan Hubicka
3462aa02a6 devirt-11.C: Update template.
* testsuite/g++.dg/ipa/devirt-11.C: Update template.
	* testsuite/g++.dg/ipa/devirt-16.C: New testcase.
	* testsuite/g++.dg/ipa/devirt-17.C: New testcase.
	* testsuite/g++.dg/ipa/devirt-18.C: New testcase.

	* cgraphunit.c (walk_polymorphic_call_targets): Permit 0 possible
	targets and devirtualize to BUILT_IN_UNREACHABLE.
	* timevar.def (TV_IPA_UNREACHABLE): New timevar.
	* ipa.c (walk_polymorphic_call_targets): New function.
	(symtab_remove_unreachable_nodes): Use it; do not keep all virtual
	functions; use the new timevar.
	* ipa-devirt.c (maybe_record_node): Do not insert static nodes that
	was removed from the program.
	(record_binfo): If BINFO corresponds to an anonymous namespace, we may
	not consider it in the walk when its vtable is dead.
	(possible_polymorphic_call_targets_1): Pass anonymous flag to
	record_binfo.
	(devirt_variable_node_removal_hook): New function.
	(possible_polymorphic_call_targets): Also register
	devirt_variable_node_removal_hook.
	(ipa_devirt): Do not do non-speculative devirtualization.
	(gate_ipa_devirt): One execute if devirtualizing speculatively.

From-SVN: r202368
2013-09-08 16:42:21 +00:00
Jan Hubicka
26e5b0fd28 cgraph.h (varpool_node_hook, [...]): Declare.
* cgraph.h (varpool_node_hook, varpool_node_hook_list,
	varpool_add_node_removal_hook, varpool_add_variable_insertion_hook,
	varpool_remove_variable_insertion_hook): Declare.
	* varpool.c (varpool_node_hook_list): New structure.
	(first_varpool_node_removal_hook,
	first_varpool_variable_insertion_hook): New variables.
	(varpool_add_node_removal_hook, varpool_remove_node_removal_hook,
	varpool_call_node_removal_hooks, varpool_add_variable_insertion_hook,
	varpool_remove_variable_insertion_hook,
	varpool_call_variable_insertion_hooks): New functions.
	(varpool_remove_node): Use it.

From-SVN: r202367
2013-09-08 16:18:04 +00:00
Paolo Carlini
97f1f314fe re PR c++/54941 (do not print line/column numbers for <built-in>:0:0)
2013-09-08  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/54941
	* diagnostic.c (diagnostic_build_prefix): When s.file is
	"<built-in>" don't output line and column numbers.

/testsuite
2013-09-08  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/54941
	* g++.dg/overload/new1.C: Adjust.

From-SVN: r202366
2013-09-08 14:30:27 +00:00
Tom de Vries
2e6a2f88ac Add missing ChangeLog entry for r199969.
From-SVN: r202365
2013-09-08 08:17:47 +00:00
Joern Rennecke
0af94e6f26 c-common.c (same_scalar_type_ignoring_signedness): Delete.
gcc/c-family:
        * c-common.c (same_scalar_type_ignoring_signedness): Delete.
        (vector_types_compatible_elements_p): New function.
        * c-common.h: (same_scalar_type_ignoring_signedness): Delete
	declaration.
        (vector_types_compatible_elements_p): Declare.
gcc/c:
        * c-typeck.c (build_binary_op): Use vector_types_compatible_elements_p.
gcc/cp:
        * typeck.c (cp_build_binary_op): Use vector_types_compatible_elements_p.
gcc/testsuite:
        * c-c++-common/opaque-vector.c: New test.

From-SVN: r202364
2013-09-08 07:16:24 +01:00
GCC Administrator
dde0314309 Daily bump.
From-SVN: r202363
2013-09-08 00:16:31 +00:00
Tom de Vries
e4fc429f7d Testcase for PR58282
2013-09-08  Tom de Vries  <tom@codesourcery.com>

	PR c++/58282
	* g++.dg/tm/noexcept-6.C: New test.

From-SVN: r202360
2013-09-07 23:31:58 +00:00
Tom de Vries
6df2ca09e9 Handle noexcept on transactions with -fno-exceptions
2013-09-08  Tom de Vries  <tom@codesourcery.com>

	PR c++/58282
	* except.c (build_must_not_throw_expr): Handle
	flag_exceptions.

From-SVN: r202359
2013-09-07 23:31:48 +00:00
Paolo Carlini
9a7fb488e3 re PR libstdc++/58341 (Doc conflicts with standard on forbidden range of result in copy_backward())
2013-09-07  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/58341
	* include/bits/stl_algobase.h (copy_backward): Fix documentation
	per DR 1206.

From-SVN: r202357
2013-09-07 22:57:49 +00:00
Paolo Carlini
4b21946eda Makefile.am: Remove #if ENABLE_VTABLE_VERIFY check around definition of check-am:.
2013-09-07  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/Makefile.am: Remove #if ENABLE_VTABLE_VERIFY check around
	definition of check-am:.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r202356
2013-09-07 21:35:38 +00:00
Jan Hubicka
bcb650cbb8 cgraphunit.c (expand_thunk): Get body before touching arguments.
* cgraphunit.c (expand_thunk): Get body before touching arguments.
	* lto-streamer-out.c: Stream thunks, too.
	* lto-streamer-in.c (input_function): Pop cfun here
	(lto_read_body): Instead of here.

From-SVN: r202352
2013-09-07 07:48:59 +00:00
GCC Administrator
2ef38fa0f3 Daily bump.
From-SVN: r202350
2013-09-07 00:16:36 +00:00
Caroline Tice
87f3fea84f Add documentation for the options --enable-vtable-verify,
--disable-vtable-verify and --disable-libvtv.  Also 
update configure and make files in libvtv not to use 
--enable-vtable-verify.

From-SVN: r202346
2013-09-06 10:56:35 -07:00
Jeff Law
5e8d9b4559 tree-ssa-dom.c (cprop_into_successor_phis): Also propagate edge implied equivalences into successor phis.
* tree-ssa-dom.c (cprop_into_successor_phis): Also propagate
        edge implied equivalences into successor phis.

From-SVN: r202345
2013-09-06 11:41:48 -06:00
Joern Rennecke
3a001aff33 resource.c (mark_referenced_resources): Handle COND_EXEC.
gcc:
	* resource.c (mark_referenced_resources): Handle COND_EXEC.
gcc/testsuite:
	* gcc.target/arc/cond-set-use.c: New test.

From-SVN: r202344
2013-09-06 18:37:50 +01:00
Claudiu Zissulescu
c42091c1b5 resource.c (mark_target_live_regs): Compute resources taking into account if a call is predicated or not.
2013-09-06 Claudiu Zissulescu <claziss@synopsys.com>

        * resource.c (mark_target_live_regs): Compute resources taking
        into account if a call is predicated or not.

From-SVN: r202343
2013-09-06 18:27:54 +01:00
Eric Botcazou
2c641f8b3a toplev.c (output_stack_usage): Be prepared for suffixes created by the compiler in the function names.
* toplev.c (output_stack_usage): Be prepared for suffixes created by
	the compiler in the function names.

From-SVN: r202339
2013-09-06 15:28:02 +00:00
Jan Hubicka
a81b0a3dbb re PR middle-end/58094 (IPA devirt testsuite errors)
PR middle-end/58094
	* ipa-inline.c (has_caller_p): New function.
	(want_inline_function_to_all_callers_p): Use it.
	(sum_callers, inline_to_all_callers): Break out from ...
	(ipa_inline): ... here.

From-SVN: r202337
2013-09-06 15:02:03 +00:00
Jan Hubicka
68e4ca7e49 i386.c (ix86_hard_regno_mode_ok): AVX modes are valid only when AVX is enabled.
* i386.c (ix86_hard_regno_mode_ok): AVX modes are valid only when	
	AVX is enabled.

From-SVN: r202335
2013-09-06 14:39:17 +00:00
James Greenhalgh
3c73e2fef9 [AArch64] Use neon_<ldm,stm>_2 where appropriate as "type".
gcc/
	* config/aarch64/aarch64.md
	(*movtf_aarch64): Use neon_<ls>dm_2 as type where v8type
	is fpsimd_<load/store>2.
	(load_pair<mode>): Likewise.
	(store_pair<mode>): Likewise.

From-SVN: r202334
2013-09-06 13:59:47 +00:00
James Greenhalgh
8c48eecd19 [AArch64, ARM] Introduce "mrs" type attribute.
gcc/
	* config/arm/types.md (type): Add "mrs" type.
	* config/aarch64/aarch64.md
	(aarch64_load_tp_hard): Make type "mrs".
	* config/arm/arm.md
	(load_tp_hard): Make type "mrs".
	* config/arm/cortex-a15.md: Update with new attributes.
	* config/arm/cortex-a5.md: Update with new attributes.
	* config/arm/cortex-a53.md: Update with new attributes.
	* config/arm/cortex-a7.md: Update with new attributes.
	* config/arm/cortex-a8.md: Update with new attributes.
	* config/arm/cortex-a9.md: Update with new attributes.
	* config/arm/cortex-m4.md: Update with new attributes.
	* config/arm/cortex-r4.md: Update with new attributes.
	* config/arm/fa526.md: Update with new attributes.
	* config/arm/fa606te.md: Update with new attributes.
	* config/arm/fa626te.md: Update with new attributes.
	* config/arm/fa726te.md: Update with new attributes.

From-SVN: r202333
2013-09-06 13:58:09 +00:00
James Greenhalgh
9ea187a578 [AArch64, ARM] Use "multiple" for type, where more than one instruction is used for a move
gcc/
	* config/aarch64/aarch64.md
	(*movti_aarch64): Use "multiple" for type where v8type is "move2".
	(*movtf_aarch64): Likewise.
	* config/arm/arm.md
	(thumb1_movdi_insn): Use "multiple" for type where more than one
	instruction is used for a move.
	(*arm32_movhf): Likewise.
	(*thumb_movdf_insn): Likewise.

From-SVN: r202332
2013-09-06 13:56:01 +00:00
James Greenhalgh
292b89b3d6 [AArch64, ARM] Rename the FCPYS type to FMOV
gcc/
	* config/arm/types.md (type): Rename fcpys to fmov.
	* config/arm/vfp.md
	(*arm_movsi_vfp): Rename type fcpys as fmov.
	(*thumb2_movsi_vfp): Likewise
	(*movhf_vfp_neon): Likewise
	(*movhf_vfp): Likewise
	(*movsf_vfp): Likewise
	(*thumb2_movsf_vfp): Likewise
	(*movsfcc_vfp): Likewise
	(*thumb2_movsfcc_vfp): Likewise
	* config/aarch64/aarch64-simd.md
	(move_lo_quad_<mode>): Replace type mov_reg with fmovs.
	* config/aarch64/aarch64.md
	(*movsi_aarch64): Replace type mov_reg with fmovs.
	(*movdi_aarch64): Likewise
	(*movsf_aarch64): Likewise
	(*movdf_aarch64): Likewise
	* config/arm/arm.c
	(cortexa7_older_only): Rename TYPE_FCPYS to TYPE_FMOV.
	* config/arm/iwmmxt.md
	(*iwmmxt_movsi_insn): Rename type fcpys as fmov.
	* config/arm/arm1020e.md: Update with new attributes.
	* config/arm/cortex-a15-neon.md: Update with new attributes.
	* config/arm/cortex-a5.md: Update with new attributes.
	* config/arm/cortex-a53.md: Update with new attributes.
	* config/arm/cortex-a7.md: Update with new attributes.
	* config/arm/cortex-a8-neon.md: Update with new attributes.
	* config/arm/cortex-a9.md: Update with new attributes.
	* config/arm/cortex-m4-fpu.md: Update with new attributes.
	* config/arm/cortex-r4f.md: Update with new attributes.
	* config/arm/marvell-pj4.md: Update with new attributes.
	* config/arm/vfp11.md: Update with new attributes.

From-SVN: r202331
2013-09-06 13:53:51 +00:00
James Greenhalgh
6a24a83ec4 [Patch AArch64] Fix types for some multiply instructions.
gcc/
	* config/aarch64/aarch64.md
	(*madd<mode>): Fix type attribute.
	(*maddsi_uxtw): Likewise.
	(*msub<mode>): Likewise.
	(*msubsi_uxtw): Likewise.
	(<su_optab>maddsidi4): Likewise.
	(<su_optab>msubsidi4): Likewise.

From-SVN: r202330
2013-09-06 13:42:12 +00:00
James Greenhalgh
b86923f0cd [Patch ARM AARCH64] Split "type" attributes: fdiv
gcc/
	* config/arm/types.md: Split fdiv<sd> as fsqrt<sd>, fdiv<sd>.
	* config/arm/arm.md (core_cycles): Remove fdiv.
	* config/arm/vfp.md:
	(*sqrtsf2_vfp): Update for attribute changes.
	(*sqrtdf2_vfp): Likewise.
	* config/aarch64/aarch64.md:
	(sqrt<mode>2): Update for attribute changes.
	* config/arm/arm1020e.md: Update with new attributes.
	* config/arm/cortex-a15-neon.md: Update with new attributes.
	* config/arm/cortex-a5.md: Update with new attributes.
	* config/arm/cortex-a53.md: Update with new attributes.
	* config/arm/cortex-a7.md: Update with new attributes.
	* config/arm/cortex-a8-neon.md: Update with new attributes.
	* config/arm/cortex-a9.md: Update with new attributes.
	* config/arm/cortex-m4-fpu.md: Update with new attributes.
	* config/arm/cortex-r4f.md: Update with new attributes.
	* config/arm/marvell-pj4.md: Update with new attributes.
	* config/arm/vfp11.md: Update with new attributes.

From-SVN: r202329
2013-09-06 13:39:57 +00:00
James Greenhalgh
7b49c9e1c0 [ARM,AARCH64] Insn type reclassification. Split f_cvt type.
gcc/
	* config/arm/types.md
	(type): Split f_cvt as f_cvt, f_cvtf2i, f_cvti2f.
	* config/aarch64/aarch64.md
	(l<fcvt_pattern><su_optab><GPF:mode><GPI:mode>2): Update with
	new attributes.
	(fix_trunc<GPF:mode><GPI:mode>2): Likewise.
	(fixuns_trunc<GPF:mode><GPI:mode>2): Likewise.
	(float<GPI:mode><GPF:mode>2): Likewise.
	* config/arm/vfp.md
	(*truncsisf2_vfp): Update with new attributes.
	(*truncsidf2_vfp): Likewise.
	(fixuns_truncsfsi2): Likewise.
	(fixuns_truncdfsi2): Likewise.
	(*floatsisf2_vfp): Likewise.
	(*floatsidf2_vfp): Likewise.
	(floatunssisf2): Likewise.
	(floatunssidf2): Likewise.
	(*combine_vcvt_f32_<FCVTI32typename>): Likewise.
	(*combine_vcvt_f64_<FCVTI32typename>): Likewise.
	* config/arm/arm1020e.md: Update with new attributes.
	* config/arm/cortex-a15-neon.md: Update with new attributes.
	* config/arm/cortex-a5.md: Update with new attributes.
	* config/arm/cortex-a53.md: Update with new attributes.
	* config/arm/cortex-a7.md: Update with new attributes.
	* config/arm/cortex-a8-neon.md: Update with new attributes.
	* config/arm/cortex-a9.md: Update with new attributes.
	* config/arm/cortex-m4-fpu.md: Update with new attributes.
	* config/arm/cortex-r4f.md: Update with new attributes.
	* config/arm/marvell-pj4.md: Update with new attributes.
	* config/arm/vfp11.md: Update with new attributes.

From-SVN: r202328
2013-09-06 13:37:56 +00:00
James Greenhalgh
e7df8af8d5 [AArch64] Fix types of second parameter to qtbl/qtbx intrinsics
gcc/
	* config/aarch64/arm_neon.h
	(vqtbl<1,2,3,4><q>_s8): Fix control vector parameter type.
	(vqtbx<1,2,3,4><q>_s8): Likewise.

gcc/testsuite/
	* gcc.target/aarch64/table-intrinsics.c
	(qtbl_tests8_< ,2,3,4>): Fix control vector parameter type.
	(qtb_tests8_< ,2,3,4>): Likewise.
	(qtblq_tests8_< ,2,3,4>): Likewise.
	(qtbxq_tests8_< ,2,3,4>): Likewise.

From-SVN: r202327
2013-09-06 13:34:41 +00:00
James Greenhalgh
594726e49e [Patch ARM] Add "type" attribute to Everything!
gcc/
	* config/arm/types.md: Add "no_insn", "multiple" and "untyped"
	types.
	* config/arm/arm-fixed.md: Add type attribute to all insn
	patterns.
	* config/arm/vfp.md: Add type attribute to all insn patterns.
	* config/arm/arm.md: Add type attribute to all insn patterns.
	* config/arm/thumb2.md: Add type attribute to all insn patterns.
	* config/arm/arm1020e.md: Update with new attributes.
	* config/arm/arm1026ejs.md: Update with new attributes.
	* config/arm/arm1136jfs.md: Update with new attributes.
	* config/arm/arm926ejs.md: Update with new attributes.
	* config/arm/cortex-a15.md: Update with new attributes.
	* config/arm/cortex-a5.md: Update with new attributes.
	* config/arm/cortex-a53.md: Update with new attributes.
	* config/arm/cortex-a7.md: Update with new attributes.
	* config/arm/cortex-a8.md: Update with new attributes.
	* config/arm/cortex-a9.md: Update with new attributes.
	* config/arm/cortex-m4.md: Update with new attributes.
	* config/arm/cortex-r4.md: Update with new attributes.
	* config/arm/fa526.md: Update with new attributes.
	* config/arm/fa606te.md: Update with new attributes.
	* config/arm/fa626te.md: Update with new attributes.
	* config/arm/fa726te.md: Update with new attributes.

From-SVN: r202323
2013-09-06 13:21:38 +00:00
James Greenhalgh
1c83b6738a [Patch AArch64] Fix register constraints for lane intrinsics.
gcc/
	* config/aarch64/aarch64-simd.md
	(aarch64_sqdml<SBINQOPS:as>l_n<mode>_internal): Use
	<vwx> iterator to ensure correct register choice.
	(aarch64_sqdml<SBINQOPS:as>l2_n<mode>_internal): Likewise.
	(aarch64_sqdmull_n<mode>): Likewise.
	(aarch64_sqdmull2_n<mode>_internal): Likewise.
	* config/aarch64/arm_neon.h
	(vml<as><q>_lane<q>_<su>16): Use 'x' constraint for element vector.
	(vml<as><q>_n_<su>16): Likewise.
	(vml<as>l_high_lane<q>_<su>16): Likewise.
	(vml<as>l_high_n_<su>16): Likewise.
	(vml<as>l_lane<q>_<su>16): Likewise.
	(vml<as>l_n_<su>16): Likewise.
	(vmul<q>_lane<q>_<su>16): Likewise.
	(vmul<q>_n_<su>16): Likewise.
	(vmull_lane<q>_<su>16): Likewise.
	(vmull_n_<su>16): Likewise.
	(vmull_high_lane<q>_<su>16): Likewise.
	(vmull_high_n_<su>16): Likewise.
	(vqrdmulh<q>_n_s16): Likewise.

From-SVN: r202322
2013-09-06 11:02:52 +00:00
Tejas Belagod
bb1ae54373 arm_neon.h: Fix all vdup<bhsd_lane<q> intrinsics to have the correct lane parameter.
2013-09-06  Tejas Belagod  <tejas.belagod@arm.com>

gcc/
	* config/aarch64/arm_neon.h: Fix all vdup<bhsd_lane<q> intrinsics to
	have the correct lane parameter.

From-SVN: r202321
2013-09-06 11:57:14 +01:00
Richard Biener
f23c074271 cfganal.c (control_dependences::~control_dependences): Properly free all of the vector.
2013-09-06  Richard Biener <rguenther@suse.de>

	* cfganal.c (control_dependences::~control_dependences):
	Properly free all of the vector.

From-SVN: r202320
2013-09-06 10:38:08 +00:00
Jan Hubicka
9e401b63cd Makefile.in (tree-sra.o): Update dependencies.
* Makefile.in (tree-sra.o): Update dependencies.
	* tree-sra.c: Include ipa-utils.h
	(scan_function): Use recursive_call_p.
	(has_caller_p): New function.
	(cgraph_for_node_and_aliases): Count also callers of aliases.

From-SVN: r202319
2013-09-06 10:36:44 +00:00
Kirill Yukhin
c1d49770cb re PR target/58269 (ICE when building libobjc on x86_64-apple-darwin* after revision 201915)
PR target/58269
* config/i386/i386.c (ix86_conditional_register_usage):
Proper initialize extended SSE registers.

From-SVN: r202318
2013-09-06 10:36:30 +00:00
Jan Hubicka
6da47f52a7 re PR tree-optimization/58311 (ICE: SIGSEGV in hash_table::find_slot_with_hash() with -fdevirtualize)
PR tree-optimization/58311
	* ipa-devirt.c (gate_ipa_devirt): Only execute when optimizing.

From-SVN: r202317
2013-09-06 10:33:48 +00:00
Jan Hubicka
fc11f321bb re PR middle-end/58094 (IPA devirt testsuite errors)
PR middle-end/58094
	* cgraph.h (symtab_semantically_equivalent_p): Declare.
	* tree-tailcall.c: Include ipa-utils.h.
	(find_tail_calls): Use it.
	* ipa-pure-const.c (check_call): Likewise.
	* ipa-utils.c (recursive_call_p): New function.
	* ipa-utils.h (recursive_call_p): Dclare.
	* symtab.c (symtab_nonoverwritable_alias): Fix formatting.
	(symtab_semantically_equivalent_p): New function.
	* Makefile.in (tree-tailcall.o): Update dependencies.

From-SVN: r202316
2013-09-06 10:13:37 +00:00
Eric Botcazou
9a6af4504b ipa-split.c (split_function): Set DECL_NO_INLINE_WARNING_P on the non-inlinable part.
* ipa-split.c (split_function): Set DECL_NO_INLINE_WARNING_P on the
	non-inlinable part.

From-SVN: r202315
2013-09-06 09:35:23 +00:00
Joern Rennecke
6660b45f39 ipa-pta-14.c (scan-ipa-dump): Don't expect NULL in foo.result set.
* gcc.dg/ipa/ipa-pta-14.c (scan-ipa-dump) [keeps_null_pointer_checks]:
        Don't expect NULL in foo.result set.
        * gcc.dg/tree-ssa/pta-escape-1.c (scan-tree-dump): Don't expect NULL
        in ESCAPED set.
        * gcc.dg/tree-ssa/pta-escape-2.c: Likewise.
        * gcc.dg/tree-ssa/pta-escape-3.c: Likewise.

From-SVN: r202314
2013-09-06 10:31:12 +01:00
Richard Biener
35f32ad4a7 lto-streamer.h (lto_global_var_decls): Remove.
2013-09-06  Richard Biener  <rguenther@suse.de>

	* lto-streamer.h (lto_global_var_decls): Remove.
	* Makefile.in (OBJS): Remove lto-symtab.o.
	(lto-symtab.o): Remove.
	(GTFILES): Remove lto-symtab.c
	* lto-symtab.c: Move to lto/

	lto/
	* lto-symtab.c: Move from gcc/
	* lto.h: Include vec.h.
	(lto_global_var_decls): Declare.
	* lto.c (lto_global_var_decls): Move definition here.
	* Make-lang.in (LTO_OBJS): Add lto-symtab.o.
	(lto-symtab.o): Add.
	* config-lang.in (gtfiles): Add lto.h.

From-SVN: r202313
2013-09-06 09:06:25 +00:00
Andreas Krebbel
d12a76f3ec 2013-09-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.md (UNSPEC_FPINT_FLOOR, UNSPEC_FPINT_BTRUNC)
	(UNSPEC_FPINT_ROUND, UNSPEC_FPINT_CEIL, UNSPEC_FPINT_NEARBYINT)
	(UNSPEC_FPINT_RINT): New constant definitions.
	(FPINT, fpint_name, fpint_roundingmode): New integer iterator
	definition with 2 attributes.
	("<FPINT:fpint_name><BFP:mode>2", "rint<BFP:mode>2")
	("<FPINT:fpint_name><DFP:mode>2", "rint<DFP:mode>2"): New pattern
	definitions.

2013-09-06  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gcc.target/s390/nearestint-1.c: New testcase.

From-SVN: r202312
2013-09-06 07:55:35 +00:00
Andreas Krebbel
a9cc3f58ac s390.md: Add "bcr_flush" value to mnemonic attribute.
2013-09-06  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.md: Add "bcr_flush" value to mnemonic
	attribute.
	("mem_thread_fence_1"): Use bcr 14,0 for z196 and later.
	Set the mnemonic attribute to "bcr_flush".  Set the "z196prop"
	attribute to "z196_alone".
	* config/s390/2827.md: Add "bcr_flush" to "ooo_groupalone" and
	"zEC12_simple".

From-SVN: r202311
2013-09-06 07:54:05 +00:00
Richard Biener
c8e9d8c346 basic-block.h (class control_dependences): New.
2013-09-06  Richard Biener  <rguenther@suse.de>

	* basic-block.h (class control_dependences): New.
	* tree-ssa-dce.c (control_dependence_map): Remove.
	(cd): New global.
	(EXECUTE_IF_CONTROL_DEPENDENT): Remove.
	(set_control_dependence_map_bit, clear_control_dependence_bitmap,
	find_pdom, find_control_dependence, find_all_control_dependences):
	Move to cfganal.c.
	(mark_control_dependent_edges_necessary, find_obviously_necessary_stmts,
	propagate_necessity, tree_dce_init, tree_dce_done,
	perform_tree_ssa_dce): Adjust.
	* cfganal.c (set_control_dependence_map_bit,
	clear_control_dependence_bitmap, find_pdom, find_control_dependence,
	find_all_control_dependences): Move from tree-ssa-dce.c and
	implement as methods of control_dependences class.
	(control_dependences::control_dependences): New.
	(control_dependences::~control_dependences): Likewise.
	(control_dependences::get_edges_dependent_on): Likewise.
	(control_dependences::get_edge): Likewise.

From-SVN: r202309
2013-09-06 07:24:11 +00:00
GCC Administrator
d1576de517 Daily bump.
From-SVN: r202305
2013-09-06 00:16:51 +00:00
Jan Hubicka
7d2ba4711f tree.c (types_same_for_odr): Drop overactive check.
* tree.c (types_same_for_odr): Drop overactive check.
	* ipa-devirt.c (hash_type_name): Likewise.

From-SVN: r202302
2013-09-05 23:25:48 +00:00
Joern Rennecke
0db7b1373f 20101011-1.c [__arc__] (DO_TEST): Define as 0.
* gcc.c-torture/execute/20101011-1.c [__arc__] (DO_TEST): Define as 0.
        * testsuite/gcc.target/arc: New directory.
        * gcc.dg/torture/pr37868.c: Also skip for arc*-*-*.
        * gcc.dg/stack-usage-1.c [__arc__] (SIZE): Define.
        * testsuite/gcc.dg/torture/stackalign/builtin-apply-2.c
        [__arc__] (STACK_ARGUMENTS_SIZE): Set to 0.
        * testsuite/gcc.dg/builtin-apply2.c
        [__arc__] (STACK_ARGUMENTS_SIZE): Set to 0.

Co-Authored-By: Vineet Gupta <Vineet.Gupta@synopsys.com>

From-SVN: r202301
2013-09-06 00:23:53 +01:00
Jan Hubicka
e18412fc01 cgraphunit.c (walk_polymorphic_call_targets): Break out from ...
* cgraphunit.c (walk_polymorphic_call_targets): Break out from ...
	(analyze_functions): ... here.

From-SVN: r202299
2013-09-05 23:06:10 +00:00