Commit Graph

124692 Commits

Author SHA1 Message Date
Jakub Jelinek 4029a5e063 re PR middle-end/57661 (ICE: SIGSEGV in verify_ssa)
PR tree-optimization/57661
	* tree-inline.h (struct copy_body_data): Add blocks_to_copy field.
	* tree-inline.c (tree_function_versioning): Initialize it.
	(remap_gimple_stmt): Return GIMPLE_NOP for MEM_REF lhs clobber stmts
	if id->blocks_to_copy and MEM_REF's SSA_NAME is defined in a block
	that is not being copied.

	* g++.dg/opt/pr57661.C: New test.

From-SVN: r201698
2013-08-13 19:06:13 +02:00
Jakub Jelinek 99c2bd544a re PR middle-end/56417 (internal compiler error: verify_gimple failed)
PR sanitizer/56417
	* asan.c (instrument_strlen_call): Fix typo in comment.
	Use char * type even for the lhs of POINTER_PLUS_EXPR.

	* gcc.dg/asan/pr56417.c: New test.

From-SVN: r201696
2013-08-13 18:58:46 +02:00
Eric Botcazou 2efdbf0f3c trans.c (can_equal_min_or_max_val_p): Be prepared for values outside of the range of the type.
* gcc-interface/trans.c (can_equal_min_or_max_val_p): Be prepared for
	values outside of the range of the type.

From-SVN: r201692
2013-08-13 15:52:26 +00:00
Steve Ellcey b5f8f063a7 mips.md (prefetch): Use lw instead of ld on loongson in 32bit mode.
2013-08-13  Steve Ellcey  <sellcey@mips.com>

	* config/mips/mips.md (prefetch): Use lw instead of ld on
	loongson in 32bit mode.

From-SVN: r201691
2013-08-13 15:49:39 +00:00
Nick Clifton 4de80584ef * config.gcc: (avr-linux): Allow for tmake_file not being empty.
From-SVN: r201690
2013-08-13 15:42:17 +00:00
Maciej W. Rozycki 2dc14aac5b * config.host <mips*-*-linux*>: Remove a stray comment.
From-SVN: r201689
2013-08-13 14:26:49 +00:00
Marek Polacek 022bd4c2d5 * gcc.dg/pr57980.c: Use vector of two elements, not just one.
From-SVN: r201686
2013-08-13 13:23:55 +00:00
Jan Hubicka 09ce36608d cgraph.c (cgraph_turn_edge_to_speculative): Return newly introduced edge; fix typo in sanity check.
* cgraph.c (cgraph_turn_edge_to_speculative): Return newly
	introduced edge; fix typo in sanity check.
	(cgraph_resolve_speculation): Export; improve diagnostic.
	(cgraph_redirect_edge_call_stmt_to_callee): Better diagnostic; cancel
	speculation at type mismatch.
	* cgraph.h (cgraph_turn_edge_to_speculative): Update.
	(cgraph_resolve_speculation): Declare.
	(symtab_can_be_discarded): New function.
	* value-prof.c (gimple_ic_transform): Remove actual transform code.
	* ipa-inline-transform.c (speculation_removed): New global var.
	(clone_inlined_nodes): See if speculation can be removed.
	(inline_call): If speculations was removed, we growths may not match.
	* ipa-inline.c (can_inline_edge_p): Add DISREGARD_LIMITS parameter.
	(speculation_useful_p): New function.
	(resolve_noninline_speculation): New function.
	(inline_small_functions): Resolve useless speculations.
	* ipa-inline.h (speculation_useful_p): Declare
	* ipa.c (can_replace_by_local_alias): Simplify.
	(ipa_profile): Produce speculative calls in non-lto, too;
	add simple cost model; produce local aliases.

From-SVN: r201683
2013-08-13 12:21:16 +00:00
Eric Botcazou 537e035c48 utils2.c (build_atomic_load): Do a mere view-conversion to the original type before converting to the result type.
* gcc-interface/utils2.c (build_atomic_load): Do a mere view-conversion
	to the original type before converting to the result type.
	(build_atomic_store): First do a conversion to the original type before
	view-converting to the effective type, but deal with a padded type
	specially.

From-SVN: r201682
2013-08-13 10:26:40 +00:00
David Malcolm 3944d88d35 Example of converting global state to per-pass state.
gcc/testsuite

