- Jan 04, 1998
-
-
dtc authored
stream input blocking when there are other runnable processes.
-
dtc authored
sys:wait-until-fd-usable but uses process-wait so avoids blocking if there are other runnable processes. Redefine the sleep function to use process-wait-with-timeout to avoid blocking if there are other runnable processes.
-
- Jan 03, 1998
-
-
dtc authored
-
- Jan 02, 1998
- Jan 01, 1998
-
-
dtc authored
Update the eval-stack for the current stack-group when scrubbing to ensuring that the stack-top is valid and maybe flush an old stored vector. Completely scrub the stored binding stack for the current stack group. Implement the lock waiting in a separate function rather than inlining. This ensures that the wait predicate is fast native code so that locking in byte-compiled and interpreted code doesn't slow the scheduler.
-
- Dec 31, 1997
-
-
pw authored
which probably caused trouble on some systems. Error traced to bogus call to register_garbage in RXtSetValues and RXtGetValues. Had to add such a call in message_read_resource_names. Also added a scan of the garbage_list prior to adding something new with a warning message if things seem wrong.
-
dtc authored
the saved stack vectors.
-
dtc authored
rather than inheriting the current stack. Add support for scrubbing the binding and eval stacks of all the processes - call this before GC.
-
dtc authored
stack should be setup or the current stack copied.
-
dtc authored
with-scheduling, otherwise debugging can be rather problematic - could use some more thought.
-
dtc authored
stacks rather than inheriting those of the current stack group. The alien stack, the eval stack, and the shallow bindings are allocated afresh for the new stack-group, but some work on the VOPs is needed to handle the control stack. Initial bindings for the following symbols are setup by default: * ** *** - + ++ +++ /// // /. Exploit this new option during the creation of new processes. The user visible change is that new processes now have a fresh set of bindings rather than inheriting those of the parent process. During the unwinding and rebinding of the binding stacks there is the possibility that *interrupts-enabled* will briefly set to true which may cause an unexpected interrupt. For now mask the interrupts during the binding stack switch; a better fix may be to implement these functions in assembly routines using pseudo-atomic to block interrupts.
-
- Dec 30, 1997
-
-
dtc authored
-
dtc authored
all the processes giving them some chance to unwinding, before shutting down multi-processing. Can be restarted by init-multi-processing. Ensure that processes are activated when sent an interrupt by destroy-process, otherwise inactive processes can't be destroyed.
-
dtc authored
page; null pointers are common so this is a handy special case.
-
dtc authored
possible from the initial process). When a process throws to %end-of-the-world the exit value is noted in the *quitting-lisp* variable and further process creation is blocked. Have the idle loop try to gracefully destroy all the processes when *quitting-lisp* before exiting.
-
- Dec 29, 1997
-
-
dtc authored
handled by sub-serve-event.
-
dtc authored
server is waiting. This is used with the MP support to periodically call process-yield.
-
dtc authored
process switch: at process exits and processes interrupts.
-
dtc authored
yield, and at each process switch update the outgoing processes accrued real and run times. Three new functions: process-real-time, process-run-time, and process-idle-time. Add a verbose option to show-processes to prints these times.
-
- Dec 28, 1997
-
-
pw authored
warnings when &aux vars are used in defmethods
-
dtc authored
Based on toolkit.doc 1.1, with LaTeX formatting by Marco Antoniotti.
-
dtc authored
Based on internals.doc 1.1, with LaTeX formatting by Marco Antoniotti.
-
dtc authored
runnable processes. Take care not to schedule inactive processes.
-
- Dec 27, 1997
-
-
pw authored
-
dtc authored
descriptor to an (unsigned-byte 32) and thus limited this code to file descriptors less than 32, this was probably done to limit consing. Replace these with unix-fast-select, allowing the use of file descriptors upto fd-setsize (doesn't cons). Tested with over 128 FDs running CL-HTTP on FreeBSD.
-
- Dec 25, 1997
-
-
dtc authored
handlers, taking care to avoid SIG_DFL, and SIG_IGN which is equal to 1 on FreeBSD and looks like a forwarding point which causes trouble.
-
- Dec 22, 1997
-
-
dtc authored
* On the X86 port stack SCs may be placed in the list of operand preferred SCs and these are selected by emit-coerce-vop in preference to the register SCs because they happen to be defined first in vm.lisp. Since in most cases a register SC is preferable, emit-coerce-vop now searches these first. Note that there are a few VOPs on the X86 port for which a stack SC is preferable, typically when the argument must be in memory, e.g. integer to float coercion, so this could use a little move work. * Add-representation-costs ignores the representation costs for MOVE VOPs when the representation of neither argument has been determined. In this case select-tn-representation chooses the first possible representation which may not be the most appropriate, and which can be improved upon by delaying the choice for the MOVE VOPs. This patch modifies select-representations to use two passes. On the first pass ambiguous choices are ignored giving a better chance for the propagation of argument and result representations for the MOVE VOPs after which a second pass can make a better choice. This required an extension to select-tn-representation to return a second value indicating if a unique choice could be made.
-
- Dec 21, 1997
-
-
dtc authored
deriver functions when the given types are not either a numeric of member type.
-
- Dec 20, 1997
-
-
dtc authored
1.0) (complex float)) as the problems this was causing have been fixed elsewhere.
-
dtc authored
instruction, using an 8 bit test when possible. Exploit this for the various test instructions in the type VOPs. Enhance the fixnum check and predicate, generating faster and more compact code.
-
dtc authored
multitude of problems.
-
- Dec 19, 1997
- Dec 18, 1997
-
-
dtc authored
compiler/srctran.lisp o Modify prepare-arg-for-derive-type to convert member types to a union of member types of a single element. o Modify {one,two}-arg-derive-type to recognize single element member types and directly call the function to return a single-element member-type result. compiler/float-tran.lisp: o Random changes to match the changes in srctran.lisp o Sqrt derive-type optimizer: if the result is real the lower bound is >= 0, was defaulting to NIL in some cases.
-
dtc authored
type union and intersection which were all doing the opposition of what they should have. E.g. The intersection of (double-float 0d0) and (double-float (0d0)) was returning a bound of 0d0 whereas (0d0) is more restrictive.
-
dtc authored
if the argument is (0.0).
-
dtc authored
-
dtc authored
arrays; the number of bits is 128 in this case not (integer 1 64).
-
- Dec 17, 1997
-
-
dtc authored
here and it can fill up with a big core.
-