Commit Graph

100291 Commits

Author SHA1 Message Date
Uros Bizjak 8bf85f21b3 i386.c (ix86_fn_abi_va_list): Make static.
* config/i386/i386.c (ix86_fn_abi_va_list): Make static.
	(ix86_canonical_va_list_type): Make static.  Add declaration.
	(ix86_enum_va_list): Make static.  Reindent.
	* config/i386/i386-protos.h (ix86_fn_abi_va_list): Remove declaration.
	(ix86_canonical_va_list_type): Ditto.
	(ix86_enum_va_list): Ditto.

From-SVN: r159968
2010-05-28 14:59:32 +02:00
Richard Guenther b56119876b lto-wrapper.c (run_gcc): With -save-temps generate a user-visible ltrans filename.
2010-05-28  Richard Guenther  <rguenther@suse.de>

	* lto-wrapper.c (run_gcc): With -save-temps generate a
	user-visible ltrans filename.  Fixup ltrans unit numbering.

	lto/
	* lto.c (prefix_name_with_star): Removed.
	(strip_extension): Likewise.
	(get_filename_for_set): Likewise.
	(lto_write_ltrans_list): Fold into ...
	(lto_wpa_write_files): ... this.  Name LTRANS units
	by suffixing the ltrans output list filename.
	(do_whole_program_analysis): Adjust.

From-SVN: r159967
2010-05-28 12:48:54 +00:00
Kai Tietz d4048208a4 c-common.c (c_common_nodes_and_builtins): Replace use of TARGET_ENUM_VA_LIST by target hook enum_va_list.
2010-05-28  Kai Tietz  <kai.tietz@onevision.com>

        * c-common.c (c_common_nodes_and_builtins): Replace use
        of TARGET_ENUM_VA_LIST by target hook enum_va_list.
        * config/i386/i386.c (TARGET_ENUM_VA_LIST_P): Hook
        to ix86_enum_va_list.
        * config/i386/i386.h (TARGET_ENUM_VA_LIST): Removed.
        * doc/tm.texi (TARGET_ENUM_VA_LIST): Removed.
        (TARGET_ENUM_VA_LIST_P): Add hook description.
        * target-def.h (TARGET_ENUM_VA_LIST_P): Added.
        * target.h (gcc_target): Add enum_va_list hook.

From-SVN: r159966
2010-05-28 13:58:35 +02:00
Kai Tietz 40dcd88bb9 re PR bootstrap/44299 (Bootstrap broken for cygwin and mingw targets)
2010-05-28  Kai Tietz  <kai.tietz@onevision.com>

        PR bootstrap/44299
        * config/i386/t-cygming: Adjust header dependencies for winnt-cxx.c.
        * config/i386/winnt-cxx.c (IN_GCC_FRONTEND): Remove undefine.
        * config/i386/winnt.c (IN_GCC_FRONTEND): Likewise.

From-SVN: r159965
2010-05-28 13:19:41 +02:00
Alan Modra 1cb980a29c re PR target/44266 (stack frame lacks parameter save area)
PR target/44266
	* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Use
	emit_library_call machinery to set up __tls_get_addr calls.

From-SVN: r159963
2010-05-28 18:27:16 +09:30
Andreas Krebbel b247e88a78 s390.md (movqi): Fix typo ('*' -> '#').
2010-05-28  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.md (movqi): Fix typo ('*' -> '#').

From-SVN: r159960
2010-05-28 07:39:10 +00:00
GCC Administrator 6d6da14164 Daily bump.
From-SVN: r159959
2010-05-28 00:17:21 +00:00
Dodji Seketeli ec4be2f46d Revert "Fix PR c++/44188"
gcc/ChangeLog:
	revert fix for PR c++/44188
	* c-common.c (is_typedef_decl): Revert the moving of  this
	definition ...
	* tree.c (is_typedef_decl): ... here.
	(typdef_variant_p): Revert the moving of this  definition
	here from gcc/cp/tree.c.
	* c-common.h (is_typedef_decl): Revert the moving of this
	declaration ...
	* tree.h (is_typedef_decl): ... here.
	(typedef_variant_p): Revert the moving of this  declaration here
	from gcc/cp/cp-tree.h
	* dwarf2out.c (is_naming_typedef_decl): Revert this new function.
	(gen_tagged_type_die): Revert the splitting out of ...
	(gen_type_die_with_usage): ... this function. Revert the anonymous
	tagged type handling.
	(gen_typedef_die): Revert emitting DW_TAG_typedef  for
	typedefs naming anonymous tagged types.