2013-08-13  David Malcolm  <dmalcolm@redhat.com>

	Example of converting global state to per-pass state.

	* gcc.dg/plugin/one_time_plugin.c (one_pass::execute): Convert
	global state "static int counter" to...
	(one_pass::counter): ...this instance data.

From-SVN: r201681
2013-08-13 00:45:27 +00:00
David Malcolm b338b23f88 one_time_plugin.c: (one_pass_gate): Convert to member function...
gcc/testsuite

2013-08-13  David Malcolm  <dmalcolm@redhat.com>

	* gcc.dg/plugin/one_time_plugin.c: (one_pass_gate): Convert
	to member function...
	(one_pass::gate): ...this.
	(one_pass_exec): Convert to member function...
	(one_pass::impl_execute): ...this.

From-SVN: r201680
2013-08-13 00:41:39 +00:00
David Malcolm f971dc24bf t-i386 (i386.o): Rename stray PIPELINE_H to PASS_MANAGER_H
2013-08-13  David Malcolm  <dmalcolm@redhat.com>

	* config/i386/t-i386 (i386.o): Rename stray PIPELINE_H to
	PASS_MANAGER_H

From-SVN: r201679
2013-08-13 00:29:39 +00:00
GCC Administrator c08b4f1a14 Daily bump.
From-SVN: r201678
2013-08-13 00:16:31 +00:00
Adam Butcher faca067013 * pt.c: Grammar fix in comments ("it's" to "its").
From-SVN: r201674
2013-08-13 00:26:18 +01:00
Adam Butcher d445d18d37 * MAINTAINERS (Write After Approval): Add myself.
From-SVN: r201673
2013-08-13 00:26:09 +01:00
Paolo Carlini 97524ab728 re PR c++/57416 (internal compiler error: in gimple_expand_cfg, at cfgexpand.c:4575)
2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57416
	* g++.dg/cpp0x/pr57416.C: New.

From-SVN: r201672
2013-08-12 22:54:13 +00:00
Paolo Carlini 2e507b9a99 i386.c (ix86_function_versions): Use error + inform.
2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* config/i386/i386.c (ix86_function_versions): Use error + inform.

