Updated translations for the gas and gprof tools.

	* po/es.po: Updated Esperanto translation.
	* po/fr.po: Updated French translation.
	* po/uk.po: Updated Ukrainian translation.
Move support code for linker script DEFINED to ldexp.c

This moves support code for DEFINED to ldexp.c where it is used,
losing the lang_ prefix on identifiers.  Two new functions are needed
to initialize and clean up to hash table, but other than that there
are no functional changes here.

	* ldexp.c (struct definedness_hash_entry, definedness_table)
	(definedness_newfunc, symbol_defined, update_definedness): Move
	and rename from..
	* ldlang.h (struct lang_definedness_hash_entry): ..here,..
	* ldlang.c (lang_definedness_table, lang_definedness_newfunc)
	(lang_symbol_defined, lang_update_definedness): ..and here.
	* ldexp.c (ldexp_init, ldexp_finish): New functions, extracted from..
	* ldlang.c (lang_init, lang_finish): ..here.
	* ldexp.h (ldexp_init, ldexp_finish): Declare.
	* ldlang.h (lang_symbol_defined, lang_update_definedness): Delete.
	* ldmain.c (main): Call ldexp_init and ldexp_finish.
Correct logic for "defined by object"

The old code missed testing bfd_link_hash_undefweak, and wrongly
excluded bfd_link_hash_common symbols.  It is also clearer to invert
the set of enum bfd_link_hash_type values tested.
bfd_link_hash_indirect and bfd_link_hash_warning will never appear
here.

	* ldexp.c (update_definedness): Correct logic setting by_object.
Don't PROVIDE over top of common symbols

This:
  int end[100000];
  int main(void) { end[99999] = 0; return 0; }
should not segfault.

ld/
	* ldexp.c (exp_fold_tree_1 <etree_provide>): Leave bfd_link_hash_common
	symbols alone.
ld/testsuite/
	* ld-elf/endsym.s, *ld-elf/endsym.d: New test.
Use a symbol flag bit to mark linker defined symbols

Trying to use the SEC_LINKER_CREATED section flag to determine whether
a symbol is linker defined fails to work on targets like alpha that
define special SEC_COMMON sections.  These might contain symbols that
originated in an object file.

include/
	* bfdlink.h (struct bfd_link_hash_entry): Comment non_ir_ref.  Add
	linker_def.
bfd/
	* elflink.c (_bfd_elf_define_linkage_sym): Set linker_def.
	* linker.c (_bfd_generic_link_add_one_symbol): Clear linker_def
	for CDEF, DEF, DEFW, COM.
ld/
	* ldexp.c (exp_fold_tree_1 <etree_provide>): Test linker_def.
ld/testsuite/
	* ld-powerpc/sdabase.s,
	* ld-powerpc/sdabase.t,
	* ld-powerpc/sdabase.d: New test.
	* ld-powerpc/sdabase2.t,
	* ld-powerpc/sdabase2.d: New test.
	* ld-powerpc/powerpc.exp: Run them.
Report an error for script multiply defined symbols

or maybe not just yet, but this is better than a FIXME.

	* ldexp.c (update_definedness): Return false if script symbol is
	redefining a strong symbol in an object.
	(exp_fold_tree_1 <etree_assign>): Set up for reporting a multiple
	definition error, but for now leave disabled.
Reformat the objdump.1 man output to avoid overlong lines.
This patch add support for cpu marvell-whitney.

         * gas/config/tc-arm.c (arm_cpus): Add core marvell-whitney.
Treat .eh_frame section before crtbeginT as normal input

Force the exception frame section from input files before the crtbeginT
file to be handled as an ordinary input section if we aren't creating
the exception frame header.  If we don't do this, we won't correctly
handle the special marker symbol in the exception frame section in the
crtbeginT file.

	PR gold/14675
	* ehframe.cc (Eh_frame::add_ehframe_input_section): Force the
	exception frame section from input files if it can't be
	optimized.
	(Eh_frame::add_ehframe_input_section<32, false>): Updated.
	(Eh_frame::add_ehframe_input_section<32, true>): Likewise.
	(Eh_frame::add_ehframe_input_section<64, false>): Likewise.
	(Eh_frame::add_ehframe_input_section<64, true>): Likewise.
	* ehframe.h (Eh_frame::add_ehframe_input_section): Add a
	bool parameter to indicate if the exception frame section
	can be optimized.
	* layout.cc (Layout::Layout): Initialize optimize_ehframe_ to
	!has_crtbeginT.
	(Layout::layout_eh_frame): Pass this->optimize_ehframe_ to
	Eh_frame::add_ehframe_input_section.
	(Layout::make_eh_frame_section): Set this->optimize_ehframe_
	to true when processing the crtbeginT file if it is on command
	line.
	(Layout::match_file_name (const char*, const char*)): New.
	(Layout::match_file_name(const Relobj*, const char*): Use it.
	* layout.h (Layout::Layout): Add has_crtbeginT.
	(Layout::match_file_name (const char*, const char*)): New.
	(Layout): Add an optimize_ehframe_ member.
	* main.cc (main): Pass command_line.has_crtbeginT() to layout.
	* options.cc: Include "layout.h".
	(Input_arguments::add_file): Set this->has_crtbeginT_ to true
	if there is a crtbeginT file.
	* options.h (Input_arguments::Input_arguments): Initialize
	has_crtbeginT_ to false.
	(Input_arguments::has_crtbeginT): New function.
	(Input_arguments::has_crtbeginT_): New bool member.
	(Command_line::has_crtbeginT): New function.