gcc/cp/ChangeLog:
	Revert fix of PR c++/44188
	* cp-tree.h (typedef_variant_p): Revert moving this declaration to
	gcc/tree.h.
	* tree.c (typedef_variant_p): Revert moving this definition to
	gcc/tree.c.
	* decl.c (grokdeclarator): Revert naming typedef handling.

gcc/testsuite/ChangeLog:
	Revert fix for PR c++/44188
	* g++.dg/debug/dwarf2/typedef3.C: Revert new test.

From-SVN: r159955
2010-05-28 02:03:19 +02:00
Segher Boessenkool 3fe7b63c52 rs6000-modes.def (PSImode): Delete.
2010-05-26  Segher Boessenkool  <segher@kernel.crashing.org>

        * config/rs6000/rs6000-modes.def (PSImode): Delete.

From-SVN: r159954
2010-05-28 01:14:05 +02:00
Segher Boessenkool f6b5d6954d constraints.md ("z" constraint): Change to CA_REGS.
2010-05-28  Segher Boessenkool  <segher@kernel.crashing.org>

        * config/rs6000/constraints.md ("z" constraint): Change to CA_REGS.
        * config/rs6000/predicates.md: Change XER_REGNO_P to CA_REGNO_P
        throughout.
        * config/rs6000/rs6000.c (rs6000_reg_names, alt_reg_names): Change
        "xer" to "ca".
        Change XER_REGNO_P to CA_REGNO_P, XER_REGNO to CA_REGNO, and
        XER_REGS to CA_REGS throughout.
        * config/rs6000/rs6000.h: Same.
        (ADDITIONAL_REGISTER_NAMES): Add "xer".
        * config/rs6000/rs6000.md: Change XER_REGNO to CA_REGNO.  Document
        that mode_iterator "P" is the size for arithmetic carries as well.
        * doc/md.texi (rs6000 section, "z" constraint): Fix documentation.

From-SVN: r159953
2010-05-28 01:06:31 +02:00
Jakub Jelinek 47027bf398 re PR bootstrap/44255 (gcc-4.6-20100522 bootstrap comparison failure on sparc64 and arm)
PR bootstrap/44255
	* combine.c (struct rtx_subst_pair): Define unconditionally.
	(propagate_for_debug_subst): Likewise.  If not AUTO_INC_DEC,
	copy_rtx pair->to instead of cleanup_auto_inc_dec it.
	Call make_compound_operation on pair->to.
	(propagate_for_debug): Don't call make_compound_operation here.
	Always use simplify_replace_fn_rtx.

From-SVN: r159952
2010-05-28 00:08:41 +02:00
Sterling Augustine 1b408ba139 invoke.texi (xtensa options): Add -mforce-no-pic.
2010-05-27 Sterling Augustine <sterling@tensilica.com>

        * doc/invoke.texi (xtensa options): Add -mforce-no-pic.
        * config/xtensa/xtensa.c (override_options): Check
          TARGET_FORCE_NO_PIC and set flag_pic.
        * config/xtensa/xtensa.opt: Document -mforce-no-pic

From-SVN: r159950
2010-05-27 21:10:54 +00:00
Kai Tietz 0bc25dd001 re PR bootstrap/44299 (Bootstrap broken for cygwin and mingw targets)
2010-05-27  Kai Tietz  <kai.tietz@onevision.com>

        PR bootstrap/44299
        * config/i386/winnt.c (IN_GCC_FRONTEND): Undefine.
        * config/i386/winnt-cxx.c (IN_GCC_FRONTEND): Likewise.