/cp
2013-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* decl.c (warn_extern_redeclared_static, duplicate_decls,
	check_elaborated_type_specifier): Use error + inform.
	* friend.c (make_friend_class): Likewise.
	* semantics.c (finish_id_expression): Likewise.

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

	* g++.dg/cpp0x/constexpr-function2.C: Adjust for error -> inform
	changes.
	* g++.dg/cpp0x/constexpr-neg1.C: Likewise.
	* g++.dg/cpp0x/defaulted2.C: Likewise.
	* g++.dg/cpp0x/defaulted31.C: Likewise.
	* g++.dg/cpp0x/error6.C: Likewise.
	* g++.dg/cpp0x/gen-attrs-32.C: Likewise.
	* g++.dg/cpp0x/override2.C: Likewise.
	* g++.dg/cpp0x/parse1.C: Likewise.
	* g++.dg/cpp0x/scoped_enum.C: Likewise.
	* g++.dg/cpp0x/temp_default4.C: Likewise.
	* g++.dg/ext/attrib32.C: Likewise.
	* g++.dg/ext/gnu-inline-global-reject.C: Likewise.
	* g++.dg/ext/mv13.C: Likewise.
	* g++.dg/ext/mv7.C: Likewise.
	* g++.dg/ext/mv9.C: Likewise.
	* g++.dg/ext/pr57362.C: Likewise.
	* g++.dg/ext/typeof10.C: Likewise.
	* g++.dg/lookup/anon6.C: Likewise.
	* g++.dg/lookup/crash6.C: Likewise.
	* g++.dg/lookup/name-clash5.C: Likewise.
	* g++.dg/lookup/name-clash6.C: Likewise.
	* g++.dg/other/anon4.C: Likewise.
	* g++.dg/other/error15.C: Likewise.
	* g++.dg/other/error8.C: Likewise.
	* g++.dg/other/redecl2.C: Likewise.
	* g++.dg/parse/crash16.C: Likewise.
	* g++.dg/parse/crash21.C: Likewise.
	* g++.dg/parse/crash38.C: Likewise.
	* g++.dg/parse/redef2.C: Likewise.
	* g++.dg/parse/struct-as-enum1.C: Likewise.
	* g++.dg/template/crash39.C: Likewise.
	* g++.dg/template/redecl3.C: Likewise.
	* g++.dg/tls/diag-3.C: Likewise.
	* g++.dg/warn/Wredundant-decls-spec.C: Likewise.
	* g++.old-deja/g++.benjamin/typedef01.C: Likewise.
	* g++.old-deja/g++.benjamin/warn02.C: Likewise.
	* g++.old-deja/g++.brendan/crash16.C: Likewise.
	* g++.old-deja/g++.brendan/crash18.C: Likewise.
	* g++.old-deja/g++.brendan/err-msg4.C: Likewise.
	* g++.old-deja/g++.brendan/redecl1.C: Likewise.
	* g++.old-deja/g++.brendan/static3.C: Likewise.
	* g++.old-deja/g++.bugs/900127_02.C: Likewise.
	* g++.old-deja/g++.jason/binding.C: Likewise.
	* g++.old-deja/g++.jason/crash4.C: Likewise.
	* g++.old-deja/g++.jason/crash7.C: Likewise.
	* g++.old-deja/g++.jason/lineno.C: Likewise.
	* g++.old-deja/g++.jason/scoping7.C: Likewise.
	* g++.old-deja/g++.mike/misc3.C: Likewise.
	* g++.old-deja/g++.mike/net44.C: Likewise.
	* g++.old-deja/g++.mike/ns3.C: Likewise.
	* g++.old-deja/g++.ns/alias4.C: Likewise.
	* g++.old-deja/g++.ns/ns11.C: Likewise.
	* g++.old-deja/g++.other/crash23.C: Likewise.
	* g++.old-deja/g++.other/decl8.C: Likewise.
	* g++.old-deja/g++.other/linkage3.C: Likewise.
	* g++.old-deja/g++.other/typeck1.C: Likewise.
	* g++.old-deja/g++.other/typedef5.C: Likewise.
	* g++.old-deja/g++.pt/explicit34.C: Likewise.
	* g++.old-deja/g++.pt/friend36.C: Likewise.
	* obj-c++.dg/method-8.mm: Likewise.
	* obj-c++.dg/tls/diag-3.mm: Likewise.

From-SVN: r201671
2013-08-12 22:37:20 +00:00
Caroline Tice 82ca21b50b Updating my information in MAINTAINERS.
From-SVN: r201669
2013-08-12 13:25:29 -07:00
Uros Bizjak c97fd4b856 [multiple changes]
2013-08-12  Uros Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.md (floatunssi<mode>2 expand): Use MODEF mode
	iterator instead of X87MODEF.

2013-08-12  Perez Read  <netfirewall@gmail.com>

	PR target/58132
	* config/i386/i386.md (*movabs<mode>_1):  Add <ptrsize> PTR before
	operand 0 for intel asm alternative.
	(*movabs<mode>_2): Ditto for operand 1.

testsuite/ChangeLog:

2013-08-12  Perez Read  <netfirewall@gmail.com>

         PR target/58132
         * gcc.target/i386/movabs-1.c: New test.

From-SVN: r201668
2013-08-12 19:23:43 +02:00
James Greenhalgh f4f4204c89 [AArch64] Fix name of macros called in the vdup_lane Neon intrinsics
gcc/
	* config/aarch64/arm_none.h
	(vdup<bhsd>_lane_<su><8,16,32,64>): Fix macro call.

From-SVN: r201666
2013-08-12 15:59:34 +00:00
Nick Clifton 133b1a8e84 * config.gcc (m32r-linux): Allow for tmake_file not being empty.
From-SVN: r201664
2013-08-12 14:17:15 +00:00
Yuri Rumyantsev 15dd8b3a8c i386.md (floatunssi<mode>2 expand): Add new expand for QI/HImode operand to produce more effictive code for...
* config/i386/i386.md (floatunssi<mode>2 expand): Add new
        expand for QI/HImode operand to produce more effictive code for
        unsigned char(short) --> float(double) conversion.

