1/*
2 * QuickThreads -- Threads-building toolkit.
3 * Copyright (c) 1993 by David Keppel
4 *
5 * Permission to use, copy, modify and distribute this software and
6 * its documentation for any purpose and without fee is hereby
7 * granted, provided that the above copyright notice and this notice
8 * appear in all copies.  This software is provided as a
9 * proof-of-concept and for demonstration purposes; there is no
10 * representation about the suitability of this software for any
11 * purpose.
12 */
13
14	.text
15	.globl b_call_reg
16	.globl b_call_imm
17	.globl b_add
18	.globl b_load
19
20	.ent b_null
21b_null:
22	ret $31,($18),1
23	.end b_null
24
25	.ent b_call_reg
26b_call_reg:
27	lda $27,b_null
28$L0:
29	jsr $18,($27)
30	jsr $18,($27)
31	jsr $18,($27)
32	jsr $18,($27)
33	jsr $18,($27)
34
35	jsr $18,($27)
36	jsr $18,($27)
37	jsr $18,($27)
38	jsr $18,($27)
39	jsr $18,($27)
40
41	subq $16,1,$16
42	bgt $16,$L0
43
44	ret $31,($26),1
45	.end
46
47
48	.ent b_call_imm
49b_call_imm:
50$L1:
51	jsr $18,b_null
52	jsr $18,b_null
53	jsr $18,b_null
54	jsr $18,b_null
55	jsr $18,b_null
56
57	jsr $18,b_null
58	jsr $18,b_null
59	jsr $18,b_null
60	jsr $18,b_null
61	jsr $18,b_null
62
63	subq $16,1,$16
64	bgt $16,$L1
65
66	ret $31,($26),1
67	.end
68
69
70	.ent b_add
71b_add:
72$L2:
73	addq $31,$31,$31
74	addq $31,$31,$31
75	addq $31,$31,$31
76	addq $31,$31,$31
77	addq $31,$31,$31
78
79	addq $31,$31,$31
80	addq $31,$31,$31
81	addq $31,$31,$31
82	addq $31,$31,$31
83	addq $31,$31,$31
84
85	subq $16,1,$16
86	bgt $16,$L2
87
88	ret $31,($26),1
89	.end
90
91
92	.ent b_load
93b_load:
94$L3:
95	ldq $31,0($30)
96	ldq $31,8($30)
97	ldq $31,16($30)
98	ldq $31,24($30)
99	ldq $31,32($30)
100
101	ldq $31,0($30)
102	ldq $31,8($30)
103	ldq $31,16($30)
104	ldq $31,24($30)
105	ldq $31,32($30)
106
107	subq $16,1,$16
108	bgt $16,$L3
109
110	ret $31,($26),1
111	.end
112