From-SVN: r159949
2010-05-27 22:40:48 +02:00
Joseph Myers 1da2ed5f19 diagnostic-core.h: New.
* diagnostic-core.h: New.  Contents moved from diagnostic.h and
	toplev.h.
	* diagnostic.c: Don't include toplev.h.
	(progname): Define.  Moved from toplev.c.
	(seen_error): New function.
	* diagnostic.h: Include diagnostic-core.h.
	(diagnostic_t, emit_diagnostic): Don't declare here.
	* toplev.c (progname): Move to toplev.c.
	(emit_debug_global_declarations, compile_file, finalize,
	do_compile, toplev_main): Use seen_error.
	* toplev.h: Include diagnostic-core.h.
	(trim_filename, GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG,
	internal_error, warning, warning_at, error, error_n, error_at,
	fatal_error, pedwarn, permerror, sorry, inform, inform_n,
	verbatim, fnotice, progname): Move to diagnostic-core.h.
	* builtins.c: Include diagnostic-core.h instead of diagnostic.h.
	(expand_builtin_expect): Use seen_error.
	* c-decl.c: Include diagnostic-core.h instead of diagnostic.h.
	(c_make_fname_decl, c_write_global_declarations): Use seen_error.
	* c-format.c: Include diagnostic-core.h instead of diagnostic.h.
	* c-gimplify.c: Include diagnostic-core.h instead of diagnostic.h.
	* c-lang.c: Include diagnostic-core.h instead of diagnostic.h.
	* c-lex.c (c_lex_with_flags, interpret_float): Don't increment
	errorcount for errors.
	* c-opts.c (c_common_finish): Use seen_error.
	* cgraph.c: Include diagnostic-core.h instead of diagnostic.h.
	* cgraphunit.c (verify_cgraph_node, verify_cgraph,
	cgraph_output_pending_asms, cgraph_optimize): Use seen_error.
	* coverage.c: Include diagnostic-core.h instead of diagnostic.h.
	(get_coverage_counts): Use seen_error.
	* dwarf2out.c (dwarf2out_finish): Use seen_error.
	* gimplify.c (gimplify_var_or_parm_decl, gimple_push_cleanup,
	gimplify_body): Use seen_error.
	* ipa-inline.c (cgraph_early_inlining): Use seen_error.
	* ipa-pure-const.c (gate_pure_const): Use seen_error.
	* ipa-reference.c (gate_reference): Use seen_error.
	* jump.c: Include diagnostic-core.h instead of diagnostic.h.
	* lambda-code.c: Include diagnostic-core.h instead of
	diagnostic.h.
	* lto-cgraph.c: Include diagnostic-core.h instead of diagnostic.h.
	* lto-compress.c: Include diagnostic-core.h instead of
	diagnostic.h.
	* lto-section-in.c: Include diagnostic-core.h instead of
	diagnostic.h.
	* lto-streamer-out.c: Include diagnostic-core.h instead of
	diagnostic.h.
	* lto-streamer.c: Include diagnostic-core.h instead of
	diagnostic.h.
	(gate_lto_out): Use seen_error.
	* matrix-reorg.c: Include diagnostic-core.h instead of
	diagnostic.h.
	* omega.c: Include diagnostic-core.h instead of diagnostic.h.
	* omp-low.c: Include diagnostic-core.h instead of diagnostic.h.
	(gate_expand_omp, lower_omp_1): Use seen_error.
	* passes.c: Include diagnostic-core.h instead of diagnostic.h.
	(rest_of_decl_compilation, rest_of_type_compilation,
	gate_rest_of_compilation, ipa_write_summaries): Use seen_error.
	* tree-cfg.c (label_to_block_fn): Use seen_error.
	* tree-inline.c (optimize_inline_calls): Use seen_error.
	* tree-mudflap.c (mudflap_finish_file): Use
	seen_error.
	* tree-optimize.c (gate_all_optimizations,
	gate_all_early_local_passes, gate_all_early_optimizations): Use
	seen_error.
	* tree-ssa-structalias.c (gate_ipa_pta): Use seen_error.
	* varpool.c: Include diagnostic-core.h instead of diagnostic.h.
	(varpool_remove_unreferenced_decls,
	varpool_assemble_pending_decls): Use seen_error.
	* Makefile.in (DIAGNOSTIC_CORE_H): Define.
	(TOPLEV_H, DIAGNOSTIC_H): Update.
	(c-decl.o, c-lang.o, c-format.o, lto-compress.o, lto-cgraph.o,
	lto-streamer-out.o, lto-section-in.o, lto-streamer.o,
	c-gimplify.o, omp-low.o, omega.o, diagnostic.o, passes.o,
	builtins.o, jump.o, cgraph.o, varpool.o, matrix-reorg.o,
	coverage.o, lambda-code.o): Update dependencies.

cp:
	* call.c: Include diagnostic-core.h instead of diagnostic.h.
	* cp-lang.c: Don't include diagnostic.h
	* name-lookup.c: Include diagnostic-core.h instead of
	diagnostic.h.
	(cp_emit_debug_info_for_using): Use seen_error.
	* optimize.c: Include diagnostic-core.h instead of diagnostic.h.
	* parser.c: Include diagnostic-core.h instead of diagnostic.h.
	* pt.c (iterative_hash_template_arg): Use seen_error.
	* repo.c: Include diagnostic-core.h instead of diagnostic.h.
	* typeck2.c: Include diagnostic-core.h instead of diagnostic.h.
	* Make-lang.in (cp/cp-lang.o, cp/typeck2.o, cp/call.o, cp/repo.o,
	cp/optimize.o, cp/parser.o, cp/name-lookup.o): Update
	dependencies.