From-SVN: r201663
2013-08-12 12:28:47 +00:00
Alexander Monakov 94109a6a3a * doc/invoke.texi: Mention that -ftls-model does not force the final model.
From-SVN: r201661
2013-08-12 13:40:28 +04:00
Marek Polacek 4e11510216 re PR tree-optimization/57980 (gcc 4.8.1 -foptimize-sibling-calls -O1 ICE in build_int_cst_wide, at tree.c:1210)
PR tree-optimization/57980

Co-Authored-By: Marc Glisse <marc.glisse@inria.fr>

From-SVN: r201660
2013-08-12 08:46:41 +00:00
Jan Hubicka 1f97e193cc Fix typo.
From-SVN: r201659
2013-08-12 07:16:19 +00:00
Thomas Koenig 0e533e5078 re PR fortran/56666 (Suppression flag for " DO loop at (1) will be executed zero times")
2013-08-12  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/56666
	* gfortran.h (gfc_option_t):  Add warn_zerotrip.
	* invoke.texi (-Wzerotrip):  Document option.
	* lang.opt (Wzerotrip):  Add.
	* options.c (gfc_init_options):  Initialize warn_zerotrip.
	(set_Wall): Add handling of warn_zerotrip.
	(gfc_handle_option):  Handle OPT_Wzerotrip.
	* resolve.c (gfc_resolve_iterator): Honor
	gfc_option.warn_zerotrip; update error message to show
	how to suppress the warning.

2013-08-12  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/56666
	* gfortran.dg/do_check_10.f90:  New test.
	* gfortran.dg/array_constructor_11.f90:  Add -Wzerotrip to dg-options.
	* gfortran.dg/array_constructor_18.f90:  Likewise.
	* gfortran.dg/array_constructor_22.f90:  Likewise.
	* gfortran.dg/coarray_15.f90:  Likewise.
	* gfortran.dg/do_1.f90:  Add -Wall to dg-options.
	* gfortran.dg/do_3.F90:  Add -Wzerotrip to dg-options.
	* gfortran.dg/do_check_5.f90:  Add -Wall to gd-options.

From-SVN: r201658
2013-08-12 05:50:03 +00:00
GCC Administrator 4fade8c2c3 Daily bump.
From-SVN: r201657
2013-08-12 00:17:00 +00:00
Paolo Carlini 0971a73391 re PR c++/53349 (Internal compiler error with constexpr and recursive data type)
2013-08-11  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/53349
	* g++.dg/cpp0x/constexpr-ice8.C: New.

From-SVN: r201654
2013-08-11 22:06:04 +00:00
GCC Administrator de0b2c131f Daily bump.
From-SVN: r201651
2013-08-11 00:16:31 +00:00
Jan Hubicka 748d71f394 Workaround binutils PR14342
Workaround binutils PR14342
	* tree-profile.c (init_ic_make_global_vars): Add LTO path.
	(gimple_init_edge_profiler): Likewise.
	(gimple_gen_ic_func_profiler): Likewise.

	* Makefile.in: Add _gcov_indirect_call_profiler_v2 symbol.
	* libgcov.c (L_gcov_indirect_call_profiler): Restore original API.
	(L_gcov_indirect_call_profiler_v2): New.

From-SVN: r201648
2013-08-10 20:52:06 +00:00
Jan Hubicka 5979aa5497 * cgraph.c (cgraph_create_edge_1): Clear speculative flag.
From-SVN: r201646
2013-08-10 09:59:56 +00:00
Xinliang David Li ad83025ea6 Implement -mmemcpy-strategy= and -mmemset-strategy= options
From-SVN: r201645
2013-08-10 03:48:01 +00:00
Carlos O'Donell 7d1d05602c MAINTAINERS (Write After Approval): Update email.
2013-08-09  Carlos O'Donell  <carlos@redhat.com>

	* MAINTAINERS (Write After Approval): Update email.

