From 6ed907fa3faf5424fc8224708cb785f45a4a848f Mon Sep 17 00:00:00 2001 From: "Charles B. Haley" Date: Wed, 30 Nov 1977 00:19:47 -0800 Subject: [PATCH] BSD 1 development Work on file pi/loadprof Work on file pi/printparse Work on file pi/treen.s Work on file pi/putn.s Work on file pi/printpi Work on file pi/yycopy.s Co-Authored-By: Bill Joy Synthesized-from: 1bsd --- pi/loadprof | 1 + pi/printparse | 17 +++++++++++++++++ pi/printpi | 20 ++++++++++++++++++++ pi/putn.s | 29 +++++++++++++++++++++++++++++ pi/treen.s | 33 +++++++++++++++++++++++++++++++++ pi/yycopy.s | 20 ++++++++++++++++++++ 6 files changed, 120 insertions(+) create mode 100755 pi/loadprof create mode 100755 pi/printparse create mode 100755 pi/printpi create mode 100644 pi/putn.s create mode 100644 pi/treen.s create mode 100644 pi/yycopy.s diff --git a/pi/loadprof b/pi/loadprof new file mode 100755 index 0000000000..9eb42d42b1 --- /dev/null +++ b/pi/loadprof @@ -0,0 +1 @@ +ld -X -i ../assubs/mcrt0.o lib ../opcodes/TRdata.o -lc -l diff --git a/pi/printparse b/pi/printparse new file mode 100755 index 0000000000..4d234bda43 --- /dev/null +++ b/pi/printparse @@ -0,0 +1,17 @@ +pr printparse +cd ../man6 ; nroff naa pi.6 ; cd ../pi +pr READ_ME +ls -ls | pr +pr sizes +number pi_strings | pr -t +pr makepi +pr comp gram load whoami +pr ../opcodes/picture +a.out -C | pr +pr 0.h +pr main.c +pr pas.y +pr y.output +pr yy.h +pr yy*.c +pr error.c subr.c diff --git a/pi/printpi b/pi/printpi new file mode 100755 index 0000000000..0602bf6748 --- /dev/null +++ b/pi/printpi @@ -0,0 +1,20 @@ +pr printpi +pr READ_ME +pr how* +(cd ../man6 ; nroff naa pi.6 ; cd ../pi) +ls -ls | pr +pr sizes +number pi_strings | pr -t +pr makepi +pr comp gram load whoami +cxref *.c > XREF ; pr XREF +pr ../opcodes/picture +pi -C | pr +pr 0.h +pr main.c +pr pas.y +pr y.output +pr yy.h +pr yy*.c +pr [a-ln-x]*.c +pr putn.s treen.s yycopy.s diff --git a/pi/putn.s b/pi/putn.s new file mode 100644 index 0000000000..556de32979 --- /dev/null +++ b/pi/putn.s @@ -0,0 +1,29 @@ +.text +/ +/ routines to save space on put calls +/ +.globl _put, _put1, _put2, _put3, _put4 +/ +_put1: + mov (sp),putret + mov $1,(sp) + br 1f +_put2: + mov (sp),putret + mov $2,(sp) + br 1f +_put3: + mov (sp),putret + mov $3,(sp) + br 1f +_put4: + mov (sp),putret + mov $4,(sp) +1: + mov $1f,-(sp) + jmp _put +1: + tst (sp)+ + jmp *putret +.bss +putret: .=.+2 diff --git a/pi/treen.s b/pi/treen.s new file mode 100644 index 0000000000..3929b8d43d --- /dev/null +++ b/pi/treen.s @@ -0,0 +1,33 @@ +.text +/ +/ Routines to save space on tree calls +/ +.globl _tree, _tree1, _tree2, _tree3, _tree4, _tree5 +/ +_tree1: + mov (sp),trret + mov $1,(sp) + br 1f +_tree2: + mov (sp),trret + mov $2,(sp) + br 1f +_tree3: + mov (sp),trret + mov $3,(sp) + br 1f +_tree4: + mov (sp),trret + mov $4,(sp) + br 1f +_tree5: + mov (sp),trret + mov $5,(sp) +1: + mov $1f,-(sp) + jmp _tree +1: + tst (sp)+ + jmp *trret +.bss +trret: . = .+2 diff --git a/pi/yycopy.s b/pi/yycopy.s new file mode 100644 index 0000000000..a20732f7f1 --- /dev/null +++ b/pi/yycopy.s @@ -0,0 +1,20 @@ +.globl _Y, _OY, _OYcopy +/.globl _Ycopy + +_OYcopy: + mov $_OY,r0 + mov $_Y,r1 + mov r2,-(sp) +/0: + mov $8.,r2 +1: + mov (r1)+,(r0)+ + sob r2,1b + mov (sp)+,r2 + rts pc +/ +/_Ycopy: +/ mov 2(sp),r0 +/ mov 4(sp),r1 +/ mov r2,-(sp) +/ br 0b -- 2.20.1