lto:
	* lto.c: Include diagnostic-core.h instead of diagnostic.h.
	(read_cgraph_and_symbols, lto_main): Use seen_error.
	* Make-lang.in (lto/lto.o): Update dependencies.

objc:
	* objc-act.c: Include diagnostic-core.h instead of diagnostic.h.
	* Make-lang.in (objc/objc-act.o): Update dependencies.

From-SVN: r159947
2010-05-27 21:16:07 +01:00
Dodji Seketeli fe08ec1204 re PR c++/44188 (Fails to produce DW_AT_typedef for typedef of anonymous struct)
Fix PR c++/44188

gcc/ChangeLog:
	PR c++/44188
	* c-common.c (is_typedef_decl): Move this definition ...
	* tree.c (is_typedef_decl): ... here.
	(typdef_variant_p): Move definition here from gcc/cp/tree.c.
	* c-common.h (is_typedef_decl): Move this declaration ...
	* tree.h (is_typedef_decl): ... here.
	(typedef_variant_p): Move declaration here from gcc/cp/cp-tree.h
	* dwarf2out.c (is_naming_typedef_decl): New function.
	(gen_tagged_type_die): Split out of ...
	(gen_type_die_with_usage): ... this function. When an anonymous
	tagged type is named by a typedef, make sure a DW_TAG_typedef DIE
	is emitted for the typedef.
	(gen_typedef_die): Emit DW_TAG_typedef also for typedefs naming
	anonymous tagged types.

gcc/cp/ChangeLog:
	PR c++/44188
	* cp-tree.h (typedef_variant_p): Move this declaration to
	gcc/tree.h.
	* tree.c (typedef_variant_p): Move this definition to gcc/tree.c.
	* decl.c (grokdeclarator): Do not rename debug info of an
	anonymous tagged type named by a typedef.

gcc/testsuite/ChangeLog:
	PR c++/44188
	* g++.dg/debug/dwarf2/typedef3.C: New test.

From-SVN: r159943
2010-05-27 21:29:53 +02:00
Jason Merrill b042534cd8 print-tree.c (debug_vec_tree): New fn.
* print-tree.c (debug_vec_tree): New fn.
	(print_vec_tree): New fn.
	* tree.h: Declare them.
	* gdbinit.in (ptv): New command.

	* print-tree.c (print_node) [TREE_VEC]: Print elements normally.

	* gdbinit.in (pdd): New command.

From-SVN: r159941
2010-05-27 14:39:56 -04:00
Jason Merrill fb9c3174c9 revert: re PR libstdc++/42832 (Revisit std::function for aliasing issues and efficiency)
Revert:
	PR libstdc++/42832
	* include/std/functional (function<>::swap): Perform bytewise
	swap of _M_functor.
	* include/tr1/functional (function<>::swap): Likewise.

From-SVN: r159940
2010-05-27 14:39:46 -04:00
Jason Merrill 6ab4e49cf0 re PR c++/43555 (wrong address calculation of multidimensional variable-length array element)
PR c++/43555
	* decl.c (grokdeclarator) [cdk_pointer et al]: Force evaluation of
	anonymous VLA size.

From-SVN: r159939
2010-05-27 14:39:28 -04:00
Paolo Carlini 7ec62b2575 re PR libstdc++/40497 ([C++0x] troubles with std::next / std::prev declarations)
2010-05-27  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/40497
	* include/bits/cpp_type_traits.h (__is_iterator): Add.
	* include/bits/stl_iterator_base_funcs.h (next, prev): Use it.
	* testsuite/24_iterators/operations/40497.cc: New.

From-SVN: r159933
2010-05-27 17:37:11 +00:00
Jan Hubicka cdc029b948 ipa-inline.c (cgraph_estimate_size_after_inlining): Make inline.
* ipa-inline.c (cgraph_estimate_size_after_inlining): Make inline.
	(update_caller_keys): Return early if there are no callers;
	only update fibheap when decresing the key.
	(update_callee_keys): Avoid recursion.
	(decide_inlining_of_small_functions): When badness does not match;
	re-insert into fibheap.

From-SVN: r159931
2010-05-27 17:07:21 +00:00
Iain Sandoe 8da24d7bc7 re PR objc/44140 (ObjC lto/whopr fails)
2010-05-27  Iain Sandoe  <iains@gcc.gnu.org>

	PR ObjC/44140
	* objc.dg/torture/tls/thr-init-2.m: Skip for -flto, -fwhopr.
	* objc.dg/torture/tls/thr-init-3.m: Ditto.
	* objc.dg/torture/tls/thr-init.m: Ditto.
	* objc.dg/torture/trivial.m: Ditto.
	* obj-c++.dg/torture/tls/thr-init-1.mm: Ditto.
	* obj-c++.dg/torture/tls/thr-init-2.mm: Ditto.
	* obj-c++.dg/torture/tls/thr-init-3.mm: Ditto.
	* obj-c++.dg/torture/trivial.mm: Ditto.

From-SVN: r159929
2010-05-27 16:28:13 +00:00
Jason Merrill cc423e9d5f changelog correction
From-SVN: r159928
2010-05-27 12:27:19 -04:00
Steven Bosscher 7a3b488798 Makefile.in (ALL_CFLAGS): Add file-specific CFLAGS.
gcc/ChangeLog:
	* Makefile.in (ALL_CFLAGS): Add file-specific CFLAGS.
	(ALL_HOST_FRONTEND_OBJS): New, for all front-end specific objects.
	(ALL_HOST_BACKEND_OBJS): New, for all backend and target objects.
	(ALL_HOST_OBJS): Now a union of the above two.
	<section "Language makefile fragments">: Add -DIN_GCC_FRONTEND for
	all files in ALL_HOST_FRONTEND_OBJS.
	* system.h: Poison GCC_RTL_H if IN_GCC_FRONTEND is defined.
	* c-common.c: Pretend to be a backend file by undefining
	IN_GCC_FRONTEND (still need rtl.h here).

ada/ChangeLog:
	* gcc-interface/decl.c: Pretend to be a backend file by undefining
	IN_GCC_FRONTEND (still need rtl.h here).

java/ChangeLog:
	* buildings.c: Pretend to be a backend file by undefining
	IN_GCC_FRONTEND (still need rtl.h here).

From-SVN: r159927
2010-05-27 16:02:50 +00:00
Jan Hubicka 753d358dbc cgraph.h (struct cgraph_node): Mark former_clone_of by GTY ((skip)).
* cgraph.h (struct cgraph_node): Mark former_clone_of by GTY ((skip)).
	* cgraphunit.c (clone_of_p): Compile only when checking is enabled.

From-SVN: r159925
2010-05-27 15:43:25 +00:00
Jack Howarth 44491ebd8f 20100302_0.C: Skip on darwin.
2010-05-27  Jack Howarth  <howarth@bromo.med.uc.edu>

	* g++.dg/lto/20100302_0.C: Skip on darwin.

From-SVN: r159924
2010-05-27 15:19:55 +00:00
Jan Hubicka 88302d548a sched-ebb.c: Rename struct deps to struct deps_desc.
* sched-ebb.c: Rename struct deps to struct deps_desc.
	* ddg.c: Likewise.
	* sel-sched-ir.c: Likewise.
	* sched-deps.c: Likewise.
	* sched-int.h: Likewise.
	* sched-rgn.c: Likewise.

From-SVN: r159923
2010-05-27 15:08:00 +00:00
Jon Beniston 9bb8145323 PR 43726 * config/lm32/lm32.h: Remove definition of GO_IF_MODE_DEPENDENT_ADDRESS.
From-SVN: r159922
2010-05-27 15:05:48 +00:00
Eric Botcazou 7951d88a0c re PR lto/44230 (Do not create need for multiple EH personalities)
PR lto/44230
	* dwarf2out.c (dwarf2out_begin_prologue): Fix nits in sorry message.
lto/
	* lto.h (lto_eh_personality): New prototype.
	* lto.c: Include debug.h.
	(first_personality_decl): New static variable.
	(lto_materialize_function): Set it to DECL_FUNCTION_PERSONALITY of the
	first function for which it is non-null.
	(lto_eh_personality_decl): New static variable.
	(lto_eh_personality): New function.
	* lto-lang.c (LANG_HOOKS_EH_PERSONALITY): Redefine to above function.
	* Make-lang.in (lto/lto.o): Add dependency on debug.h.