From-SVN: r201644
2013-08-10 00:54:26 +00:00
GCC Administrator 9ad2db2d4b Daily bump.
From-SVN: r201643
2013-08-10 00:16:57 +00:00
Jan Hubicka e59df5fdf7 * ipa-ref.c (ipa_clear_stmts_in_references): Clear lto_stmt_uid, too.
From-SVN: r201640
2013-08-09 23:07:52 +00:00
Jan Hubicka 634ab81954 cgraph.c (cgraph_resolve_speculation): Cut frequency to CGRAPH_FREQ_MAX.
* cgraph.c (cgraph_resolve_speculation): Cut frequency to
	CGRAPH_FREQ_MAX.
	(dump_cgraph_node): Dump profile-id.
	* cgraph.h (cgraph_indirect_call_info): Add common_target_id
	and common_target_probability.
	* lto-cgraph.c (lto_output_edge): Stream common targets.
	(lto_output_node): Stream profile ids.
	(input_node): Stream profile ids.
	(input_edge): Stream common targets.
	* lto-streamer-in.c (fixup_call_stmt_edges_1): Fix formatting.
	* ipa.c: Include value-prof.h
	(ipa_profile_generate_summary): Turn indirect call statement histograms
	into common targets.
	(ipa_profile): Turn common targets into speculative edges.

	* gcc.dg/tree-prof/crossmodule-indircall-1.c: New testcase.
	* gcc.dg/tree-prof/crossmodule-indircall-1a.c: New testcase.

From-SVN: r201639
2013-08-09 22:53:00 +00:00
Ian Lance Taylor 537a6f7b47 net: give C.getaddrinfo a hint that we only want SOCK_STREAM answers
This should be more efficient everywhere, and appears to be
required on Solaris.

Copied from master repository.

From-SVN: r201637
2013-08-09 20:51:16 +00:00
Yufeng Zhang cc277e8fd9 lower-subreg-1.c: Skip aarch64*-*-*.
gcc/testsuite/

	* gcc.dg/lower-subreg-1.c: Skip aarch64*-*-*.

From-SVN: r201636
2013-08-09 20:48:00 +00:00
Janus Weil 11e5274a4b gfortran.h (gfc_get_code): Modified prototype.
2013-08-09  Janus Weil  <janus@gcc.gnu.org>

	* gfortran.h (gfc_get_code): Modified prototype.
	* class.c (finalize_component, finalization_scalarizer,
	finalization_get_offset, finalizer_insert_packed_call,
	generate_finalization_wrapper, gfc_find_derived_vtab,
	gfc_find_intrinsic_vtab): Use 'gfc_get_code'.
	* io.c (match_io_iterator, match_io_element, terminate_io, get_io_list,
	gfc_match_inquire): Call 'gfc_get_code' with argument.
	* match.c (match_simple_forall, gfc_match_forall, gfc_match_goto,
	gfc_match_nullify, gfc_match_call, match_simple_where, gfc_match_where):
	Ditto.
	* parse.c (new_level): Ditto.
	(add_statement): Use XCNEW.
	* resolve.c (resolve_entries, resolve_allocate_expr,
	resolve_select_type, build_assignment, build_init_assign): Call
	'gfc_get_code' with argument.
	* st.c (gfc_get_code): Add argument 'op'.
	* trans-expr.c (gfc_trans_class_array_init_assign): Call 'gfc_get_code'
	with argument.
	* trans-stmt.c (gfc_trans_allocate): Ditto.

From-SVN: r201635
2013-08-09 21:26:07 +02:00
Jan Hubicka 2fa3d31bd6 cgraph.h (cgraph_node): Add profile_id.
* cgraph.h (cgraph_node): Add profile_id.
	* value-prof.c (cgraph_node_map): Turn into pointer_map.
	(init_node_map): Rewrite to handle hashes increas of incremental
	IDs.
	(del_node_map): Update.
	(find_func_by_funcdef_no): Replace by ...
	(find_func_by_profile_id): ... this one.
	(gimple_ic_transform): Do not remove useful histograms when
	speculation is not done; dump info when indirect call removal
	can happen at LTO.
	* value-prof.h (find_func_by_profile_id, gimple_ic): Declare.
	* gcov-io.h (__gcov_indirect_call_profiler): Replace by ...
	(__gcov_indirect_call_profiler_v2): .. this one.
	* profile.h (init_node_map): Update.
	* coverage.c (coverage_compute_profile_id): New function.
	* coverage.h (coverage_compute_profile_id): Declare.
	* tree-profile.c (init_ic_make_global_vars): Make
	__gcov_indirect_call_callee and  __gcov_indirect_call_counters global.
	(gimple_init_edge_profiler): Update prototype of
	__gcov_indirect_call_profiler.
	(gimple_gen_ic_func_profiler): Simplify.
	(tree_profiling): Use init_node_map

