Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .data
- saved_ret_pc: .word 0
- yes_error: .asciiz "Failure!\n"
- no_error: .asciiz "No Error!\n"
- .text
- .globl main
- # Commands to verify
- # arithmetic: addu, addiu
- # logical: and, or, andi
- # compare: slt, slti
- # control: beq, bne, j
- #
- # broken:
- # bne $0 9 branch
- #
- #
- # working:
- # bne $0 0 branch
- #
- main:
- sw $31 saved_ret_pc
- # if bne works
- case1:
- addiu $s0 $0 0
- bne $s0 0 error
- j case2
- case2:
- addiu $s0 $0 1
- bne $s0 9 finish
- j error
- #No failure found. Return from main
- return:
- lw $31 saved_ret_pc
- jr $31 # Return from main
- error:
- #Print failure reason
- li $v0 4
- la $a0 yes_error
- syscall
- j return
- finish:
- li $v0 4
- la $a0 no_error
- syscall
- j return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement