Pedro Alves [Fri, 25 Apr 2008 14:57:30 +0000 (14:57 +0000)]
* amd64-tdep.c (amd64_get_longjmp_target): New.
(amd64_init_abi): Register amd64_get_longjmp_target as
gdbarch_get_longjmp_target callback.
* i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.
Nick Clifton [Fri, 25 Apr 2008 14:52:23 +0000 (14:52 +0000)]
* po/vi.po: Updated Vietnamese translation.
Pedro Alves [Fri, 25 Apr 2008 14:50:10 +0000 (14:50 +0000)]
* breakpoint.h (enum bpstat_what_main_action): Delete
BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.
* breakpoint.c (clrs): Delete.
(bpstat_what): Update table.
* infrun.c (handle_inferior_event): Remove
BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.
gdbadmin [Fri, 25 Apr 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 25 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Vladimir Prus [Thu, 24 Apr 2008 13:28:06 +0000 (13:28 +0000)]
* mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
Adjust all prototypes using mi_cmd_args_ftype to use
mi_cmd_argv_ftype.
(struct mi_cmd): Remove the args_func field.
* mi/mi-cmds.c: Don't provide value for the args_func field.
* mi/mi-main.c (mi_execute_async_cli_command)
(mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
(mi_cmd_exec_step, mi_cmd_exec_step_instruction)
(mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
(mi_cmd_exec_continue, mi_cmd_exec_interrupt)
(mi_cmd_target_download): Adjust.
(mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
(mi_cmd_execute): Do not check for args_func.
(mi_execute_async_cli_command): Adjust.
* mi/mi-parse.c: Don't check for args_func.
Vladimir Prus [Thu, 24 Apr 2008 12:56:45 +0000 (12:56 +0000)]
* breakpoint.c (bpstat_check_location)
(bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
New, extracted from bpstat_stop_status.
(bpstat_stop_status): Use the above.
Vladimir Prus [Thu, 24 Apr 2008 12:09:49 +0000 (12:09 +0000)]
* mi/mi-main.c (last_async_command): Rename to current_token.
(previous_async_command): Remove.
(mi_cmd_gdb_exit): Adjust.
(mi_cmd_exec_interrupt): Don't dance with previous_async_command.
(mi_cmd_target_select): Adjust.
(mi_cmd_execute): Don't set previous_async_command. Free token
here even in async mode.
(mi_execute_async_cli_command): Adjust.
(mi_exec_async_cli_cmd_continuation): Adjust. Do not free the
token.
(mi_load_progress): Adjust.
Vladimir Prus [Thu, 24 Apr 2008 11:43:14 +0000 (11:43 +0000)]
* infcmd.c (step_1_continuation): Always disable longjmp
breakpoint if we're not going to do another step.
Vladimir Prus [Thu, 24 Apr 2008 11:13:44 +0000 (11:13 +0000)]
exec_cleanup murder.
* breakpoint.c (until_break_command_continuation): Add
the 'error' parameter. Directly delete the breakoint as
opposed to running cleanups.
(until_break_command): Install continuation only
after starting the target. Don't use exec cleanups,
use ordinary cleanups. Discard cleanups is successfully
started the target in async mode.
(make_cleanup_delete_breakpoint): Remove.
* breakpoint.h (make_cleanup_delete_breakpoint): Remove
declaration.
* defs.h (do_exec_cleanups, make_exec_cleanup): Remove
declarations.
(struct continations): Add the 'error' parameter to the
continuation_hook field.
(add_continuation, do_all_continuations)
(add_intermediate_continuation)
(do_all_intermediate_continuations): Add the 'error' parameter.
* exceptions.c (throw_exception): Don't call do_exec_cleanups.
* inf-loop.c (inferior_event_handler): Instead of calling
discard_all_continuations, use do_all_continuations with 1 as
'error' parameter. Pass 0 as 'error' parameter in existing uses
of discard_all_continuations.
* infcmd.c (step_1): Do not use exec cleanup. For async case, discard
cleanups.
(step_once): Install continuation only after resuming the target.
(step_1_continuation): Disable longjmp breakpoint on error.
(finish_command_continuation): Add the error parameter. Delete
the finish breakpoint directly, do not use cleanups.
(finish_command): Do not use exec_cleanups. Always setup
continuation. For sync case, immediately run them.
(attach_command_continuation): Add the error parameter.
* infrun.c (fetch_inferior_event): Do not use exec cleanups to
remove step_resume_breakpoint -- adjust delete it directly.
* interps.c (interp_set): Adjust call to do_all_continations.
* mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
do exec cleanups.
* mi/mi-main.c (mi_cmd_target_select): Do not do exec
cleanups.
(mi_cmd_execute): Do not use exec_cleanup.
(mi_execute_async_cli_command): Simplify the string concatenation
logic. Do no use exec cleanup.
(mi_exec_async_cli_cmd_continuation): New parameter error.
Free last_async_command.
* top.c (command_line_handler_continuation): New parameter error.
* utils.c (exec_cleanup_chain, make_exec_cleanup)
(do_exec_cleanups): Remove.
(add_continuation, do_all_continations)
(add_intermediate_continuation)
(do_all_intermediate_continuations): New parameter error.
Vladimir Prus [Thu, 24 Apr 2008 10:21:45 +0000 (10:21 +0000)]
* breakpoint.h (bp_location_p): New typedef.
Register a vector of bp_location_p.
* breakpoint.c (always_inserted_mode)
(show_always_inserted_mode): New.
(unlink_locations_from_global_list): Remove.
(update_global_location_list)
(update_global_location_list_nothrow): New.
(update_watchpoint): Don't free locations.
(should_insert_location): New.
(insert_bp_location): Use should_insert_location.
(insert_breakpoint_locations): Copied from
insert_breakpoints.
(insert_breakpoint): Use insert_breakpoint_locations.
(bpstat_stop_status): Call update_global_location_list
when disabling breakpoint.
(allocate_bp_location): Don't add to bp_location_chain.
(set_raw_breakpoint)
(create_longjmp_breakpoint, enable_longjmp_breakpoint)
(disable_longjmp_breakpoint, create_overlay_event_breakpoint)
(enable_overlay_breakpoints, disable_overlay_breakpoints)
(set_longjmp_resume_breakpoint)
(enable_watchpoints_after_interactive_call_stop)
(disable_watchpoints_before_interactive_call_start)
(create_internal_breakpoint)
(create_fork_vfork_event_catchpoint)
(create_exec_event_catchpoint, set_momentary_breakpoint)
(create_breakpoints, break_command_1, watch_command_1)
(create_exception_catchpoint)
(handle_gnu_v3_exceptions)
(disable_breakpoint, breakpoint_re_set_one)
(create_thread_event_breakpoint, create_solib_event_breakpoint)
(create_ada_exception_breakpoint): : Don't call check_duplicates.
Call update_global_location_list.
(delete_breakpoint): Don't remove locations and don't
try to reinsert them. Call update_global_location_list.
(update_breakpoint_locations): Likewise.
(restore_always_inserted_mode): New.
(update_breakpoints_after_exec): Temporary disable
always inserted mode.
* Makefile.in: Update dependencies.
* infrun.c (proceed): Remove breakpoints while stepping
over breakpoint.
(handle_inferior_event): Don't remove or insert
breakpoints.
* linux-fork.c (checkpoint_command): Remove breakpoints
before fork and insert after.
(linux_fork_context): Remove breakpoints before switch
and insert after.
* target.c (target_disconnect, target_detach): Remove
breakpoints from target.
Vladimir Prus [Thu, 24 Apr 2008 08:46:19 +0000 (08:46 +0000)]
* breakpoint.c (print_one_breakpoint_location): In MI
mode, report the location string the breakpoint was
originally created with.
Nick Clifton [Thu, 24 Apr 2008 08:20:55 +0000 (08:20 +0000)]
(oops) Add changelog entry for David Miller's SunPRO support patch which was
accidentally omitted yesterday.
Alan Modra [Thu, 24 Apr 2008 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 24 Apr 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Maxim Grigoriev [Wed, 23 Apr 2008 21:17:05 +0000 (21:17 +0000)]
2008-04-23 Maxim Grigoriev <maxim2405@gmail.com>
* Makefile.in (xtensa-tdep.o): Update dependencies.
* configure.tgt (xtensa*): Update dependencies.
* xtensa-tdep.c (arreg_number): Renamed from areg_number.
Local variable areg renamed to arreg.
(areg_number): New function.
(xtensa_pseudo_register_read, xtensa_pseudo_register_write)
(xtensa_extract_return_value, xtensa_store_return_value): areg_number
replaced by arreg_number.
(xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
(xtensa_alloc_frame_cache): Initialize cache->wd.ws.
(xtensa_scan_prologue): New function.
(xtensa_frame_cache): New local fp_regnum. Handle separately the case,
when ENTRY instraction hasn't been executed yet. Get the frame pointer
value based on prologue analysis. Fix the bugs preventing WS and
AR4-AR7/A11 registers from getting right values for intermediate frames,
whose registers have been already spilled.
(xtensa_frame_prev_register): Fix WS register value. Use are_number
and arreg_number appropriately.
(xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
svr4_ilp32_fetch_link_map_offsets.
Mike Frysinger [Wed, 23 Apr 2008 18:40:34 +0000 (18:40 +0000)]
2008-04-23 Mike Frysinger <vapier@gentoo.org>
* Makefile.am (OBJ_FORMAT_CFILES): Add config/obj-fdpicelf.c.
(OBJ_FORMAT_HFILES): Add config/obj-fdpicelf.h.
(obj-fdpicelf.o): Define.
* Makefile.in: Regenerate.
* configure.tgt: Set bfd_gas to yes when fmt is fdpicelf.
(bfin-*-*): Delete.
(bfin-*-linux-uclibc): New; set fmt to fdpicelf and em to linux.
(bfin-*-uclinux*): New; set fmt to elf and em to linux.
* config/obj-fdpicelf.c: New.
* config/obj-fdpicelf.h: Likewise.
* config/tc-bfin.c (bfin_flags, bfin_pic_flag): Set default based on
the OBJ_FDPIC_ELF define.
(OPTION_NOPIC): Define.
(md_longopts): Add mnopic and mno-fdpic.
(md_parse_option): Handle OPTION_NOPIC.
Ian Lance Taylor [Wed, 23 Apr 2008 17:40:19 +0000 (17:40 +0000)]
* object.cc (Sized_relobj::include_section_group): Check for
invalid section group.
Ian Lance Taylor [Wed, 23 Apr 2008 17:32:53 +0000 (17:32 +0000)]
* object.cc (make_elf_object): Correct test for 64-bit ELF file
header size.
Ian Lance Taylor [Wed, 23 Apr 2008 17:29:04 +0000 (17:29 +0000)]
* readsyms.cc (Read_symbols::do_read_symbols): Use get_view rather
than read for file header.
* archive.cc (Archive::include_member): Likewise.
H.J. Lu [Wed, 23 Apr 2008 16:11:47 +0000 (16:11 +0000)]
bfd/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
binutils/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
gas/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
gold/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
gprof/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
ld/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
opcodes/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
H.J. Lu [Wed, 23 Apr 2008 16:01:10 +0000 (16:01 +0000)]
2008-04-23 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/i386.exp: Run sse-noavx and x86-64-sse-noavx.
* gas/i386/sse-noavx.d: New.
* gas/i386/sse-noavx.s: Likewise.
* gas/i386/x86-64-sse-noavx.d: Likewise.
* gas/i386/x86-64-sse-noavx.s: Likewise.
H.J. Lu [Wed, 23 Apr 2008 14:34:05 +0000 (14:34 +0000)]
2008-04-23 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/sse2.s: Add tests for pmuludq, paddq and psubq.
* gas/i386/x86-64-simd.s: Likewise.
* gas/i386/sse2.d: Updated.
* gas/i386/x86-64-simd.d: Likewise.
* gas/i386/x86-64-simd-intel.d: Likewise.
* gas/i386/x86-64-simd-suffix.d: Likewise.
Nick Clifton [Wed, 23 Apr 2008 13:54:56 +0000 (13:54 +0000)]
* config/obj-elf.c (obj_elf_section_type): Add prototype
before obj_elf_section_word and add 'warn' arg.
(obj_elf_section_word): Add type pointer arg, and if no #SECTION
is matched, try checking for #SECTION_TYPE.
(obj_elf_section): Adjust for new args.
(obj_elf_type_name): New function.
(obj_elf_type): Call it, and accept STT_foo number strings
in .type statements as output by SunPRO compiler.
Andrew Stubbs [Wed, 23 Apr 2008 13:21:54 +0000 (13:21 +0000)]
2008-04-23 Andrew Stubbs <andrew.stubbs@st.com>
* printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
(printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.
Paolo Bonzini [Wed, 23 Apr 2008 12:21:50 +0000 (12:21 +0000)]
gdb:
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* acinclude.m4: Add override.m4.
* configure: Regenerate.
gdb/gdbserver:
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* acinclude.m4: Add override.m4.
* configure: Regenerate.
gdb/testsuite:
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Add override.m4.
* configure: Regenerate.
Paolo Bonzini [Wed, 23 Apr 2008 10:24:41 +0000 (10:24 +0000)]
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* confsubdir.m4: Remove.
* override.m4: Apply _AC_ARG_VALIDATE fix to all versions
but 2.62.
David S. Miller [Wed, 23 Apr 2008 07:49:33 +0000 (07:49 +0000)]
opcodes/
* sparc-opc.c (asi_table): Add UltraSPARC and Niagara
extended values.
(prefetch_table): Add missing values.
gas/
* config/tc-sparc.c (v9a_asr_table): Add missing
'stick' and 'stick_cmpr', and document ordering rules
of table.
(tc_gen_reloc): Accept BFD_RELOC_SPARC_PC22 and
BFD_RELOC_SPARC_PC10.
* doc/c-sparc.texi: New section on Sparc constants.
Add documentation for %stick and %stick_cmpr.
gas/testsuite/
* gas/sparc/pc2210.d: New file.
* gas/sparc/pc2210.d: Likewise.
* gas/sparc/sparc.exp: Run new %pc22/%pc10 relocation test.
gdbadmin [Wed, 23 Apr 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 23 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Tue, 22 Apr 2008 22:27:13 +0000 (22:27 +0000)]
gas/
2008-04-22 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (md_assemble): Don't check SSE instructions
if noavx is 0.
opcodes/
2008-04-22 H.J. Lu <hongjiu.lu@intel.com>
* i386-gen.c (opcode_modifiers): Add NoAVX.
* i386-opc.h (NoAVX): New.
(OldGcc): Updated.
(i386_opcode_modifier): Add noavx.
* i386-opc.tbl: Add NoAVX to SSE, SSE2, SSE3 and SSSE3
instructions which don't have AVX equivalent.
* i386-tbl.h: Regenerated.
Jan Kratochvil [Tue, 22 Apr 2008 22:23:16 +0000 (22:23 +0000)]
* ada-lang.c (get_selections): Variable PROMPT made non-const and
initialized with a trailing space now. Use PROMPT_ARG of
COMMAND_LINE_INPUT instead of printing it ourselves.
Joel Brobecker [Tue, 22 Apr 2008 20:29:07 +0000 (20:29 +0000)]
* NEWS: Document support for 64-bit core file.
Corinna Vinschen [Tue, 22 Apr 2008 11:03:42 +0000 (11:03 +0000)]
doc/ChangeLog:
--------------
* gdb.texinfo (Set SH Calling convention): New @item.
(Show SH Calling convention): Ditto.
ChangeLog:
----------
* NEWS: Add information on calling convention and new SH CLI options.
* sh-tdep.c (sh_cc_gcc): New static string.
(sh_cc_renesas): Ditto.
(sh_cc_enum): New static string array.
(sh_active_calling_convention): New static string pointer denoting
active user chosen ABI.
(sh_is_renesas_calling_convention): New function to return function
specific ABI, or user choice if necessary.
(sh_use_struct_convention): Rename first argument and turn around its
meaning. Check for renesas ABI and return accordingly.
(sh_use_struct_convention_nofpu): New function.
(sh_next_flt_argreg): Get function type as third parameter. Check
for renesas ABI and choose floating registers accordingly.
(sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
struct return slot accordingly.
(sh_push_dummy_call_nofpu): Ditto.
(sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
Evaluate ABI and give to sh_use_struct_convention_nofpu.
(sh_return_value_fpu): Evaluate ABI and give to
sh_use_struct_convention.
(show_sh_command): New function.
(set_sh_command): Ditto.
(_initialize_sh_tdep): Initialize `set/show sh calling-convention
CLI command.
* gdbarch.sh (return_value): Add func_type argument.
* gdbarch.c: Regenerate.
* gdbarch.h: Ditto.
* eval.c (evaluate_subexp_standard): Rename local variable value_type to
val_type so as not to collide with value_type function. Call
using_struct_return with additional function type argument.
* infcall.c (call_function_by_hand): Call using_struct_return and
gdbarch_return_value with additional function type argument.
* infcmd.c (print_return_value): Take addition func_type argument.
Call gdbarch_return_value with additional function type argument.
(finish_command_continuation): Call print_return_value with additional
function type argument.
(finish_command): Ditto.
* sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
additional function type argument.
* stack.c (return_command): Call using_struct_return and
gdbarch_return_value with additional function type argument.
* value.c (using_struct_return): Take additional function type argument.
* value.h (using_struct_return): Accommodate declaration.
* alpha-tdep.c (alpha_return_value): Add func_type argument.
* amd64-tdep.c (amd64_return_value): Ditto.
* arm-tdep.c (arm_return_value): Ditto.
* avr-tdep.c (avr_return_value): Ditto.
* cris-tdep.c (cris_return_value): Ditto.
* frv-tdep.c (frv_return_value): Ditto.
* h8300-tdep.c (h8300_return_value): Ditto.
(h8300h_return_value): Ditto.
* hppa-tdep.c (hppa32_return_value): Ditto.
(hppa64_return_value): Ditto.
* i386-tdep.c (i386_return_value): Ditto.
* ia64-tdep.c (ia64_return_value): Ditto.
* iq2000-tdep.c (iq2000_return_value): Ditto.
* m32c-tdep.c (m32c_return_value): Ditto.
* m32r-tdep.c (m32r_return_value): Ditto.
* m68hc11-tdep.c (m68hc11_return_value): Ditto.
* m68k-tdep.c (m68k_return_value): Ditto.
(m68k_svr4_return_value): Ditto.
* m88k-tdep.c (m88k_return_value): Ditto.
* mep-tdep.c (mep_return_value): Ditto.
* mips-tdep.c (mips_eabi_return_value): Ditto.
(mips_n32n64_return_value): Ditto.
(mips_o32_return_value): Ditto.
(mips_o64_return_value): Ditto.
* mn10300-tdep.c (mn10300_return_value): Ditto.
* mt-tdep.c (mt_return_value): Ditto.
* ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
* ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
(ppc_sysv_abi_broken_return_value): Ditto.
(ppc64_sysv_abi_return_value): Ditto.
* ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
(ppc_sysv_abi_broken_return_value): Ditto.
(ppc64_sysv_abi_return_value): Ditto.
* ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
* rs6000-tdep.c (rs6000_return_value): Ditto.
* s390-tdep.c (s390_return_value): Ditto.
* score-tdep.c (score_return_value): Ditto.
* sh-tdep.c (sh_return_value_nofpu): Ditto.
(sh_return_value_fpu): Ditto.
* sh64-tdep.c (sh64_return_value): Ditto.
* sparc-tdep.c (sparc32_return_value): Ditto.
* sparc64-tdep.c (sparc64_return_value): Ditto.
* spu-tdep.c (spu_return_value): Ditto.
* v850-tdep.c (v850_return_value): Ditto.
* vax-tdep.c (vax_return_value): Ditto.
* xstormy16-tdep.c (xstormy16_return_value): Ditto.
* xtensa-tdep.c (xtensa_return_value): Ditto.
* gdbtypes.h (struct type): Add calling_convention member.
* dwarf2read.c (read_subroutine_type): Add calling convention read
from DW_AT_calling_convention attribute to function type.
Markus Deuling [Tue, 22 Apr 2008 06:53:18 +0000 (06:53 +0000)]
* eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
multi_f77_subscript to support values from registers.
* valarith.c (value_subscripted_rvalue): Remove prototype and static.
* value.h (value_subscripted_rvalue): Add prototype.
* f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
Fix output.
* f-valprint.c (f_val_print): Likewise.
Markus Deuling [Tue, 22 Apr 2008 06:51:04 +0000 (06:51 +0000)]
* gdb.texinfo (Fortran Operators): Describe '%' operator.
Cary Coutant [Tue, 22 Apr 2008 00:12:23 +0000 (00:12 +0000)]
* archive.c (_bfd_write_archive_contents): Fix incorrect use of
ARFMAG.
Alan Modra [Tue, 22 Apr 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 22 Apr 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
DJ Delorie [Mon, 21 Apr 2008 22:30:17 +0000 (22:30 +0000)]
merge from gcc
Craig Silverstein [Mon, 21 Apr 2008 22:00:52 +0000 (22:00 +0000)]
* dwarf2read.c (zlib_decompress_section): Define abfd in the
!HAVE_ZLIB_H case.
Ulrich Weigand [Mon, 21 Apr 2008 20:31:22 +0000 (20:31 +0000)]
* linux-ppc-low.c (ppc_arch_setup): Reset ppc_hwcap after the
initial call to init_register_ppc64.
Nathan Sidwell [Mon, 21 Apr 2008 17:54:25 +0000 (17:54 +0000)]
bfd/
* elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Don't
set the value of undefined symbols in shared objects.
(_bfd_mips_vxworks_finish_dynamic_symbol): Clear value for
undefined symbols unless pointer equality is needed.
ld/testsuite/
* ld-vxworks/plt-mips1.s: New.
* ld-vxworks/plt-mips1.d: New.
Ulrich Weigand [Mon, 21 Apr 2008 14:55:50 +0000 (14:55 +0000)]
* configure.srv (powerpc64-*-linux*, powerpc-*-linux*): Merge into single
powerpc*-*-linux* case.
(s390-*-linux*, s390x-*-linux*): Merge into single s390*-*-linux* case.
Pedro Alves [Mon, 21 Apr 2008 14:25:16 +0000 (14:25 +0000)]
* symfile.c (syms_from_objfile): Don't warn if lowest loadable
section is not a code section.
gdbadmin [Mon, 21 Apr 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 21 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Eli Zaretskii [Sun, 20 Apr 2008 09:06:44 +0000 (09:06 +0000)]
* gdb.texinfo (Set Breaks): Mention that multiple location
breakpoints need line number info. Add index entries.
Craig Silverstein [Sun, 20 Apr 2008 00:03:25 +0000 (00:03 +0000)]
* NEWS: Add information on compressed debug sections.
* doc/gdb.texinfo (Requirements): Add an optional requirement
on zlib.
* doc/gdbint.texinfo (Debugging File Formats): Add new
subsection for Compressed DWARF 2.
gdbadmin [Sun, 20 Apr 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 20 Apr 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Ian Lance Taylor [Sat, 19 Apr 2008 20:15:56 +0000 (20:15 +0000)]
* version.cc (version_string): Bump to 1.6.
Ian Lance Taylor [Sat, 19 Apr 2008 19:43:13 +0000 (19:43 +0000)]
* testsuite/Makefile.am (many_sections_r_test): New target.
(many_sections_r_test_SOURCES): Remove.
(many_sections_r_test_DEPENDENCIES): Remove.
(many_sections_r_test_LDFLAGS): Remove.
(many_sections_r_test_LDADD): Remove.
Ian Lance Taylor [Sat, 19 Apr 2008 19:34:41 +0000 (19:34 +0000)]
* object.cc (Sized_relobj::do_add_symbols): Always pass
local_symbol_count_ to add_from_relobj.
Ian Lance Taylor [Sat, 19 Apr 2008 19:15:36 +0000 (19:15 +0000)]
* testsuite/Makefile.am (many_sections_check.h): Only check one in
every thousand variables.
* testsuite/Makefile.in: Rebuild.
Ian Lance Taylor [Sat, 19 Apr 2008 18:33:19 +0000 (18:33 +0000)]
* elfcpp_file.h (class Elf_file): Add large_shndx_offset_ field.
(Elf_file::large_shndx_offset): New function.
(Elf_file::construct): Initialize large_shndx_offset_.
(Elf_File::initialize_shnum): If necessary, adjust shstrndx_ and
set large_shndx_offset_.
Ian Lance Taylor [Sat, 19 Apr 2008 18:30:58 +0000 (18:30 +0000)]
* object.cc (Xindex::initialize_symtab_xindex): New function.
(Xindex::read_symtab_xindex): New function.
(Xindex::sym_xindex_to_shndx): New function.
(Sized_relobj::find_symtab): Pick up SHT_SYMTAB_SHNDX section if
available.
(Sized_relobj::do_initialize_xindex): New function.
(Sized_relobj::do_read_symbols): Adjust section links.
(Sized_relobj::symbol_section_and_value): Add is_ordinary
parameter. Change all callers.
(Sized_relobj::include_section_group): Adjust section links and
symbol section indexes.
(Sized_relobj::do_layout): Adjust section links.
(Sized_relobj::do_count_local_symbols): Adjust section links and
symbol section indexes.
(Sized_relobj::do_finalize_local_symbols): Distinguish between
ordinary and special symbols.
(Sized_relobj::write_local_symbols): Add symtab_xindex and
dynsym_xindex parameters. Change all callers. Adjust section
links. Use SHN_XINDEX when needed.
(Sized_relobj::get_symbol_location_info): Adjust section links.
Don't get fooled by special symbols.
* object.h (class Xindex): Define.
(class Object): Add xindex_ parameter. Declare virtual functoin
do_initialize_xindex.
(Object::adjust_sym_shndx): New function.
(Object::set_xindex): New protected function.
(class Symbol_value): Add is_ordinary_shndx_ field.
(Symbol_value::Symbol_value): Initialize is_ordinary_shndx_.
(Symbol_value::value): Assert ordinary section.
(Symbol_value::initialize_input_to_output_map): Likewise.
(Symbol_value::set_input_shndx): Add is_ordinary parameter.
Change all callers.
(Symbol_value::input_shndx): Add is_ordinary parameter. Change
all callers.
(class Sized_relobj): Update declarations.
(Sized_relobj::local_symbol_input_shndx): Add is_ordinary
parameter. Change all callers.
(Sized_relobj::adjust_shndx): New function.
* dynobj.cc (Sized_dynobj::Sized_dynobj): Initialize dynsym_shndx_
field.
(Sized_dynobj::find_dynsym_sections): Remove pdynsym_shndx
parameter. Change all callers. Pick up SHT_DYNSYM_SHNDX section
for SHT_DYNSYM section if available. Set dynsym_shndx_ field.
(Sized_dynobj::read_dynsym_section): Adjust section links.
(Sized_dynobj::read_dynamic): Likewise.
(Sized_dynobj::do_read_symbols): Use dynsym_shndx_ field. Adjust
section links.
(Sized_dynobj::do_initialize_xindex): New function.
* dynobj.h (class Sized_dynobj): Add dynsym_shndx_ field. Declare
do_initialize_xindex.
(Sized_dynobj::adjust_shndx): New function.
* layout.cc (Layout::Layout): Initialize symtab_xindex_ and
dynsym_xindex_ fields.
(Layout::finalize): Add a call to set_section_indexes before
creating the symtab sections.
(Layout::set_section_indexes): Don't do anything if the section
already has a section index.
(Layout::create_symtab_sections): Add shnum parameter. Change
caller. Create .symtab_shndx section if needed.
(Layout::create_shdrs): Add shstrtab_section parameter. Change
caller.
(Layout::allocated_output_section_count): New function.
(Layout::create_dynamic_symtab): Create .dynsym_shndx section if
needed.
* layout.h (class Layout): Add symtab_xindex_ and dynsym_xindex_
fields. Update declarations.
(Layout::symtab_xindex): New function.
(Layout::dynsym_xindex): New function.
(class Write_symbols_task): Add layout_ field.
(Write_symbols_task::Write_symbols_task): Add layout parameter.
Change caller.
* output.cc (Output_section_headers::Output_section_headers): Add
shstrtab_section parameter. Change all callers.
(Output_section_headers::do_sized_write): Store overflow values
for section count and section string table section index in
section header zero.
(Output_file_header::do_sized_write): Check for overflow of
section count and section string table section index.
(Output_symtab_xindex::do_write): New function.
(Output_symtab_xindex::endian_do_write): New function.
* output.h (class Output_section_headers): Add shstrtab_section_.
Update declarations.
(class Output_symtab_xindex): Define.
(Output_section::has_out_shndx): New function.
* symtab.cc (Symbol::init_fields): Initialize is_ordinary_shndx_
field.
(Symbol::init_base): Add st_shndx and is_ordinary parameters.
Change all callers.
(Sized_symbol::init): Likewise.
(Symbol::output_section): Check for ordinary symbol.
(Symbol_table::add_from_object): Remove orig_sym parameter. Add
st_shndx, is_ordinary, and orig_st_shndx parameters. Change all
callers.
(Symbol_table::add_from_relobj): Add symndx_offset parameter.
Change all callers. Simplify handling of symbols from sections
not included in the link.
(Symbol_table::add_from_dynobj): Handle ordinary symbol
distinction.
(Weak_alias_sorter::operator()): Assert that symbols are
ordinary.
(Symbol_table::sized_finalize_symbol): Handle ordinary symbol
distinction.
(Symbol_table::write_globals): Add symtab_xindex and dynsym_xindex
parameters. Change all callers.
(Symbol_table::sized_write_globals): Likewise. Handle ordinary
symbol distinction. Use SHN_XINDEX when needed.
(Symbol_table::write_section_symbol): Add symtab_xindex
parameter. Change all callers.
(Symbol_table::sized_write_section_symbol): Likewise. Use
SHN_XINDEX when needed.
* symtab.h (class Symbol): Add is_ordinary_shndx_ field. Update
declarations.
(Symbol::shndx): Add is_ordinary parameter. Change all callers.
(Symbol::is_defined): Check is_ordinary.
(Symbol::is_undefined, Symbol::is_weak_undefined): Likewise.
(Symbol::is_absolute, Symbol::is_common): Likewise.
(class Sized_symbol): Update declarations.
(class Symbol_table): Update declarations.
* resolve.cc (Symbol::override_base): Add st_shndx and is_ordinary
parameters. Change all callers.
(Sized_symbol::override): Likewise.
(Symbol_table::override): Likewise.
(symbol_to_bits): Add is_ordinary parameter. Change all callers.
(Symbol_table::resolve): Remove orig_sym parameter. Add st_shndx,
is_ordinary, and orig_st_shndx parameters. Change all callers.
* copy-relocs.cc (Copy_relocs::emit_copy_reloc): Require symbol
to be in an ordinary section.
* dwarf_reader.cc (Sized_dwarf_line_info::symbol_section): Add
object and is_ordinary parameters. Change all callers.
(Sized_dwarf_line_info::read_relocs): Add object parameter.
Change all callers. Don't add undefined or non-ordinary symbols
to reloc_map_.
(Sized_dwarf_line_info::read_line_mappings): Add object parameter.
Change all callers.
* dwarf_reader.h (class Sized_dwarf_line_info): Update
declarations.
* ehframe.cc (Eh_frame::read_fde): Check for ordinary symbol.
* reloc.cc (Sized_relobj::do_read_relocs): Adjust section links.
(Sized_relobj::relocate_sections): Likewise.
* target-reloc.h (scan_relocs): Adjust section symbol index.
(scan_relocatable_relocs): Likewise.
* i386.cc (Scan::local): Check for ordinary symbols.
* sparc.cc (Scan::local): Likewise.
* x86_64.cc (Scan::local): Likewise.
* testsuite/binary_unittest.cc (Sized_binary_test): Update calls
to symbol_section_and_value.
* testsuite/many_sections_test.cc: New file.
* testsuite/Makefile.am (BUILT_SOURCES): Define.
(check_PROGRAMS): Add many_sections_test.
(many_sections_test_SOURCES): Define.
(many_sections_test_DEPENDENCIES): Define.
(many_sections_test_LDFLAGS): Define.
(BUILT_SOURCES): Add many_sections_define.h.
(many_sections_define.h): New target.
(BUILT_SOURCES): Add many_sections_check.h.
(many_sections_check.h): New target.
(check_PROGRAMS): Add many_sections_r_test.
(many_sections_r_test_SOURCES): Define.
(many_sections_r_test_DEPENDENCIES): Define.
(many_sections_r_test_LDFLAGS): Define.
(many_sections_r_test_LDADD): Define.
(many_sections_r_test.o): New target.
* testsuite/Makefile.in: Rebuild.
Vladimir Prus [Sat, 19 Apr 2008 17:03:20 +0000 (17:03 +0000)]
* mi/mi-cmd-var.c (varobj_update_one): Print new
value for variable objects that changed type.
Vladimir Prus [Sat, 19 Apr 2008 16:38:25 +0000 (16:38 +0000)]
* varobj.c (varobj_invalidate): Don't touch floating
varobjs.
Mark Kettenis [Sat, 19 Apr 2008 11:39:50 +0000 (11:39 +0000)]
* symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
(multiple_symbols_cancel): Remove extra const.
* symtab.h: Likewise.
Nick Roberts [Sat, 19 Apr 2008 06:12:16 +0000 (06:12 +0000)]
(linespec.o, mi-interp.o): Add dependencies.
Nick Roberts [Sat, 19 Apr 2008 06:09:37 +0000 (06:09 +0000)]
Include interps.h and mi/mi-cmds.h.
(decode_line_2): When using MI, always set all breakpoints in menu.
Nick Roberts [Sat, 19 Apr 2008 06:09:15 +0000 (06:09 +0000)]
New extern for top_level_interpreter.
Nick Roberts [Sat, 19 Apr 2008 06:08:18 +0000 (06:08 +0000)]
(top_level_interpreter): Rename static variable...
(top_level_interpreter_ptr): ...to this.
(top_level_interpreter): New function.
Nick Roberts [Sat, 19 Apr 2008 06:07:51 +0000 (06:07 +0000)]
*** empty log message ***
Craig Silverstein [Sat, 19 Apr 2008 05:06:54 +0000 (05:06 +0000)]
* configure.ac (AC_SEARCH_LIBS): Add check for zlib.
* config.in, configure: Regenerate.
* dwarf2read.c: Include zlib.h if present.
Modified *_SECTION macros.
(section_is_p): New.
(dwarf2_locate_sections): Use section_is_p instead of strcmp
(dwarf2_resize_section): New.
to determine whether a given section has a given name.
(zlib_decompress_section): New.
(dwarf2_read_section): Read the compressed section if present
in the binary.
* testsuite/gdb.dwarf2/dw2-compressed.S: New file.
* testsuite/gdb.dwarf2/dw2-compressed.exp: New file.
* MAINTAINERS: Added myself to section Write After Approval.
Thiago Jung Bauermann [Sat, 19 Apr 2008 02:07:19 +0000 (02:07 +0000)]
* defs.h (exec_set_section_offsets): Remove prototype.
* exec.c (exec_set_section_offsets): Remove function.
Joel Brobecker [Sat, 19 Apr 2008 01:35:49 +0000 (01:35 +0000)]
* gdb.ada/atomic_enum: New test program.
* gdb.ada/atomic_enum.exp: New testcase.
Joel Brobecker [Sat, 19 Apr 2008 01:33:26 +0000 (01:33 +0000)]
* stabsread.c (cleanup_undefined_types_1): Add instance flags check
in the search for the matching symbol.
gdbadmin [Sat, 19 Apr 2008 00:00:34 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 19 Apr 2008 00:00:06 +0000 (00:00 +0000)]
daily update
David S. Miller [Fri, 18 Apr 2008 21:19:48 +0000 (21:19 +0000)]
* doc/c-sparc.texi: Add syntax section.
H.J. Lu [Fri, 18 Apr 2008 18:22:37 +0000 (18:22 +0000)]
2008-04-18 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (build_modrm_byte): Don't check FMA to swap
REG and NDS for instructions with immediate operand.
DJ Delorie [Fri, 18 Apr 2008 15:14:13 +0000 (15:14 +0000)]
merge from gcc
H.J. Lu [Fri, 18 Apr 2008 13:10:32 +0000 (13:10 +0000)]
gas/
2008-04-18 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (build_modrm_byte): Swap REG and NDS for
FMA.
gas/testsuite/
2008-04-18 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/arch-10.d: Updated.
* gas/i386/avx.d: Likewise.
* gas/i386/avx-intel.d: Likewise.
* gas/i386/x86-64-arch-2.d: Likewise.
* gas/i386/x86-64-avx.d: Likewise.
* gas/i386/x86-64-avx-intel.d: Likewise.
opcodes/
2008-04-18 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c (OP_VEX_FMA): New.
(OP_EX_VexImmW): Likewise.
(VexFMA): Likewise.
(Vex128FMA): Likewise.
(EXVexImmW): Likewise.
(get_vex_imm8): Likewise.
(OP_EX_VexReg): Likewise.
(vex_i4_done): Renamed to ...
(vex_w_done): This.
(prefix_table): Replace EXVexW with EXVexImmW on vpermil2ps
and vpermil2pd. Replace Vex/Vex128 with VexFMA/Vex128FMA on
FMA instructions.
(print_insn): Updated.
(OP_EX_VexW): Rewrite to swap register in VEX with EX.
(OP_REG_VexI4): Check invalid high registers.
Paolo Bonzini [Fri, 18 Apr 2008 11:07:31 +0000 (11:07 +0000)]
2008-04-18 Paolo Bonzini <bonzini@gnu.org>
Sync with gcc:
2008-04-18 Paolo Bonzini <bonzini@gnu.org>
PR bootstrap/35457
* configure.ac: Include override.m4.
* configure: Regenerate.
2008-04-18 Paolo Bonzini <bonzini@gnu.org>
* Makefile.tpl (restrap): Call `make all' using double-colon rules.
* Makefile.in: Regenerate.
2008-04-11 Eric B. Weddington <eweddington@cso.atmel.com>
* configure.ac: Do not build libssp for the AVR.
* configure: Regenerate.
config:
2008-04-18 Paolo Bonzini <bonzini@gnu.org>
PR bootstrap/35457
* override.m4: Add this. Make sure aclocal always picks it.
Add more lenient precious variable check, backported from
autoconf trunk.
Nick Clifton [Fri, 18 Apr 2008 09:22:24 +0000 (09:22 +0000)]
* aix5ppc-core.c: Define macros for the default architecture and
machine for matching core files.
(xcoff64_core_p): Set the architecture and machine to the default
values defined in the macros mentioned above.
* rs6000-core.c: Define macros to determine whether or not the
core file header uses the core_dumpxx header format.
(rs6000coff_core_p): Don't match core files that use the
core_dumpxx header format.
Kai Tietz [Fri, 18 Apr 2008 09:06:22 +0000 (09:06 +0000)]
[patch]: ctor/dtor section must start at alignment of 8 for x86_64-pc-mingw32.
* scripttempl/pep.sc: Align start of symbol __CTOR_LIST__.
Nick Clifton [Fri, 18 Apr 2008 08:55:06 +0000 (08:55 +0000)]
* MAINTAINERS: Replace reference to configure.in with reference to configure.ac.
David S. Miller [Fri, 18 Apr 2008 08:47:35 +0000 (08:47 +0000)]
* config/tc-sparc.c (sparc_ip): Recognize %pc22 and %pc10.
Nick Clifton [Fri, 18 Apr 2008 08:45:05 +0000 (08:45 +0000)]
* configure.ac (cr16-*-*): Add case for cr16 target and include gdb
as nonconfigurable directories list.
* configure: Regenerate.
Ben Elliston [Fri, 18 Apr 2008 02:12:45 +0000 (02:12 +0000)]
* Makefile.in (distclean): Add gstdint.h.
Marc Khouzam [Fri, 18 Apr 2008 00:41:28 +0000 (00:41 +0000)]
2008-04-17 Marc Khouzam <marc.khouzam@ericsson.com>
* breakpoint.c (update_watchpoint): Always reparse
condition.
Alan Modra [Fri, 18 Apr 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 18 Apr 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Thu, 17 Apr 2008 23:06:54 +0000 (23:06 +0000)]
* gdb.opt/Makefile.in: Fix whitespace.
Cary Coutant [Thu, 17 Apr 2008 22:45:47 +0000 (22:45 +0000)]
* errors.cc (Errors::info): New function.
(gold_info): New function.
* errors.h (Errors::info): New function.
* gold.h (gold_info): New function.
* object.cc (Input_objects::add_object): Print trace output.
* options.cc (options::parse_set): New function.
(General_options::parse_wrap): Deleted.
(General_options::General_options): Deleted initializer.
* options.h (options::String_set): New typedef.
(options::parse_set): New function.
(DEFINE_set): New macro.
(General_options::wrap): Changed to use DEFINE_set. Changed
callers of any_wrap_symbols and is_wrap_symbol.
(General_options::trace, General_options::trace_symbol):
New options.
(General_options::any_wrap_symbols, General_options::is_wrap_symbol)
(General_options::wrap_symbols_): Deleted.
* symtab.cc (Symbol_table::add_from_object): Print trace output.
Joel Brobecker [Thu, 17 Apr 2008 22:43:17 +0000 (22:43 +0000)]
* breakpoint.c (print_one_breakpoint_location): Make sure to print
the breakpoint address only once.
Ulrich Weigand [Thu, 17 Apr 2008 21:36:23 +0000 (21:36 +0000)]
2008-04-17 Daniel Jacobowitz <dan@codesourcery.com>
* gdb.threads/linux-dp.exp: Continue after unrecognized lines.
Ulrich Weigand [Thu, 17 Apr 2008 21:22:41 +0000 (21:22 +0000)]
* configure.srv [powerpc64-*-linux*]: Remove powerpc-e500.o from
srv_regobj. Remove rs6000/powerpc-e500.xml and rs6000/power-spe.xml
from reg_xmlfiles.
* linux-ppc-low.c: Include <elf.h>.
(PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Define.
(ppc_hwcap): New global variable.
(ppc_regmap): Remove __SPE__ #ifdef sections.
(ppc_regmap_e500): New global variable.
(ppc_cannot_store_register): Update __SPE__ special case.
(ppc_get_hwcap): New function.
(ppc_arch_setup): Use it to determine whether inferior supports
AltiVec or SPE registers. Set the_low_target.regmap if appropriate.
(ppc_fill_vrregset, ppc_store_vrregset): Define unconditionally.
Do not access registers if target does not support AltiVec.
(ppc_fill_evrregset, ppc_store_evrregset): Define unconditionally.
Do not access registers if target does not support SPE.
(target_regsets): Unconditionally include AltiVec and SPE regsets.
Ulrich Weigand [Thu, 17 Apr 2008 21:21:38 +0000 (21:21 +0000)]
2008-04-17 Daniel Jacobowitz <dan@codesourcery.com>
* linux-low.c (disabled_regsets, num_regsets): New.
(use_regsets_p): Delete.
(linux_wait_for_process): Clear disabled_regsets.
(regsets_fetch_inferior_registers): Check and set it.
(regsets_store_inferior_registers): Likewise.
(linux_fetch_registers, linux_store_registers): Do not use
use_regsets_p.
(initialize_low): Allocate disabled_regsets.
Joel Brobecker [Thu, 17 Apr 2008 21:00:53 +0000 (21:00 +0000)]
* rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
rather than a hard-coded architecture, for xcoff executables.
David S. Miller [Thu, 17 Apr 2008 20:23:59 +0000 (20:23 +0000)]
* options.cc (General_options::parse_V): New function.
* options.h: Add entries for -V and -Qy.
Doug Evans [Thu, 17 Apr 2008 17:54:05 +0000 (17:54 +0000)]
* buildsym.c (watch_main_source_file_lossage): New fn.
(end_symtab): Call it.
* gdb.base/hashline1.exp: New testcase.
* gdb.base/hashline2.exp: New testcase.
* gdb.base/hashline2.exp: New testcase.
Doug Evans [Thu, 17 Apr 2008 17:43:58 +0000 (17:43 +0000)]
* source.c (find_and_open_source): Add some comments clarifying
handling of FULLNAME argument. Make static. Remove pointless
xstrdup/xfree.
Pedro Alves [Thu, 17 Apr 2008 11:49:56 +0000 (11:49 +0000)]
gdb/
* inf-loop.c (inferior_event_handler): Also run the intermediate
continuations in the INF_EXEC_COMPLETE case.
gdb/testsuite/
* gdb.base/step-break.exp, gdb.base/step-break.c: New files.
Ian Lance Taylor [Thu, 17 Apr 2008 07:12:00 +0000 (07:12 +0000)]
* common.cc (Symbol_table::allocate_commons): Remove options
parameter. Change caller.
(Symbol_table::do_allocate_commons): Remove options parameter.
Change caller. Just call do_allocate_commons_list twice.
(Symbol_table::do_allocate_commons_list): New function, broken out
of do_allocate_commons.
* common.h (class Allocate_commons_task): Remove options_ field.
Update constructor.
* symtab.cc (Symbol_table::Symbol_table): Initialize
tls_commons_.
(Symbol_table::add_from_object): Put TLS common symbols on
tls_commons_ list.
(Symbol_table::sized_finalize_symbol): Handle STT_TLS symbols
which are IN_OUTPUT_DATA.
* symtab.h (class Symbol_table): Add tls_commons_ field. Update
allocate_commons and do_allocate_commons declarations. Declare
do_allocate_commons_list.
* gold.cc (queue_middle_tasks): Update creation of
Allocate_commons_task to not pass options.
* testsuite/Makefile.am (INCLUDES): Add -I.. .
(TLS_TEST_C_FLAGS): New variable.
(tls_test_c_pic.o): New target.
(tls_test_shared.so): Link in tls_test_c_pic.o.
(tls_test_c_pic_ie.o): New target.
(tls_test_ie_shared.so): Link in tls_test_c_pic_ie.o.
(tls_test_DEPENDENCIES, tls_test_LDADD): Add tls_test_c.o.
(tls_test_c.o): New target.
(tls_pic_test_DEPENDENCIES): Add tls_test_c_pic.o.
(tls_pic_test_LDADD): Likewise.
(tls_shared_gd_to_ie_test_DEPENDENCIES): Add tls_test_c_pic.o.
(tls_shared_gd_to_ie_test_LDADD): Likewise.
(tls_test_c_gnu2.o): New target.
(tls_shared_gnu2_gd_to_ie_test_DEPENDENCIES): Add
tls_test_c_gnu2.o.
(tls_shared_gnu2_gd_to_ie_test_LDADD): Likewise.
(tls_test_gnu2_shared.so): Link in tls_test_c_gnu2.o.
(tls_test_shared_nonpic.so): Link in tls_test_c.o.
* testsuite/tls_test.cc: Include "config.h".
(t_last): Call t11_last.
* testsuite/tls_test.h (t11, t11_last): Declare.
* testsuite/tls_test_c.c: New file.
* testsuite/tls_test_main.cc (thread_routine): Call t11.
* configure.ac: Check for OpenMP support.
* configure, config.in, Makefile.in: Rebuild.
* testsuite/Makefile.in: Rebuild.
David S. Miller [Thu, 17 Apr 2008 07:07:37 +0000 (07:07 +0000)]
* sparc.cc (Target_sparc::Scan): Change from struct to class.
Add issued_non_pic_error_ field. Declare check_non_pic.
(Target_sparc::Scan::check_non_pic): New function.
(Target_sparc::Scan::local): Call check_non_pic as appropriate.
(Target_sparc::Scan::global): Likewise.
David S. Miller [Thu, 17 Apr 2008 05:52:32 +0000 (05:52 +0000)]
* configure.ac (FN_PTRS_IN_SO_WITHOUT_PIC): Add sparc64.
* configure: Rebuild.
Cary Coutant [Thu, 17 Apr 2008 02:00:54 +0000 (02:00 +0000)]
* i386.cc (Target_i386::define_tls_base_symbol): New function.
(Target_i386::tls_base_symbol_defined_): New field.
(Target_i386::Scan::local): Define _TLS_MODULE_BASE_ symbol.
(Target_i386::Scan::global): Likewise.
* symtab.cc (sized_finalize_symbol): Add check for TLS symbol.
* x86_64.cc (Target_x86_64::define_tls_base_symbol): New function.
(Target_x86_64::tls_base_symbol_defined_): New field.
(Target_x86_64::Scan::local): Define _TLS_MODULE_BASE_ symbol.
(Target_x86_64::Scan::global): Likewise.