From-SVN: r201634
2013-08-09 18:23:23 +00:00
Janus Weil 36849c21cc re PR fortran/58058 (Memory leak with transfer function)
2013-08-09  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/58058
	* trans-intrinsic.c (gfc_conv_intrinsic_transfer): Free the temporary
	string, if necessary.

2013-08-09  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/58058
	* gfortran.dg/transfer_intrinsic_6.f90: New.

From-SVN: r201633
2013-08-09 18:57:58 +02:00
Jan Hubicka 042ae7d242 cgraphbuild.c (cgraph_rebuild_references): Rebuild only non-speculative refs.
* cgraphbuild.c (cgraph_rebuild_references): Rebuild only non-speculative
	refs.
	* cgraph.c (cgraph_update_edge_in_call_site_hash): New function.
	(cgraph_add_edge_to_call_site_hash): Deal with speculative calls.
	(cgraph_set_call_stmt): Likewise.
	(cgraph_create_edge_1): Fix release checking compilatoin;
	clear lto_stmt_uid.
	(cgraph_free_edge): Free indirect info.
	(cgraph_turn_edge_to_speculative): New function.
	(cgraph_speculative_call_info): New function.
	(cgraph_make_edge_direct): Return direct edge; handle speculation.
	(cgraph_redirect_edge_call_stmt_to_callee): Expand speculative
	edges.
	(dump_cgraph_node): Dump speculation.
	(verify_edge_count_and_frequency): Accept speculative edges.
	(verify_edge_corresponds_to_fndecl): Handle partitioned cgraph.
	(verify_cgraph_node): Handle speculation.
	* cgraph.h (cgraph_edge): Add SPECULATIVE flag.
	(cgraph_set_call_stmt): Update prototype.
	(cgraph_make_edge_direct): Update prototype.
	(cgraph_speculative_call_info): Declare.
	* ipa-cp.c (ipcp_discover_new_direct_edges): Be ready for edge
	to change; update call of ipa_find_references.
	* ipa-ref.c (ipa_record_reference): Fix return value; clear
	lto_stmt_uid and speculative flags.
	(ipa_dump_references): Dump speculation.
	(ipa_clone_references): Clone speculative flag.
	(ipa_clone_referring): Likewise.
	(ipa_clone_ref): New function.
	(ipa_find_reference): Look into lto_stmt_uids
	(ipa_clear_stmts_in_references): Do not clear speculative calls.
	* ipa-ref.h (ipa_ref): Add lto_stmt_uid and speculative flags.
	(ipa_find_reference): Update declaration.
	(ipa_clone_ref): Declare.
	* lto-cgraph.c (lto_output_edge): Make lto_stmt_uids start from 0;
	stream speculative flag.
	(lto_output_ref): Stream statements uids and speculation.
	(input_ref): Likewise.
	(input_edge): Stream speuclation.
	* cgraphclones.c (cgraph_clone_edge): Clone speculation.
	(cgraph_set_call_stmt_including_clones): Handle speculation.
	* ipa-inline.c (heap_edge_removal_hook): New function.
	(inline_small_functions): Register it.
	* lto-streamer-in.c (fixup_call_stmt_edges_1): Bounds checking;
	also initialize refs.
	* ipa-prop.c (ipa_make_edge_direct_to_target): Be ready for
	edge to change.
	(try_make_edge_direct_simple_call): Likewise.
	(try_make_edge_direct_simple_call): Likewise.
	(update_indirect_edges_after_inlining): Likewise.
	(remove_described_reference): Look proper lto_stmt_uid.
	(propagate_controlled_uses): Likewise.
	(propagate_controlled_uses): Liekwise.
	* tree-inline.c (copy_bb): Copy speculative edges.
	(redirect_all_calls): New function.
	(copy_cfg_body): Do redirection after loop info
	is updated.
	(delete_unreachable_blocks_update_callgraph): Updadte
	speculation.

From-SVN: r201632
2013-08-09 15:23:19 +00:00
Paolo Carlini 6efa6002d5 revert: re PR c++/46206 (using typedef-name error with typedef name hiding struct name)
/cp
2013-08-09  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert:
	2013-08-07  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/46206
	* name-lookup.c (lookup_name_real_1): Handle iter->type before
	iter->value.

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

	Revert:
	2013-08-07  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/46206
	* g++.dg/lookup/typedef2.C: New.

