| /* |
| * 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. |
| */ |
| |
| .globl b_call_reg |
| .globl b_call_imm |
| .globl b_add |
| .globl b_load |
| |
| .ent b_null |
| b_null: |
| j $31 |
| .end b_null |
| |
| .ent b_call_reg |
| b_call_reg: |
| la $5,b_null |
| add $6, $31,0 |
| $L0: |
| jal $5 |
| jal $5 |
| jal $5 |
| jal $5 |
| jal $5 |
| |
| sub $4, $4,5 |
| bgtz $4,$L0 |
| j $6 |
| .end |
| |
| |
| .ent b_call_imm |
| b_call_imm: |
| add $6, $31,0 |
| $L1: |
| jal b_null |
| jal b_null |
| jal b_null |
| jal b_null |
| jal b_null |
| |
| sub $4, $4,5 |
| bgtz $4,$L1 |
| j $6 |
| .end |
| |
| |
| .ent b_add |
| b_add: |
| add $5, $0,$4 |
| add $6, $0,$4 |
| add $7, $0,$4 |
| add $8, $0,$4 |
| $L2: |
| sub $4, $4,5 |
| sub $5, $5,5 |
| sub $6, $6,5 |
| sub $7, $7,5 |
| sub $8, $8,5 |
| |
| sub $4, $4,5 |
| sub $5, $5,5 |
| sub $6, $6,5 |
| sub $7, $7,5 |
| sub $8, $8,5 |
| |
| bgtz $4,$L2 |
| j $31 |
| .end |
| |
| |
| .ent b_load |
| b_load: |
| $L3: |
| ld $0, 0($sp) |
| ld $0, 4($sp) |
| ld $0, 8($sp) |
| ld $0, 12($sp) |
| ld $0, 16($sp) |
| |
| ld $0, 20($sp) |
| ld $0, 24($sp) |
| ld $0, 28($sp) |
| ld $0, 32($sp) |
| ld $0, 36($sp) |
| |
| sub $4, $4,10 |
| bgtz $4,$L3 |
| j $31 |
| .end |