# Copyright (c) 1979 Regents of the University of California
# char sccsid[] = "@(#)02relset.s 4.1 10/10/80";
cvtbl (r10)+,r5 #r5 has jump opcode
movzwl (r10)+,r1 #r1 has comparison length (bytes)
movl r1,r4 #r4 has stack length
addl3 sp,r4,r3 #r3 has addr of lower operand
addl2 r3,r4 #r4 points to cleared stack
jsb *settab(r5) #calc condition, return boolean in r0
cmpl r5,$20 #check for branch
movw r0,-(sp) #put boolean on stack
addl2 $2,r10 #continue on true
cvtwl (r10),r0 #skip on false
settab: #condition code branch table
.long seteq #generate boolean answer
.long seteq #branch on condition false
moval 4(sp),r2 #skip over return address
bneq l0216 #need only check <= for remainder of set
bneq l0219 #need only check >= for remainder of set