Added an array bound checking procedure
This commit is contained in:
parent
33f80c6eef
commit
134869ad1a
|
@ -33,6 +33,7 @@ blockmove.c
|
||||||
stackprio.c
|
stackprio.c
|
||||||
ChkCards.e
|
ChkCards.e
|
||||||
EM.e
|
EM.e
|
||||||
|
rcka.e
|
||||||
rcku.e
|
rcku.e
|
||||||
rcki.e
|
rcki.e
|
||||||
rckul.e
|
rckul.e
|
||||||
|
|
31
lang/m2/libm2/rcka.e
Normal file
31
lang/m2/libm2/rcka.e
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
#
|
||||||
|
;
|
||||||
|
; (c) copyright 1988 by the Vrije Universiteit, Amsterdam, The Netherlands.
|
||||||
|
; See the copyright notice in the ACK home directory, in the file "Copyright".
|
||||||
|
;
|
||||||
|
;
|
||||||
|
; Module: range checks for INTEGER, now for array indexing
|
||||||
|
; Author: Ceriel J.H. Jacobs
|
||||||
|
; Version: $Header$
|
||||||
|
;
|
||||||
|
#include <em_abs.h>
|
||||||
|
|
||||||
|
mes 2,EM_WSIZE,EM_PSIZE
|
||||||
|
exp $rcka
|
||||||
|
pro $rcka, 0
|
||||||
|
|
||||||
|
lol EM_PSIZE
|
||||||
|
zlt *1 ; lower bound always 0
|
||||||
|
lol EM_PSIZE
|
||||||
|
lal 0
|
||||||
|
loi EM_PSIZE
|
||||||
|
adp EM_WSIZE
|
||||||
|
loi EM_WSIZE
|
||||||
|
cmi EM_WSIZE
|
||||||
|
zgt *1
|
||||||
|
ret 0
|
||||||
|
1
|
||||||
|
loc EARRAY
|
||||||
|
trp
|
||||||
|
ret 0
|
||||||
|
end 0
|
Loading…
Reference in a new issue