From-SVN: r159921
2010-05-27 14:11:35 +00:00
Richard Guenther fde9c428ca re PR tree-optimization/44284 (vectorization does not work for short variable)
2010-05-27  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/44284
	* tree-vect-stmts.c (vectorizable_assignment): Handle
	sign-changing conversions as simple copy.

	* gcc.dg/vect/vect-118.c: New testcase.
	* gcc.dg/vect/bb-slp-20.c: Adjust.
	* gcc.dg/vect/no-section-anchors-vect-36.c: Likewise.
	* gcc.dg/vect/slp-9.c: Likewise.
	* gcc.dg/vect/slp-reduc-4.c: Likewise.
	* gcc.dg/vect/vect-10.c: Likewise.
	* gcc.dg/vect/vect-109.c: Likewise.
	* gcc.dg/vect/vect-12.c: Likewise.
	* gcc.dg/vect/vect-36.c: Likewise.
	* gcc.dg/vect/vect-7.c: Likewise.
	* gcc.dg/vect/vect-iv-8.c: Likewise.
	* gcc.dg/vect/vect-multitypes-10.c: Likewise.
	* gcc.dg/vect/vect-multitypes-13.c: Likewise.
	* gcc.dg/vect/vect-multitypes-14.c: Likewise.
	* gcc.dg/vect/vect-multitypes-15.c: Likewise.
	* gcc.dg/vect/vect-multitypes-7.c: Likewise.
	* gcc.dg/vect/vect-multitypes-8.c: Likewise.
	* gcc.dg/vect/vect-multitypes-9.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-s16b.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-s8a.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-s8b.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-u16b.c: Likewise.
	* gcc.dg/vect/vect-strided-a-u32-mult.c: Likewise.
	* gcc.dg/vect/vect-strided-u32-mult.c: Likewise.
	* gcc.dg/vect/vect-widen-mult-s16.c: Likewise.
	* gcc.dg/vect/vect-widen-mult-s8.c: Likewise.
	* gcc.dg/vect/vect-widen-mult-sum.c: Likewise.
	* gcc.dg/vect/vect-widen-mult-u16.c: Likewise.

From-SVN: r159920
2010-05-27 13:23:45 +00:00
Maxim Kuvyrkov 3714764d10 gthr-posix.h (pthread_cancel): Don't declare if compiling against Bionic C library.
* gthr-posix.h (pthread_cancel): Don't declare if compiling against
	Bionic C library.
	(__gthread_active_p): Check for pthread_create if compiling against
	Bionic C library.

From-SVN: r159919
2010-05-27 12:08:51 +00:00
Maxim Kuvyrkov 51b9db927f Support compilation for Android platform. Reimplement -mandroid.
* config.gcc (*linux*): Include linux-android.h and linux-android.opt.
	(*android*): Set ANDROID_DEFAULT.
	(arm*-*-linux*): Include linux-android.h.
	(arm*-*-eabi*): Don't include previous -mandroid implementation.
	* config/arm/eabi.h: Remove, move Android-specific parts ...
	* config/linux-android.h: ... here.  New file.
	* config/arm/eabi.opt: Rename to ...
	* config/linux-android.opt: ... this.
	(mandroid): Allow -mno-android option.  Initialize based on
	ANDROID_DEFAULT.
	* config/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, CC1_SPEC, LIB_SPEC):
	Move logic to corresponding LINUX_TARGET_* macros.
	(TARGET_OS_CPP_BUILTINS): Define __ANDROID__, when appropriate.
	* config/linux-eabi.h (LINK_SPEC, CC1_SPEC, CC1PLUS_SPEC, LIB_SPEC,)
	(STARTFILE_SPEC, ENDFILE_SPEC): Define to choose between Linux and
	Android definitions.
	(LINUX_TARGET_OS_CPP_BUILTINS): Define __ANDROID__ if TARGET_ANDROID.
	* doc/invoke.texi (-mandroid, -tno-android-cc, -tno-android-ld):
	Document.

From-SVN: r159918
2010-05-27 12:06:58 +00:00
Maxim Kuvyrkov 74c7025321 Add support for Bionic C library
Add support for Bionic C library
	gcc/
	* config.gcc (LIBC_GLIBC, LIBC_BIONIC, LIBC_UCLIBC): New tm_define
	macro.
	(DEFAULT_LIBC): New tm_define macro set to one of LIBC_*.
	(bfin*-uclinux, moxie-*-uclinux*, m68k-*-uclinux*): Update.

	* config/linux.h (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC): Define.
	(LINUX_TARGET_OS_CPP_BUILTINS): Define __gnu_linux__ only for GLIBC.
	(CHOOSE_DYNAMIC_LINKER1, CHOOSE_DYNAMIC_LINKER): Make it easier
	to support multiple C libraries.  Handle Bionic.
	(BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,)
	(BIONIC_DYNAMIC_LINKER64): Define.
	(LINUX_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64):
	Update.
	(TARGET_HAS_SINCOS): Enable for Bionic.

	* config/linux.opt: Rewrite to handle more than 2 C libraries.  Make
	the last option specified on command line take effect.
	(linux_uclibc): Rename to linux_libc, initialize using DEFAULT_LIBC.
	(mbionic): New.
	(mglibc, muclibc): Update.

	* config/alpha/linux-elf.h, config/rs6000/linux64.h,
	* config/rs6000/sysv4.h (CHOOSE_DYNAMIC_LINKER): Update to use
	DEFAULT_LIBC.

	* doc/invoke.texi (-mglibc, -muclibc): Update.
	(-mbionic): Document.

	gcc/testsuite/
	* gcc.dg/glibc-uclibc-1.c, gcc.dg/glibc-uclibc-2.c: Remove, no longer
	necessary.

