| /* |
| * QuickThreads -- Threads-building toolkit. |
| * Copyright (c) 1993 by David Keppel |
| * |
| * Permission to use, copy, modify and distribute this software and |
| * its documentation for any purpose and without fee is hereby |
| * granted, provided that the above copyright notice and this notice |
| * appear in all copies. This software is provided as a |
| * proof-of-concept and for demonstration purposes; there is no |
| * representation about the suitability of this software for any |
| * purpose. |
| */ |
| |
| .text |
| .globl _b_call_reg |
| .globl _b_call_imm |
| .globl _b_add |
| .globl _b_load |
| |
| _b_null: |
| .word 0x0 |
| ret |
| |
| _b_call_reg: |
| .word 0x0 |
| movl 4(ap),r0 |
| moval _b_null,r1 |
| L0: |
| calls $0,(r1) |
| calls $0,(r1) |
| calls $0,(r1) |
| calls $0,(r1) |
| calls $0,(r1) |
| |
| subl2 $5,r0 |
| bgtr L0 |
| ret |
| |
| |
| _b_call_imm: |
| .word 0x0 |
| movl 4(ap),r0 |
| L1: |
| calls $0,_b_null |
| calls $0,_b_null |
| calls $0,_b_null |
| calls $0,_b_null |
| calls $0,_b_null |
| |
| subl2 $5,r0 |
| bgtr L1 |
| ret |
| |
| |
| _b_add: |
| .word 0x0 |
| movl 4(ap),r0 |
| L2: |
| subl2 $1,r0 |
| subl2 $1,r0 |
| subl2 $1,r0 |
| subl2 $1,r0 |
| subl2 $1,r0 |
| |
| subl2 $1,r0 |
| subl2 $1,r0 |
| subl2 $1,r0 |
| subl2 $1,r0 |
| subl2 $1,r0 |
| |
| bgtr L2 |
| ret |
| |
| |
| _b_load: |
| .word 0x0 |
| movl 4(ap),r0 |
| L3: |
| movl 0(sp),r1 |
| movl 4(sp),r1 |
| movl 8(sp),r1 |
| movl 12(sp),r1 |
| movl 16(sp),r1 |
| movl 20(sp),r1 |
| movl 24(sp),r1 |
| movl 28(sp),r1 |
| movl 32(sp),r1 |
| movl 36(sp),r1 |
| |
| subl2 $1,r0 |
| bgtr L3 |
| ret |