| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
* record.c (bfdcore_write): New function, abstracted out
from cmd_record_dump.
(cmd_record_dump): Call bfdcore_write.
(cmd_record_load): Fix setting of record_insn_num.
|
|
|
|
|
|
|
| |
* record.c (bfdcore_write): New function, abstracted out
from cmd_record_dump.
(cmd_record_dump): Call bfdcore_write.
(cmd_record_load): Fix setting of record_insn_num.
|
|
|
|
|
|
| |
* record.c (record_list_release): Finish releasing record list.
(cmd_record_load): No longer necessary to null out
record list pointers: record_list_release does it.
|
|
|
|
|
| |
* record.c (cmd_record_dump): Clean up draft version.
(cmd_record_load): Ditto.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Michael Snyder <msnyder@vmware.com>
(Add record dump/load commands: draft version, not ready for release).
* record.c (RECORD_FILE_MAGIC): New constant.
(record_arch_list_add_reg): Use xcalloc instead of xmalloc.
(record_exec_entry): Pre-zero the register buffer.
(cmd_record_fd_cleanup): New function (dead).
(cmd_record_dump): New function.
(bfdcore_read): New function.
(cmd_record_load): New function.
(_initialize_record): Add 'record dump' and 'record load' commands.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* gcore.c (create_gcore_bfd): New function, abstracted
from gcore_command for export.
(write_gcore_file): New function, abstracted from
gcore_command for export.
(gcore_command): Call helper functions (above).
(call_target_sbrk): New function, abstracted from
derive_heap_segment.
(derive_heap_segment): Call helper function (above).
(load_core_segments): New function.
(load_corefile): New function.
(rcore_command): New function.
(_initialize_gcore): Add new command "restore-core-file".
|
|
|
|
| |
* record.c (record_goto_checkpoint): Call record_exec_entry.
|
|
|
|
|
| |
* record.c (record_exec_entry): New function.
(record_wait): Call 'record_exec_entry'.
|
|
|
|
|
|
|
|
|
|
| |
Michael Snyder <msnyder@vmware.com>
(Import from main branch)
* record.c (record_mem_entry): New field 'mem_entry_not_accessible'.
(record_arch_list_add_mem): Initialize 'mem_entry_not_accessible'.
(record_wait): Set 'mem_entry_not_accessible' flag if target
memory not readable. Don't try to change target memory if
'mem_entry_not_accessible' is set.
|
|
|
|
|
| |
* record.c (record_restore_checkpoint): Count instructions, not
record entries.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Nearly working.
* target.h (struct target_ops): Change func args of
checkpoint methods.
checkpoint.c (checkpoint_command): Use target method,
bail if it isn't implemented.
(delete_checkpoint_command): Ditto.
(info_checkpoints_command): Ditto.
(restart_command): Ditto.
linux-fork.c (fork_list): Delete, use checkpoint list instead.
(forks_exist_p): Check checkpoint list instead of fork_list.
(delete_fork): Ditto.
(find_fork_ptid): Ditto.
(find_fork_id): Ditto.
(find_fork_pid): Ditto.
(add_fork): Ditto.
(linux_fork_killall): Ditto.
(linux_fork_mourn_inferior): Ditto.
(linux_fork_detach): Ditto.
(init_fork_list): Delete, no longer needed.
(delete_checkpoint_command): Ditto.
(info_checkpoints_command): Ditto.
(checkpoint_command): Ditto.
(restart_command): Ditto.
(linux_unset_checkpoint): New function (target method).
(linux_show_checkpoints_info): Ditto.
(linux_set_checkpoint): Ditto.
(linux_restore_checkpoint): Ditto.
(_initialize_linux_fork): Use new target methods.
* record.c (init_record_ops): Use new target methods.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In-flux state: target methods temporarily broken.
* checkpoint.c (checkpoint_insert): New function.
(checkpint_first): New function.
(checkpoint_next): New function.
(checkpoint_unlink): New function.
(checkpoint_find_id): New function.
(checkpoint_command): Manage list locally.
(delete_checkpoint_command): Ditto.
(info_checkpoints_command): Ditto.
(restart_command): Ditto
* checkpoint.h (checkpoint_insert, checkpoint_first,
checkpoint_next, checkpoint_unlink, checkpoint_find_id): Export.
* record.c (record_insert_checkpoint): New function.
(record_delete_checkpoint): New function.
(record_show_checkpoint_info): New function.
(record_goto_checkpoint): New function.
(record_restore_checkpoint): New function.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* inf-child.c (inf_child_target): Initialize target_ops only once.
* inf-ptrace.c (inf_ptrace_target): Ditto.
(inf_ptrace_trad_target): Ditto.
* linux-nat.c (linux_target): Ditto.
(linux_trad_target): Ditto.
* linux-fork.c (_initialize_linux_fork): Rather than calling
add_cmd to add checkpoint commands, use 'linux_target' to
get the target vector, add the checkpoint functions to it,
and call checkpoint_init to activate the user commands.
(linux_fork_killall): Add optional verbose output.
|
|
|
|
|
|
| |
* checkpoint.c: New file, target-agnostic checkpoints.
* checkpoint.h: New file, interface.
* Makefile.in (SFILES): Add checkpoint.c.
|
|
|
|
|
|
| |
* target.h (struct target_ops): New methods to_set_checkpoint,
to_unset_checkpoint, to_restore_checkpoint, to_info_checkpoints.
* target.c (update_current_target): Inherit the above methods.
|
| |
|
| |
|
|
|
|
| |
frame.
|
|
|
|
|
| |
* cpu-i386.c (bfd_x86_64_arch): Fix comment typos.
* cpu-l1om.c (bfd_l1om_arch): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* archures.c (bfd_architecture): Add bfd_arch_l1om.
(bfd_l1om_arch): New.
(bfd_archures_list): Add &bfd_l1om_arch.
* bfd-in2.h: Regenerated.
* config.bfd (targ64_selvecs): Add bfd_elf64_l1om_vec if
bfd_elf64_x86_64_vec is supported. Add bfd_elf64_l1om_freebsd_vec
if bfd_elf64_x86_64_freebsd_vec is supported.
(targ_selvecs): Likewise.
* configure.in: Support bfd_elf64_l1om_vec and
bfd_elf64_l1om_freebsd_vec.
* configure: Regenerated.
* cpu-l1om.c: New.
* elf64-x86-64.c (elf64_l1om_elf_object_p): New.
(bfd_elf64_l1om_vec): Likewise.
(bfd_elf64_l1om_freebsd_vec): Likewise.
* Makefile.am (ALL_MACHINES): Add cpu-l1om.lo.
(ALL_MACHINES_CFILES): Add cpu-l1om.c.
* Makefile.in: Regenerated.
* targets.c (bfd_elf64_l1om_vec): New.
(bfd_elf64_l1om_freebsd_vec): Likewise.
(_bfd_target_vector): Add bfd_elf64_l1om_vec and
bfd_elf64_l1om_freebsd_vec.
binutils/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* readelf.c (guess_is_rela): Handle EM_L1OM.
(dump_relocations): Likewise.
(get_machine_name): Likewise.
(get_section_type_name): Likewise.
(get_elf_section_flags): Likewise.
(get_symbol_index_type): Likewise.
(is_32bit_abs_reloc): Likewise.
(is_32bit_pcrel_reloc): Likewise.
(is_64bit_abs_reloc): Likewise.
(is_64bit_pcrel_reloc): Likewise.
(is_none_reloc): Likewise.
gas/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (cpu_arch): Add l1om.
(check_cpu_arch_compatible): New.
(set_cpu_arch): Use it.
(i386_arch): New.
(i386_mach): Return bfd_mach_l1om for Intel L1OM.
(md_show_usage): Display l1om.
(i386_target_format): Return ELF_TARGET_L1OM_FORMAT if
cpu_arch_isa_flags.bitfield.cpul1om is set.
* config/tc-i386.h (TARGET_ARCH): Use (i386_arch ()).
(i386_arch): New.
(ELF_TARGET_L1OM_FORMAT): Likewise.
* doc/c-i386.texi: Document l1om.
gas/testsuite/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/l1om.d: New.
* gas/i386/l1om-inval.l: Likewise.
* gas/i386/l1om-inval.s: Likewise.
* gas/i386/i386.exp: Run l1om-inval and l1om.
include/elf/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* common.h (EM_L1OM): New.
ld/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* configure.tgt (targ64_extra_emuls): Add elf_l1om if elf_x86_64
is supported. Add elf_l1om_fbsd if elf_x86_64_fbsd is supported.
(targ_extra_emuls): Likewise.
* Makefile.am (ALL_64_EMULATIONS): Add eelf_l1om.o and
eelf_l1om_fbsd.o
(eelf_l1om.c): New.
(eelf_l1om_fbsd.c): Likewise.
* Makefile.in: Regenerated.
* emulparams/elf_l1om.sh: New.
* emulparams/elf_l1om_fbsd.sh: Likewise.
ld/testsuite/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/abs-l1om.d: New.
* ld-x86-64/protected2-l1om.d: Likewise.
* ld-x86-64/protected3-l1om.d: Likewise.
* ld-x86-64/x86-64.exp: Run abs-l1om, protected2-l1om and
protected3-l1om.
opcodes/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* configure.in: Handle bfd_l1om_arch.
* disassemble.c (disassembler): Likewise.
* configure: Regenerated.
* i386-dis.c (print_insn): Handle bfd_mach_l1om and
bfd_mach_l1om_intel_syntax. Use 8 bytes per line for Intel L1OM.
* i386-gen.c (cpu_flag_init): Set CPU_UNKNOWN_FLAGS to ~CpuL1OM.
Add CPU_L1OM_FLAGS.
(cpu_flags): Add CpuL1OM.
(set_bitfield): Take an argument to set the value field.
(process_i386_cpu_flag): Support ~CpuXXX and ~(CpuXXX|CpuYYY).
(process_i386_opcode_modifier): Updated.
(process_i386_operand_type): Likewise.
* i386-init.h: Regenerated.
* i386-tbl.h: Likewise.
* i386-opc.h (CpuL1OM): New.
(CpuXsave): Updated.
(i386_cpu_flags): Add cpul1om.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* spu.h (R_SPU_ADD_PIC): New.
bfd/
* reloc.c (BFD_RELOC_SPU_ADD_PIC): Define.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* elf32-spu.c (elf_howto_table): Add entries SPU_ADD_PIC.
(spu_elf_bfd_to_reloc_type): Handle SPU_ADD_PIC.
(spu_elf_relocate_section): Patch instructions marked by SPU_ADD_PIC.
gas/
* config/tc-spu.c (md_apply_fix): Handle SPU_ADD_PIC.
* config/tc-spu.h (tc_fix_adjustable): Don't adjust for SPU_ADD_PIC.
(TC_FORCE_RELOCATION): Emit relocs for SPU_ADD_PIC.
ld/testsuite/
* ld-spu/pic.d: New.
* ld-spu/pic.s: New.
* ld-spu/picdef.s: New.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-07-24 Jan Beulich <jbeulich@novell.com>
* tc-i386.c (cpu_arch): Add .8087, .287, .387, .no87, .nommx,
.nosse, and .noavx.
(cpu_flags_and_not): New.
(set_cpu_arch): Check whether sub-architecture specified is a
feature disable.
(md_parse_option): Likewise.
(parse_real_register): Don't return floating point register
when x87 functionality is disabled.
(md_show_usage): Add new sub-options.
* doc/c-i386.texi: Update with new command line sub-options.
gas/testsuite/
2009-07-24 Jan Beulich <jbeulich@novell.com>
* gas/i386/8087.[ds]: New.
* gas/i386/287.[ds]: New.
* gas/i386/387.[ds]: New.
* gas/i386/no87.[ls]: New.
* gas/i386/no87-2.[ls]: New.
* gas/i386/i386.exp: Run new tests.
* gas/i386/att-regs.s: Also check FPU register access.
* gas/i386/intel-regs.s: Likewise.
* gas/i386/att-regs.d: Adjust expectations.
* gas/i386/intel-regs.d: Likewise.
opcodes/
2009-07-24 Jan Beulich <jbeulich@novell.com>
* i386-dis.c (fgrps): Correct annotation for feni/fdisi. Add
frstpm.
* i386-gen.c (cpu_flag_init): Add FP enabling flags where needed.
(cpu_flags): Add Cpu8087, Cpu287, Cpu387, Cpu687, and CpuFISTTP.
(set_bitfield): Expand CpuFP to Cpu8087|Cpu287|Cpu387.
* i386-opc.h (Cpu8087, Cpu287, Cpu387, Cpu687, CpuFISTTP):
Define.
(union i386_cpu_flags): Add cpu8087, cpu287, cpu387, cpu687,
and cpufisttp.
* i386-opc.tbl: Qualify floating point instructions by their
respective CpuXXX flag. Fix fucom{,p,pp}, fprem1, fsin, fcos,
and fsincos to be avilable only on 387. Fix fstsw ax to be
available only on 287+. Add f{,n}eni, f{,n}disi, f{,n}setpm,
and frstpm.
* i386-init.h, i386-tbl.h: Regenerate.
|
| |
|
| |
|
|
|
|
|
| |
just run the cleanups.
(reverse_search_command): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-07-23 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10434
* elf64-x86-64.c (elf64_x86_64_check_relocs): Check executable
instead of shared for R_X86_64_TPOFF32.
(elf64_x86_64_relocate_section): Likewise.
ld/testsuite/
2009-07-23 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10434
* ld-x86-64/tlsle1.d: New.
* ld-x86-64/tlsle1.s: Likewise.
* ld-x86-64/x86-64.exp: Run tlsle1.
|
|
|
|
| |
* symtab.c (search_symbols): Add QUIT.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gnu_unique_object.
* doc/as.texinfo: Document new feature of .type directive.
* NEWS: Mention support for gnu_unique_object symbol type.
* common.h (STB_GNU_UNIQUE): Define.
* NEWS: Mention the linker's support for symbols with a binding of
STB_GNU_UNIQUE.
* gas/elf/type.s: Add unique global symbol definition.
* gas/elf/type.e: Add expected readelf output for global unique
symbol.
* elfcpp.h (enum STB): Add STB_GNU_UNIQUE.
* readelf.c (get_symbol_binding): For Linux targeted files return
UNIQUE for symbols with the STB_GNU_UNIQUE binding.
* doc/binutils.texi: Document the meaning of the 'u' symbol
binding in the output of nm and objdump --syms.
* elf-bfd.h (struct elf_link_hash_entry): Add unique_global field.
* elf.c (swap_out_syms): Set binding to STB_GNU_UNIQUE for symbols
with the BSF_GNU_UNIQUE flag bit set.
* elfcode.h (elf_slurp_symbol_table): Set the BSF_GNU_UNIQUE flag
for symbols with STB_GNU_UNIQUE binding.
* elflink.c (_bfd_elf_merge_symbol): Set unique_global for symbols
with the STB_GNU_UNIQUE binding.
(elf_link_add_object_symbols): Set the BSF_GNU_UNIQUE flag for
symbols with STB_GNU_UNIQUE binding. Set STB_GNU_UNIQUE for
symbols with the unique_global field set.
(elf_link_output_extsym): Set unique_global field for symbols with
the STB_GNU_UNIQUE binding.
* syms.c (struct bfd_symbol): Define BSF_GNU_UNIQUE flag bit.
(bfd_print_symbol_vandf): Print a 'u' character for BSF_GNU_UNIQUE
symbols.
(bfd_decode_symclass): Return a 'u' character for BSF_GNU_UNIQUE
symbols.
* bfd-in2.h: Regenerate.
|
| |
|
| |
|
|
|
|
| |
* elflink.c (elf_link_output_extsym): Revert the last change.
|
|
|
|
|
|
| |
PR ld/10433
* elflink.c (elf_link_output_extsym): Special case ifunc syms
when ref_regular, not def_regular.
|
|
|
|
| |
* symfile.c (symbol_file_add_with_addrs_or_offsets): Call observer.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* objfiles.h (objfiles_changed): New prototype.
* objfiles.c (objfiles_updated_p): Rename to objfiles_changed_p.
(allocate_objfile, free_objfile): Must rebuild section map.
(objfile_relocate): Likewise.
(update_section_map, find_pc_section): Adjust.
(set_objfiles_updated_on_exe_change): Remove.
(set_objfiles_updated_on_solib_activity): Remove.
(_initialize_objfiles): Remove.
(objfiles_changed): New function.
* symfile.c (reread_symbols): Call objfiles_changed.
|
|
|
|
|
| |
* record.c (record_xfer_partial): Call error When nquery
return "n".
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-07-21 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10426
* elflink.c (elf_link_add_object_symbols): Turn an IFUNC symbol
from a DSO into a normal FUNC symbol.
(elf_link_output_extsym): Turn an undefined IFUNC symbol into
a normal FUNC symbol.
ld/testsuite/
2009-07-21 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10426
* ld-ifunc/ifunc.exp: Check test-1 and libtest-2.so. Updated.
* ld-ifunc/test-1.c: New.
* ld-ifunc/test-2.c: Likewise.
|
| |
|
|
|
|
|
|
|
|
|
| |
* objfiles.c (objfiles_updated_p): New variable.
(qsort_cmp, bsearch_cmp, update_section_map): New function.
(find_pc_section): Use bsearch.
(set_objfiles_updated_on_exe_change): New function.
(set_objfiles_updated_on_solib_activity): New function.
(_initialize_objfiles): New function.
|
|
|
|
|
|
|
| |
* features/rs6000/powerpc-405.xml: New.
* rs6000-tdep.c: Add include & initialize for
powerpc-405.c, add 405 to variants.
* features/rs6000/powerpc-405.c: Generate.
|
| |
|
| |
|
|
|
|
| |
* util.c (internal_vproblem): Always print failure message.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* valops.c (value_fetch_lazy): Handle bitfields explicitly.
(value_assign): Remove unnecessary FIXME. Honor the container
type of bitfields if possible.
* value.c (struct value): Add parent field.
(value_parent): New function.
(value_free): Free the parent also.
(value_copy): Copy the parent also.
(value_primitive_field): Do not read the contents of a lazy
value to create a child bitfield value. Set bitpos and offset
according to the container type if possible.
(unpack_bits_as_long): Rename from unpack_field_as_long. Take
field_type, bitpos, and bitsize instead of type and fieldno.
(unpack_field_as_long): Use unpack_bits_as_long.
* value.h (value_parent, unpack_bits_as_long): New prototypes.
|
|
|
|
|
|
|
|
| |
* value.c (struct value): Add reference_count field.
(allocate_value_lazy): Initialize reference_count.
(value_incref): New function.
(value_free): Check the reference count.
* value.h (value_incref): New prototype.
|