From-SVN: r159917
2010-05-27 11:54:48 +00:00
Ulrich Weigand 3ef0694cb1 c-common.h (c_register_addr_space): Add prototype.
* c-common.h (c_register_addr_space): Add prototype.
	(ADDR_SPACE_KEYWORD): Remove.
	* c-common.c (c_register_addr_space): New function.
	(c_addr_space_name): Reimplement.
	(c_common_reswords): Do not include TARGET_ADDR_SPACE_KEYWORDS.

	* config/spu/spu.h (TARGET_ADDR_SPACE_KEYWORDS): Remove.
	(REGISTER_TARGET_PRAGMAS): Call c_register_addr_space.

	* doc/tm.texi (Named Address Spaces): Mention c_register_addr_space.
	Remove TARGET_ADDR_SPACE_KEYWORDS.

From-SVN: r159916
2010-05-27 11:46:06 +00:00
Uros Bizjak ade526578e ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
	* testsuite/ChangeLog: Ditto.

From-SVN: r159915
2010-05-27 13:36:26 +02:00
Joseph Myers 447924ef3b input.c: New file.
* input.c: New file.
	* input.h (main_input_filename): Move declaration to toplev.h.
	* toplev.c (input_location, line_table): Move to input.c
	* toplev.h (main_input_filename): Move declaration from input.h.
	* tree.c (expand_location): Move to input.c.
	* Makefile.in (OBJS-common): Add input.o.
	(input.o): Add dependencies.

From-SVN: r159914
2010-05-27 12:33:27 +01:00
Richard Guenther 62116e601b lto-wrapper.c (maybe_unlink_file): Ignore unlink failure for non-existant files.
2010-05-27  Richard Guenther  <rguenther@suse.de>

	* lto-wrapper.c (maybe_unlink_file): Ignore unlink failure
	for non-existant files.
	(fork_execute): Mark args_name file as deleted.

From-SVN: r159913
2010-05-27 10:33:08 +00:00
Kai Tietz 64c3178544 re PR bootstrap/44287 (Failed to bootstrap)
gcc/cp/
2010-05-27  Kai Tietz  <kai.tietz@onevision.com>

        PR bootstrap/44287
        * rtti.c (emit_support_tinfos): Check for NULL_TREE.
        * class.c (layout_class_type): Likewise.
        * decl.c (finish_enum): Likewise.
        * mangle.c (write_builitin_type): Likewise.

gcc/
2010-05-27  Kai Tietz  <kai.tietz@onevision.com>

        PR bootstrp/44287
        * c-lex.c (narrowest_unsigned_type): Check for NULL_TREE.
        (narrow_signed_type): Likewise.

From-SVN: r159912
2010-05-27 10:13:58 +02:00
Jan Hubicka df72d556a5 materialize-1_0.c: New file.
* gcc.dg/lto/materialize-1_0.c: New file.
	* gcc.dg/lto/materialize-1_1.c: New file.

From-SVN: r159911
2010-05-27 08:01:10 +00:00
Jan Hubicka e466e2ceb9 cgraphunit.c (verify_cgraph_node): Do checking that DECL match edge only when checking is enabled...
* cgraphunit.c (verify_cgraph_node): Do checking that DECL match
	edge only when checking is enabled; check using former_clone_of;
	check inline clones too.
	(cgraph_materialize_clone): Record former_clone_of pointer.
	(cgraph_redirect_edge_call_stmt_to_callee): Assert that we are not
	combining redirections; dump args_to_skip bitmap
	(cgraph_materialize_all_clones): Do no redirection here.
	* ipa-inline.c (inline_transform): Do redirection here.
	* cgraph.h (struct cgraph_node): Add former_clone_of filed (enabled
	cheking only).

From-SVN: r159907
2010-05-27 02:07:01 +00:00
GCC Administrator fc7e91eb97 Daily bump.
From-SVN: r159906
2010-05-27 00:17:42 +00:00
Steven Bosscher e62d5d9f37 avr-c.c: Do not include regs.h.
* config/avr/avr-c.c: Do not include regs.h.
	Include cpplib.h for cpp_define and tree.h for c-common.h.
	* config/avr/avr-devices.c (avr_mcu_types): Fix initializer.
	* config/avr/t-avr: Fix dependencies for avr-c.o.

