* features/Makefile (rs6000/powerpc-isa205-32l-expedite,
rs6000/powerpc-isa205-altivec32l-expedite,
powerpc-isa205-vsx32l-expedite, rs6000/powerpc-isa205-64l-expedite,
rs6000/powerpc-isa205-altivec64l-expedite,
powerpc-isa205-vsx64l-expedite): New variables.
* regformats/rs6000/powerpc-isa205-32l.dat: Generate.
* regformats/rs6000/powerpc-isa205-altivec32l.dat: Generate.
* regformats/rs6000/powerpc-isa205-vsx32l.dat: Generate.
* regformats/rs6000/powerpc-isa205-64l.dat: Generate.
* regformats/rs6000/powerpc-isa205-altivec64l.dat: Generate.
* regformats/rs6000/powerpc-isa205-vsx64l.dat: Generate.
gdbserver/
* Makefile.in (powerpc-isa205-32l.o, powerpc-isa205-32l.c,
powerpc-isa205-altivec32l.o, powerpc-isa205-altivec32l.c,
powerpc-isa205-vsx32l.o, powerpc-isa205-vsx32l.c,
powerpc-isa205-64l.o, powerpc-isa205-64l.c,
powerpc-isa205-altivec64l.o, powerpc-isa205-altivec64l.c,
powerpc-isa205-vsx64l.o, powerpc-isa205-vsx64l.c): New targets.
* configure.srv (powerpc*-*-linux*): Add ISA 2.05 object files and
XML target descriptions.
* linux-ppc-low.c (ppc_arch_setup): Init registers with 64-bit FPSCR
when inferior is running on an ISA 2.05 or later processor. Add
special case to return offset for full 64-bit slot of FPSCR when
in 32-bits.
* Makefile.in (ppc_linux_tdep_h): New macro.
(powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
(powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
(powerpc_e500l_c): Likewise.
(ppc-linux-nat.o): Update dependencies.
(ppc-linux-tdep.o): Update dependencies.
(rs6000-tdep.o): Update dependencies.
* ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
(ppc_linux_svr4_fetch_link_map_offsets): Remove.
(ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
(ppc_supply_reg, ppc_collect_reg): Add prototypes.
(tdesc_powerpc_e500): Remove.
* rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
and "features/rs6000/powerpc-altivec64.c".
(ppc_supply_reg, ppc_collect_reg): Make global.
(variants): Use tdesc_powerpc_32 for "powerpc" and
tdesc_powerpc_altivec64 for "powerpc64".
(_initialize_rs6000_tdep): Initialize AltiVec descriptions.
* ppc-linux-tdep.h: New file.
* ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
Include "features/rs6000/powerpc-32l.c".
Include "features/rs6000/powerpc-altivec32l.c".
Include "features/rs6000/powerpc-64l.c".
Include "features/rs6000/powerpc-altivec64l.c".
Include "features/rs6000/powerpc-e500l.c".
(ppc_linux_supply_gregset): New function.
(ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
(ppc32_linux_gregset): Use ppc_linux_supply_gregset.
(ppc64_linux_gregset): Likewise.
(ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
(ppc_linux_trap_reg_p): New function.
(ppc_linux_write_pc): New function.
(ppc_linux_core_read_description): New function.
(ppc_linux_init_abi): Install ppc_linux_write_pc and
ppc_linux_core_read_description. Install orig_r3 and trap
registers if present in the target description.
(_initialize_ppc_linux_tdep): Initialize Linux target descriptions.
* ppc-linux-nat.c: Include "ppc-linux-tdep.h".
(PT_ORIG_R3, PT_TRAP): Define if necessary.
(ppc_register_u_addr): Handle orig_r3 and trap registers.
(fetch_ppc_registers): Likewise.
(store_ppc_registers): Likewise.
(store_register): Likewise.
(ppc_linux_read_description): Check whether AltiVec is supported.
Check whether inferior is 32-bit or 64-bit. Return the appropriate
Linux target description.
* features/Makefile (WHICH): Use rs6000/powerpc-32l and
rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
of rs6000/powerpc-64. Use rs6000/powerpc-e500l instead of
rs6000/powerpc-e500. Update -expedite variables accordingly.
* features/rs6000/power-spe.xml: Use regnum 73 for "acc".
* features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
* features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
* features/rs6000/powerpc-e500.c: Regenerate.
* features/rs6000/powerpc-32.c: Regenerate.
* features/rs6000/powerpc-64.c: Regenerate.
* features/rs6000/power-linux.xml: New file.
* features/rs6000/power64-linux.xml: New file.
* features/rs6000/powerpc-32l.xml: New file.
* features/rs6000/powerpc-altivec32l.xml: New file.
* features/rs6000/powerpc-64l.xml: New file.
* features/rs6000/powerpc-altivec64l.xml: New file.
* features/rs6000/powerpc-e500l.xml: New file.
* features/rs6000/powerpc-32l.c: New (generated) file.
* features/rs6000/powerpc-altivec32l.c: New (generated) file.
* features/rs6000/powerpc-64l.c: New (generated) file.
* features/rs6000/powerpc-altivec64l.c: New (generated) file.
* features/rs6000/powerpc-e500l.xml: New (generated) file.
* regformats/reg-ppc.dat: Remove.
* regformats/reg-ppc64.dat: Remove.
* regformats/rs6000/powerpc-32.dat: Remove.
* regformats/rs6000/powerpc-64.dat: Remove.
* regformats/rs6000/powerpc-e500.dat: Remove.
* regformats/rs6000/powerpc-32l.dat: New (generated) file.
* regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
* regformats/rs6000/powerpc-64l.dat: New (generated) file.
* regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
* regformats/rs6000/powerpc-e500l.dat: New (generated) file.
gdbserver/ChangeLog:
* configure.srv (powerpc*-*-linux*): Set srv_regobj to
powerpc-32l.o, powerpc-altivec32l.o, powerpc-e500l.o,
powerpc-64l.o, and powerpc-altivec64l.o.
Remove rs6000/powerpc-32.xml, rs6000/powerpc-64.xml, and
rs6000/powerpc-e500.xml; add rs6000/powerpc-32l.xml,
rs6000/powerpc-altivec32l.xml, rs6000/powerpc-e500l.xml,
rs6000/powerpc-64l.xml, rs6000/powerpc-altivec64l.xml,
rs6000/power-linux.xml, and rs6000/power64-linux.xml
to srv_xmlfiles.
* Makefile.in (reg-ppc.o, reg-ppc.c): Remove, replace by ...
(powerpc-32l.o, powerpc-32l.c): ... these new rules.
(powerpc-32.o, powerpc-32.c): Remove, replace by ...
(powerpc-altivec32l.o, powerpc-altivec32l.c): ... these new rules.
(powerpc-e500.o, powerpc-e500.c): Remove, replace by ...
(powerpc-e500l.o, powerpc-e500l.c): ... these new rules.
(reg-ppc64.o, reg-ppc64.c): Remove, replace by ...
(powerpc-64l.o, powerpc-64l.c): ... these new rules.
(powerpc-64.o, powerpc-64.c): Remove, replace by ...
(powerpc-altivec64l.o, powerpc-altivec64l.c): ... these new rules.
(clean): Update.
* linux-ppc-low.c (init_registers_ppc): Remove, replace by ...
(init_registers_powerpc_32l): ... this new prototype.
(init_registers_powerpc_32): Remove, replace by ...
(init_registers_powerpc_altivec32l): ... this new prototype.
(init_registers_powerpc_e500): Remove, replace by ...
(init_registers_powerpc_e500l): ... this new prototype.
(init_registers_ppc64): Remove, replace by ...
(init_registers_powerpc_64l): ... this new prototype.
(init_registers_powerpc_64): Remove, replace by ...
(init_registers_powerpc_altivec64l): ... this new prototype.
(ppc_num_regs): Set to 73.
(PT_ORIG_R3, PT_TRAP): Define if necessary.
(ppc_regmap, ppc_regmap_e500): Add values for orig_r3 and trap.
(ppc_cannot_store_register): Handle orig_r3 and trap.
(ppc_arch_setup): Update init_registers_... calls.
(ppc_fill_gregset): Handle orig_r3 and trap.
* inferiors.c (clear_inferiors): Reset current_inferior.
instead of linux-ppc64-low.o.
* linux-ppc64-low.c: Remove file.
* Makefile.in (SFILES): Remove linux-ppc64-low.c.
(linux-ppc64-low.o): Remove rule.
* linux-ppc-low.c (init_registers_ppc64): Add prototype.
(init_registers_powerpc_64): Likewise.
(ppc_regmap): Conditionally define depending on __powerpc64__.
(ppc_cannot_store_register): Do not special-case "fpscr" when
compiled on __powerpc64__.
(ppc_collect_ptrace_register): New function.
(ppc_supply_ptrace_register): New function.
(ppc_breakpoint): Change type to "unsigned int".
(ppc_breakpoint_at): Change type of "insn" to "unsigned int".
(the_low_target): Conditionally provide initializers for the
arch_setup member depending on __powerpc64__. Install
collect_ptrace_register and supply_ptrace_register members.
mips64-linux.
* features/sort-regs.xsl: Correct typo.
* regformats/reg-mips.dat, regformats/reg-mips64.dat: Delete.
* regformats/mips-linux.dat, regformats/mips64-linux.dat: New generated
files.
* Makefile.in (clean): Clean new files instead of deleted ones.
(reg-mips.o, reg-mips.c, reg-mips64.o, reg-mips64.c): Delete.
(mips-linux.o, mips-linux.c, mips64-linux.o, mips64-linux.c): New
rules.
* configure.srv: Specify XML files and new regformats for MIPS and
MIPS64 GNU/Linux.
* linux-mips-low.c (mips_num_regs): Set to only used registers.
(mips_regmap): Do not fetch $0. Remove unused registers. Add
an entry for the restart register.
(mips_cannot_fetch_register, mips_cannot_store_register)
(mips_reinsert_addr, mips_fill_fpregset, mips_store_fpregset): Update
register names to match the XML descriptions.
(mips_fill_gregset, mips_store_gregset): Likewise. Handle the
restart register instead of $0.
* configure.tgt: Build gdbserver for Cygwin and mingw32.
gdb/gdbserver/
* configure.ac: Check for more headers which are missing on
Windows. Automatically supply -lwsock32 and USE_WIN32API.
* configure.srv: Add Cygwin and mingw32.
* remote-utils.c: Don't include headers unconditionally which
are missing on mingw32. Include <winsock.h> for mingw32.
(remote_open): Adjust for mingw32 support. Flush
standard error after writing to it.
(remote_close, putpkt_binary, input_interrupt, block_async_io)
(unblock_async_io, enable_async_io, disable_async_io)
(readchar, getpkt): Update for Winsock support.
(prepare_resume_reply): Expect a protocol signal number.
* server.c: Disable <sys/wait.h> on mingw32.
(start_inferior): Adjust for mingw32 support. Flush
standard error after writing to it.
(attach_inferior): Likewise. Use protocol signal
numbers.
(main): Skip 'D' packet on mingw32. Use protocol signal numbers
and names.
* win32-i386-low.c: New file.
* Makefile.in (XM_CLIBS): Set.
(gdbserver, gdbreplay): Use $(INTERNAL_CFLAGS).
(win32-i386-low.o): New dependency rule.
* linux-low.c (linux_wait): Use target signal numbers.
* target.h (struct target_ops): Doc fix.
* server.h (target_signal_to_name): New prototype.
* gdbreplay.c: Don't include headers unconditionally which
are missing on mingw32. Include <winsock.h> for mingw32.
(remote_close, remote_open): Adjust for Winsock support.
* configure, config.in: Regenerated.
* gdb_proc_service.h: New file.
* linux-i386-low.c, linux-x86-64-low.c, thread-db.c: Use the
new "gdb_proc_service.h".
* proc-service.c: Likewise.
(ps_pglobal_lookup, ps_pdread, ps_pdwrite): Use psaddr_t.
(ps_lgetfpregs, ps_lsetfpregs): Use a void* argument.
* Makefile.in (gdb_proc_service_h): Updated.
* configure, config.in: Regenerated.
* linux-cris-low.c: New file with support for CRIS.
* linux-crisv32-low.c: Ditto for CRISv32.
* Makefile.in (SFILES): Add linux-cris-low.c, linux-crisv32-low.c.
(clean): Add reg-cris.c and reg-crisv32.c.
Add linux-cris-low.o, linux-crisv32-low.o, reg-cris.o, reg-cris.c,
reg-crisv32.o, and reg-crisv32.c to make rules.
* configure.srv: Add cris-*-linux* and crisv32-*-linux* to list of
recognized targets.
2003-08-08 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.in (FLAGS_TO_PASS): Add DESTDIR.
(install-only): Support DESTDIR.
(uninstall): Likewise.
(install-gdbtk): Likewise.
gdb/doc/
2003-08-08 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.in (install-info): Support DESTDIR.
(install-html): Likewise.
gdb/gdbserver/
2003-08-08 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.in (install-only): Create dest dir. Support DESTDIR.
(uninstall): Support DESTDIR.
mmalloc/
2003-08-08 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.in (install-info): Create dest dir. Support DESTDIR.
(install): Likewise.