From-SVN: r201629
2013-08-09 12:04:19 +00:00
Jan Hubicka aa1e10cca1 lto-streamer-out.c (output_function): Renumber PHIs.
* lto-streamer-out.c (output_function): Renumber PHIs.
	* lto-streamer-in.c (input_function): Likewise.

From-SVN: r201627
2013-08-09 11:44:27 +00:00
Arnaud Charlet 65a372f494 * c-ada-spec.c (print_ada_declaration): Prevent accessing null asm name
From-SVN: r201625
2013-08-09 10:51:54 +00:00
James Greenhalgh 66adb8eb44 [AArch64] Fixup the vget_lane RTL patterns and intrinsics
gcc/
	* config/aarch64/aarch64-simd-builtins.def (get_lane_signed): Remove.
	(get_lane_unsigned): Likewise.
	(dup_lane_scalar): Likewise.
	(get_lane): enable for VALL.
	* config/aarch64/aarch64-simd.md
	(aarch64_dup_lane_scalar<mode>): Remove.
	(aarch64_get_lane_signed<mode>): Likewise.
	(aarch64_get_lane_unsigned<mode>): Likewise.
	(aarch64_get_lane_extend<GPI:mode><VDQQH:mode>): New.
	(aarch64_get_lane_zero_extendsi<mode>): Likewise.
	(aarch64_get_lane<mode>): Enable for all vector modes.
	(aarch64_get_lanedi): Remove misleading constraints.
	* config/aarch64/arm_neon.h
	(__aarch64_vget_lane_any): Define.
	(__aarch64_vget<q>_lane_<fpsu><8,16,32,64>): Likewise.
	(vget<q>_lane_<fpsu><8,16,32,64>): Use __aarch64_vget_lane macros.
	(vdup<bhsd>_lane_<su><8,16,32,64>): Likewise.
	* config/aarch64/iterators.md (VDQQH): New.
	(VDQQHS): Likewise.
	(vwcore): Likewise.

gcc/testsuite/
	* gcc.target/aarch64/scalar_intrinsics.c: Update expected
	output of vdup intrinsics.

From-SVN: r201624
2013-08-09 09:28:51 +00:00
Eric Botcazou 23a6cb7838 Fix typo
From-SVN: r201623
2013-08-09 09:22:59 +00:00
Eric Botcazou 1f65ae7afe configure.ac: Add GAS check for LEON instructions on SPARC.
* configure.ac: Add GAS check for LEON instructions on SPARC.
	* configure: Regenerate.
	* config.in: Likewise.
	* config.gcc (with_cpu): Remove sparc-leon*-* and deal with LEON in the
	sparc*-*-* block.
	* config/sparc/sparc.opt (LEON, LEON3): New masks.
	* config/sparc/sparc.h (ASM_CPU32_DEFAULT_SPEC): Set to AS_LEON_FLAG
	for LEON or LEON3.
	(ASM_CPU_SPEC): Pass AS_LEON_FLAG if -mcpu=leon or -mcpu=leon3.
	(AS_LEON_FLAG): New macro.
	* config/sparc/sparc.c (sparc_option_override): Set MASK_LEON for leon
	and MASK_LEON3 for leon3 and unset them if HAVE_AS_LEON is not defined.
	Deal with LEON and LEON3 for the memory model.
	* config/sparc/sync.m (atomic_compare_and_swap<mode>): Enable for LEON3
	(atomic_compare_and_swap<mode>_1): Likewise.
	(*atomic_compare_and_swap<mode>_1): Likewise.

From-SVN: r201622
2013-08-09 09:13:32 +00:00
Tim Shen 6646d624d0 regex_constants.h: Change syntax_option_type to enum type.
2013-08-09  Tim Shen  <timshen91@gmail.com>

	* include/bits/regex_constants.h: Change syntax_option_type to enum
	type.

From-SVN: r201621
2013-08-09 07:53:28 +00:00
Uros Bizjak 03b0ee0aba ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
	* testsuite/ChangeLog: Ditto.

From-SVN: r201619
2013-08-09 08:49:23 +02:00