2009-05-22 23:48:49 +03:00
|
|
|
.globl __start
|
|
|
|
|
|
|
|
__start:
|
|
|
|
bal 1f
|
|
|
|
.word _gp
|
|
|
|
1:
|
|
|
|
lw $gp, 0($ra)
|
|
|
|
la $v0, __my_receiver
|
|
|
|
sw $a0, ($v0)
|
2009-05-27 19:33:05 +03:00
|
|
|
la $v0, __my_thread
|
2009-05-22 23:48:49 +03:00
|
|
|
sw $a1, ($v0)
|
|
|
|
la $v0, __my_memory
|
|
|
|
sw $a2, ($v0)
|
2009-05-27 19:33:05 +03:00
|
|
|
la $v0, __my_call
|
2009-05-22 23:48:49 +03:00
|
|
|
sw $a3, ($v0)
|
|
|
|
la $t9, main
|
|
|
|
la $ra, 1f
|
|
|
|
jr $t9
|
|
|
|
nop
|
|
|
|
|
|
|
|
1:
|
|
|
|
// Generate an address fault.
|
|
|
|
lw $a0, -4($zero)
|
|
|
|
|
|
|
|
.comm __my_receiver, 4
|
2009-05-27 19:33:05 +03:00
|
|
|
.comm __my_thread, 4
|
2009-05-22 23:48:49 +03:00
|
|
|
.comm __my_memory, 4
|
2009-05-25 01:31:35 +03:00
|
|
|
.comm __my_call, 4
|