allocation check was still incorrect when the ap+size overflows and

shows up to be less than the end of allocation pointer.
This commit is contained in:
Abdulaziz Ghuloum 2008-05-25 15:32:22 -07:00
parent 7f0f127081
commit b74e3976df
3 changed files with 8 additions and 6 deletions

Binary file not shown.

View File

@ -487,11 +487,13 @@
(define (alloc-check size) (define (alloc-check size)
(E (make-shortcut (E (make-shortcut
(make-conditional ;;; PCB ALLOC-REDLINE (make-conditional ;;; PCB ALLOC-REDLINE
(make-primcall 'u<= (make-primcall '>=
(list (make-primcall 'int+ (list apr size)) (list (make-primcall 'int-
(list
(make-primcall 'mref (make-primcall 'mref
(list pcr (list pcr (make-constant pcb-allocation-redline)))
(make-constant pcb-allocation-redline))))) apr))
size))
(make-primcall 'nop '()) (make-primcall 'nop '())
(make-primcall 'interrupt '())) (make-primcall 'interrupt '()))
(make-funcall (make-funcall

View File

@ -1 +1 @@
1488 1489