BSD 4 release
[unix-history] / usr / src / cmd / px / 20con.s
index 08eea6a..8ca853d 100644 (file)
@@ -1,15 +1,24 @@
 #\f
 #\f
-# 20con.s
+# Copyright (c) 1979 Regents of the University of California
+#
+# char sccsid[] = "@(#)20con.s 4.1 10/10/80";
 #
 # CONOPS
 #
 _CON1:
        cvtbw   (r10)+,-(sp)
        jmp     (r8)
 #
 # CONOPS
 #
 _CON1:
        cvtbw   (r10)+,-(sp)
        jmp     (r8)
+_CON14:
+       cvtbl   (r10)+,-(sp)
+       jmp     (r8)
 _CON2:
        incl    r10
        movw    (r10)+,-(sp)
        jmp     (r8)
 _CON2:
        incl    r10
        movw    (r10)+,-(sp)
        jmp     (r8)
+_CON24:
+       incl    r10
+       cvtwl   (r10)+,-(sp)
+       jmp     (r8)
 _CON4:
        incl    r10
        pushl   (r10)+
 _CON4:
        incl    r10
        pushl   (r10)+
@@ -21,7 +30,7 @@ _CON8:
 _CON:
        cvtbl   (r10)+,r0
        bneq    l2001
 _CON:
        cvtbl   (r10)+,r0
        bneq    l2001
-       cvtwl   (r10)+,r0       #r0 has length to be moved
+       movzwl  (r10)+,r0       #r0 has length to be moved
 l2001:
        movl    r10,r1          #r1 has addr of data to be moved
        movl    r0,r2           #r2 has length of stack space
 l2001:
        movl    r10,r1          #r1 has addr of data to be moved
        movl    r0,r2           #r2 has length of stack space
@@ -32,3 +41,11 @@ l2002:
        addl2   r2,r10          #advance over data
        movc5   r0,(r1),$0,r2,(sp)   #move string to stack
        jmp     (r8)
        addl2   r2,r10          #advance over data
        movc5   r0,(r1),$0,r2,(sp)   #move string to stack
        jmp     (r8)
+_LVCON:
+       cvtbl   (r10)+,r0       #r0 has literal string length
+       bneq    l2003
+       movzwl  (r10)+,r0
+l2003:
+       pushl   r10             #address of literal
+       addl2   r0,r10          #jump over literal
+       jmp     (r8)