aboutsummaryrefslogtreecommitdiff
path: root/sim/ppc
diff options
context:
space:
mode:
authorMichael Meissner <gnu@the-meissners.org>1996-10-29 23:02:33 +0000
committerMichael Meissner <gnu@the-meissners.org>1996-10-29 23:02:33 +0000
commitb9f74e0b24763839d304954ded9d34b4b474e14c (patch)
tree29700038f5d76da2519c74931e60123d6a847905 /sim/ppc
parent3c02d99662c785bdfe4a5206a7352fa73f4e7d4a (diff)
downloadfsf-binutils-gdb-b9f74e0b24763839d304954ded9d34b4b474e14c.zip
fsf-binutils-gdb-b9f74e0b24763839d304954ded9d34b4b474e14c.tar.gz
fsf-binutils-gdb-b9f74e0b24763839d304954ded9d34b4b474e14c.tar.bz2
Add access, sigaltstack, sigaction emulations
Diffstat (limited to 'sim/ppc')
-rw-r--r--sim/ppc/ChangeLog205
-rw-r--r--sim/ppc/configure.in2
2 files changed, 206 insertions, 1 deletions
diff --git a/sim/ppc/ChangeLog b/sim/ppc/ChangeLog
index 5dc6133..3914b6b 100644
--- a/sim/ppc/ChangeLog
+++ b/sim/ppc/ChangeLog
@@ -1,3 +1,163 @@
+Tue Oct 29 17:55:43 1996 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * configure.in (AC_CHECK_FUNCS): Add access.
+ * config{.in,ure}: Regenerate.
+
+ * emul_unix.c (do_unix_nop): System call that always succeeds.
+ (do_unix_access): Support access system call.
+ (solaris_descriptors): Make sigaltstack and sigaction nops.
+ ({solaris,linux}_descriptors): Add support for access.
+
+Fri Oct 18 12:12:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * ppc-instructions (Floating Select): Add support for fsel unless
+ model is 601. Allow user to filter out instruction unless -Fs is
+ passed to igen.
+ (Store Floating-Point as Integer Word Indexed): Raise optional
+ instruction program abort. Allow user to filter out instruction
+ unless -Fs is passed to igen.
+ (Floating Square Root{, Single}): Ditto.
+ (Floating Reciprocal Estimate Single): Ditto.
+ (Floating Reciprocal Square Root Estimate): Ditto.
+
+ * configure.in (--enable-sim-filter): If not passed, pass 32,f,s
+ to igen.
+ * configure: Regenerate.
+
+ * interrupts.h (program_interrupt_reasons): Add
+ optional_instruction_program_interrupt.
+
+ * interrupts.c (program_interrupt): Call error with more detailed
+ information on program interrupts, particularly in user mode. Add
+ support for optional_instruction_program_interrupt.
+
+Thu Oct 3 16:15:20 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
+
+ * Makefile.in (clean): Move config.log to distclean.
+
+Thu Sep 19 14:40:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * debug.h: Add disklabel-package and disk-device trace options.
+ debug.h (PTRACE): Add macro to simplify tracing in packages.
+
+Thu Sep 19 14:40:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * device.c (device_create_instance_from): Tighten up loop
+ searching for device instances.
+ (device_instance_delete): Ditto.
+ (device_instance_delete): Only leaf instances need to be removed
+ from a devices list of active instances.
+
+Thu Sep 19 14:40:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * hw_disk.c: Add the cdrom as an alias.
+
+ * pk_disklabel.c (disklabel_delete): Implement, remembering to
+ delete the raw disk instance while we're at it.
+
+ * pk_disklabel.c (pk_disklabel_create_instance): Implement a
+ little bit more - still a long way to go.
+
+ * pk_disklabel.c (disklabel_write, disklabel_read): Remember the
+ new head position after a read or write.
+
+Thu Sep 19 13:05:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * emul_chirp.c (chirp_emul_read): Allow reads to be longer then
+ the internal buffer.
+
+Thu Sep 19 13:05:40 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * emul_chirp.c (chirp_read_t2h_args): Call memset-0 with the args
+ in the correct order.
+
+ * emul_chirp.c (chirp_emul_call_method): Correct computation for
+ the address of the first stack argument passed in from the client
+ program.
+
+Wed Sep 18 19:33:54 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * words.h: Add new types signed_cell and unsigned_cell which
+ correspond to the signed and unsigned IEEE 1275 memory locations.
+ * device.h, device.c, emul_chirp.c: Where refering to an IEEE 1275
+ memory cell, replace uses of unsigned32 with unsigned_cell.
+ * device_table.h: Ditto.
+
+ * sim-endian.h: Add new macros H2BE_cell and BE2H_cell which
+ convert cell sized values to from big endian.
+ * device.c, emul_chirp.c: Where refering to IEEE 1275 memory cells
+ use these new macros.
+
+Tue Sep 17 15:57:44 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * device.c (device_tree_add_parsed): Detect and report an
+ interrupt being attached to an invalid device. Was dumping core.
+
+Mon Sep 16 23:09:12 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * device.h, device.c (device_address_to_attach_address,
+ device_size_to_attach_size): New functions. Convert a devices
+ unit address or unit size structure into a form suitable for
+ passing on to the attach and detach functions.
+ * device_table.h: Add extra methods to device table.
+
+ * device.h, device.c (device_find_reg_property): New function.
+ For a reg type property, return the selected address + size
+ tupple, along with a positive success status. Add a reg_property
+ to the list of property types.
+ * (device_tree_add_parsed): Make array properties with the name
+ reg or alternate-reg of type reg_property.
+
+ * hw_memory.c (hw_memory_init_address): Rewrite to use new
+ find_reg_property method.
+ * hw_nvram.c (hw_nvram_init_address): Ditto.
+
+ * device.c (device_tree_print_device): Add code to print out a reg
+ property.
+
+ * device_table.c (generic_device_address_to_attach_address,
+ generic_device_size_to_attach_size ): New functions. Generic
+ functions for converting between unit and attach address or size.
+
+ * device_table.c (generic_device_init_address): Rewrite to use the
+ new find_reg and address convert functions. Look for both reg and
+ alternate-reg properties.
+
+Mon Sep 16 23:09:12 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * hw_com.c: New file. A '550 serial device that can quickly be
+ attached to any bus.
+ * configure.in (enable-sim-hardware): Add the com device.
+ * configure: re-generate.
+
+Thu Sep 12 17:30:56 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * device.c (device_tree_verify_reg_unit_address): New
+ function. Check that the unit address as specified by the reg
+ property correctly corresponds to any unit address previously
+ specified by the devices name.
+ (device_tree_add_parsed): When adding a reg property, verify
+ that the unit-address - first value of property - correctly
+ matches any previous value specified when creating the device
+ node.
+
+Thu Sep 12 17:30:56 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * mon.c (mon_event): Remove assertion that an unsigned is >= 0.
+
+Fri Aug 16 12:05:24 1996 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * device.c (device_full_name): Cast strdup to char *, since AIX
+ 3.2.5 mistakenly declares the function to be const char *.
+ (device_create_from): Ditto.
+ (device_create_instance_from): Ditto.
+ (device_add_property): Ditto.
+
+Tue Aug 13 11:40:14 1996 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * debug.c (trace_option): For -t all, do not set the
+ trace_dump_device_tree flag, so that the simulator is run.
+
Tue Aug 13 11:40:14 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* Makefile.in (options.o): Depend on defines.h.
@@ -30,6 +190,8 @@ Wed Aug 7 14:34:20 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* emul_unix.c (HAVE_TCGETATTR): If HAVE_TERMIOS_STRUCTURE is not
defined, make sure HAVE_TCGETATTR is #undef'ed
+Wed Aug 7 14:34:20 1996 Michael Meissner <meissner@tiktok.cygnus.com>
+
* std-config.h (REGPARM): Only define REGPARM attributes if using
GNU C. Test for __i686__ in case GCC ever defines it. If not on
a x86 platform, define REGPARM as nothing.
@@ -37,6 +199,28 @@ Wed Aug 7 14:34:20 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* sim-endian.h (WITH_HOST_BYTE_ORDER): Test for i686 and __i686__
also.
+Wed Aug 7 20:19:55 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * ld-decode.h, ld-decode.c: Rename goto_gen to the more correct
+ goto_switch_gen.
+ * gen-idecode.c: Ditto.
+
+ * gen-idecode.c (print_idecode_table): Comment out check for
+ switch/table combination until a bug with it is fixed.
+
+ * ppc-opcode-goto: New file. Like complex and flat but uses
+ goto-switch instead of padded-switch for the tables.
+
+ * gen-idecode.c (print_goto_switch_name): New function.
+ (print_goto_switch_table_leaf): New function.
+ (print_goto_switch_break): New function.
+ (print_goto_switch_table): New function. Prints a jump table
+ that can be jumped into instead of a switch statement.
+
+ * gen-idecode.c (*switch_*): As an option output a switch that is
+ implemented using a jump table but only if the switch is not
+ boolean.
+
Tue Aug 6 09:28:22 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* configure.in (--enable-sim-{hardware,packages}): Fix typos.
@@ -46,6 +230,27 @@ Tue Aug 6 09:28:22 1996 Michael Meissner <meissner@tiktok.cygnus.com>
error case. Return 0 in case of error to shut up compiler
warnings.
+Wed Aug 7 00:17:37 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * device_table.c (generic_device_unit_decode): Require a comma
+ between elements of a unit address.
+
+ * device.c (device_tree_print_device): For reg, alternate-reg and
+ ranges properties use special print functions.
+ (device_print_ranges_property): Print formatted ranges property.
+ (device_print_reg_property): Print formatted reg property.
+
+Tue Aug 6 21:35:18 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
+
+ * device.c (device_tree_add_parsed): For reg, ranges and
+ alternate-reg properties use a special parser.
+ (device_tree_parse_reg_property): New function to parse a reg
+ property.
+ (device_tree_parse_ranges_property): New function to parse a
+ ranges property.
+ (device_encode_unit): Wrapper for encode_unit callback.
+ (device_decoce_unit): Wrapper for decode_unit callback.
+
Wed Jul 31 00:02:30 1996 Andrew Cagney <cagney@kremvax.highland.com.au>
* device_table.h (device_instance_callbacks): Relace the claim and
diff --git a/sim/ppc/configure.in b/sim/ppc/configure.in
index e87f6e2..7662740 100644
--- a/sim/ppc/configure.in
+++ b/sim/ppc/configure.in
@@ -518,7 +518,7 @@ AC_TYPE_SIGNAL
AC_TYPE_SIZE_T
AC_TYPE_UID_T
-AC_CHECK_FUNCS(cfgetispeed cfgetospeed cfsetispeed cfsetospeed chdir chmod chown dup dup2 fchmod fchown fcntl fstat fstatfs getdirentries getegid geteuid getgid getpid getppid getrusage gettimeofday getuid ioctl kill link lseek lstat mkdir pipe readlink rmdir setreuid setregid stat sigprocmask stat symlink tcgetattr tcsetattr tcsendbreak tcdrain tcflush tcflow tcgetpgrp tcsetpgrp time umask unlink)
+AC_CHECK_FUNCS(access cfgetispeed cfgetospeed cfsetispeed cfsetospeed chdir chmod chown dup dup2 fchmod fchown fcntl fstat fstatfs getdirentries getegid geteuid getgid getpid getppid getrusage gettimeofday getuid ioctl kill link lseek lstat mkdir pipe readlink rmdir setreuid setregid stat sigprocmask stat symlink tcgetattr tcsetattr tcsendbreak tcdrain tcflush tcflow tcgetpgrp tcsetpgrp time umask unlink)
AC_CHECK_HEADERS(fcntl.h stdlib.h string.h strings.h sys/ioctl.h sys/mount.h sys/param.h sys/resource.h sys/stat.h sys/termio.h sys/termios.h sys/time.h sys/times.h sys/types.h time.h unistd.h)
AC_HEADER_DIRENT