From-SVN: r159901
2010-05-26 22:45:08 +00:00
Steven Bosscher d477d1feda explow.c (set_stack_check_libfunc): Adjust to accept name as a string instead of SYMBOL_REF rtx.
gcc/ChangeLog:
	* explow.c (set_stack_check_libfunc): Adjust to accept name as a
	string instead of SYMBOL_REF rtx.
	* rtl.h (set_stack_check_libfunc): Move prototype from here...
	* libfuncs.h: ...to here.  Adjust for explow.c change.

ada/ChangeLog:
	* gcc-interface/trans.c: Do not include rtl.h, insclude libfuncs.h.
	(gigi): Adjust call to set_stack_check_libfunc.

From-SVN: r159900
2010-05-26 21:46:22 +00:00
Nathan Froyd 6484716cf6 java-tree.h (struct lang_decl_func): Change type of throws_list field to a VEC.
* java-tree.h (struct lang_decl_func): Change type of throws_list
	field to a VEC.
	* jcf-parse.c (HANDLE_EXCEPTIONS_ATTRIBUTE): Adjust for changed type
	of DECL_FUNCTION_THROWS.
	* class.c (make_method_value): Likewise.

From-SVN: r159899
2010-05-26 19:27:58 +00:00
Joseph Myers ab9b814d25 pretty-print.c: Don't include ggc.h.
* pretty-print.c: Don't include ggc.h.
	(identifier_to_locale_alloc, identifier_to_locale_free): Define.
	(identifier_to_locale): Use them for allocation.
	* pretty-print.h (identifier_to_locale_alloc,
	identifier_to_locale_free): Declare.
	* toplev.c (alloc_for_identifier_to_locale): New.
	(general_init): Set identifier_to_locale_alloc and
	identifier_to_locale_free.
	* Makefile.in (pretty-print.o): Update dependencies.

From-SVN: r159898
2010-05-26 19:55:51 +01:00
Kai Tietz bdd715238c Move cplusplus parts into cp/ChangeLog and remove them from gcc's.
From-SVN: r159897
2010-05-26 20:09:29 +02:00
Eric Botcazou c9549072bf gimple.c (gimple_types_compatible_p): Return 0 for aggregate and pointer types if they have different alignment or mode.
* gimple.c (gimple_types_compatible_p): Return 0 for aggregate and
	pointer types if they have different alignment or mode.

From-SVN: r159896
2010-05-26 17:57:30 +00:00
Sterling Augustine db94b0d859 MAINTAINERS (CPU Port Maintainers): Add myself for xtensa port.
2010-05-25  Sterling Augustine <sterling@tensilica.com>

        * MAINTAINERS (CPU Port Maintainers): Add myself for xtensa port.

From-SVN: r159894
2010-05-26 17:36:37 +00:00
Anatoly Sokolov bf44d79278 sparc.h (FUNCTION_VALUE, [...]): Remove macros.
* config/sparc/sparc.h (FUNCTION_VALUE, FUNCTION_OUTGOING_VALUE,
	LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
	* config/sparc/sparc-protos.h (function_value): Remove declaration.
	* config/sparc/sparc.c (sparc_function_value, sparc_libcall_value,
	sparc_function_value_regno_p): New functions.
	(TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
	TARGET_FUNCTION_VALUE_REGNO_P): Define.
	(function_value): Rename to...
	(sparc_function_value_1): ... this. Make static. Change 'incoming_p'
	argument to 'outgoing'.
	(function_arg_record_value, function_arg_union_value,
	function_arg_vector_value): Update comment.

From-SVN: r159890
2010-05-26 21:12:20 +04:00
Eric Botcazou 4ad2e1ec08 dwarf2out.c (struct dw_fde_struct): Reorder flags.
* dwarf2out.c (struct dw_fde_struct): Reorder flags.
	(fde_needed_for_eh_p): New predicate.
	(output_call_frame_info): Use it throughout to decide whether FDEs
	are needed for EH purpose.
	(dwarf2out_begin_prologue): Reorder assignments.

From-SVN: r159889
2010-05-26 16:55:35 +00:00
Sebastian Pop 4204425f00 Do not check the if-convertibility of statements that are not predicated.
2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>

	* tree-if-conv.c (if_convertible_gimple_assign_stmt_p): Do not
	special case loop->header.
	(is_predicated): New.
	(if_convertible_loop_p): Call it.

From-SVN: r159887
2010-05-26 16:47:08 +00:00