# Compiled By ToRAmcLiveIn: LiveOut: #LiveIn: LiveOut: .data #LiveIn: LiveOut: __newline: #LiveIn: LiveOut: .asciiz "\n" #store a newlineLiveIn: LiveOut: .text #LiveIn: LiveOut: .globl main #LiveIn: LiveOut: main: #LiveIn: LiveOut: #Program: Tris2LiveIn: LiveOut: li $s1,1 #LiveIn: LiveOut: $s1 li $s5,4 #LiveIn: $s1 LiveOut: $s5 $s1 b L1 #LiveIn: $s5 $s1 LiveOut: $s5 $s1 L0: #While StartLiveIn: $s5 LiveOut: $s5 move $s1,$zero #LiveIn: $s5 LiveOut: $s5 $s1 b L3 #LiveIn: $s5 $s1 LiveOut: $s5 $s1 L2: #While StartLiveIn: $s5 $s1 LiveOut: $s5 $s1 li $s0,2 #LiveIn: $s5 $s1 LiveOut: $s5 $s1 $s0 li $s2,1 #LiveIn: $s5 $s1 $s0 LiveOut: $s5 $s2 $s1 $s0 b L5 #LiveIn: $s5 $s2 $s1 $s0 LiveOut: $s5 $s2 $s1 $s0 L4: #While StartLiveIn: $s5 $s2 $s1 $s0 LiveOut: $s5 $s2 $s1 $s0 li $s4,2 #LiveIn: $s5 $s2 $s1 $s0 LiveOut: $s5 $s2 $s1 $s0 $s4 b L7 #LiveIn: $s5 $s2 $s1 $s0 $s4 LiveOut: $s5 $s2 $s1 $s0 $s4 L6: #While StartLiveIn: $s5 $s2 $s1 $s0 $s4 LiveOut: $s5 $s2 $s1 $s0 $s4 mul $s6,$s0,$s4 #LiveIn: $s5 $s2 $s1 $s0 $s4 $t0 $s7 LiveOut: $s5 $s6 $s2 $s1 $s0 $s4 bne $s6,$s5,L8 #LiveIn: $s5 $s6 $s2 $s1 $s0 $s4 $t0 LiveOut: $s5 $s2 $s1 $s0 $s4 move $s2,$zero #LiveIn: $s5 $s1 $s0 $s4 LiveOut: $s5 $s2 $s1 $s0 $s4 L8: #EndIf from an IfLiveIn: $s5 $s2 $s1 $s0 $s4 LiveOut: $s5 $s2 $s1 $s0 $s4 li $s6,1 #LiveIn: $s5 $s2 $s1 $s0 $t0 LiveOut: $s5 $s6 $s2 $s1 $s0 $t0 add $s4,$s4,$s6 #LiveIn: $s5 $s6 $s2 $s1 $s0 $t0 LiveOut: $s5 $s2 $s1 $s0 $s4 L7: #While ConditionLiveIn: $s5 $s2 $s1 $s0 $s4 LiveOut: $s5 $s2 $s1 $s0 $s4 move $s6,$s4 #LiveIn: $s5 $s2 $s1 $s0 $s4 LiveOut: $s5 $s6 $s2 $s1 $s0 $s4 blt $s6,$s5,L6 #LiveIn: $s5 $s6 $s2 $s1 $s0 $s4 $t0 LiveOut: $s5 $s2 $s1 $s0 $s4 li $s6,1 #LiveIn: $s5 $s2 $s1 $t0 LiveOut: $s5 $s6 $s2 $s1 $t0 add $s0,$s0,$s6 #LiveIn: $s5 $s6 $s2 $s1 $t0 LiveOut: $s5 $s2 $s1 $s0 L5: #While ConditionLiveIn: $s5 $s2 $s1 $s0 LiveOut: $s5 $s2 $s1 $s0 move $s6,$s0 #LiveIn: $s5 $s2 $s1 $s0 LiveOut: $s5 $s6 $s2 $s1 $s0 blt $s6,$s5,L4 #LiveIn: $s5 $s6 $s2 $s1 $s0 $t0 LiveOut: $s5 $s2 $s1 $s0 li $s0,2 #LiveIn: $s5 $s2 $s1 LiveOut: $s5 $s2 $s1 $s0 li $s3,1 #LiveIn: $s5 $s2 $s1 $s0 LiveOut: $s3 $s5 $s2 $s1 $s0 b L10 #LiveIn: $s3 $s5 $s2 $s1 $s0 LiveOut: $s3 $s5 $s2 $s1 $s0 L9: #While StartLiveIn: $s3 $s5 $s2 $s1 $s0 LiveOut: $s3 $s5 $s2 $s1 $s0 li $s4,2 #LiveIn: $s3 $s5 $s2 $s1 $s0 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 b L12 #LiveIn: $s3 $s5 $s2 $s1 $s0 $s4 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 L11: #While StartLiveIn: $s3 $s5 $s2 $s1 $s0 $s4 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 mul $t0,$s0,$s4 #LiveIn: $s3 $s5 $s6 $s2 $s1 $s0 $s4 $s7 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 $t0 bne $t0,$s5,L13 #LiveIn: $s3 $s5 $s2 $s1 $s0 $s4 $t0 $s7 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 move $s3,$zero #LiveIn: $s5 $s2 $s1 $s0 $s4 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 L13: #EndIf from an IfLiveIn: $s3 $s5 $s2 $s1 $s0 $s4 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 li $t0,1 #LiveIn: $s3 $s5 $s2 $s1 $s0 $s7 LiveOut: $s3 $s5 $s2 $s1 $s0 $t0 $s7 add $s4,$s4,$t0 #LiveIn: $s3 $s5 $s2 $s1 $s0 $t0 $s7 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 L12: #While ConditionLiveIn: $s3 $s5 $s2 $s1 $s0 $s4 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 move $t0,$s4 #LiveIn: $s3 $s5 $s2 $s1 $s0 $s4 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 $t0 blt $t0,$s5,L11 #LiveIn: $s3 $s5 $s2 $s1 $s0 $s4 $t0 $s7 LiveOut: $s3 $s5 $s2 $s1 $s0 $s4 li $t0,1 #LiveIn: $s3 $s5 $s2 $s1 $s7 LiveOut: $s3 $s5 $s2 $s1 $t0 $s7 add $s0,$s0,$t0 #LiveIn: $s3 $s5 $s2 $s1 $t0 $s7 LiveOut: $s3 $s5 $s2 $s1 $s0 L10: #While ConditionLiveIn: $s3 $s5 $s2 $s1 $s0 LiveOut: $s3 $s5 $s2 $s1 $s0 move $t0,$s0 #LiveIn: $s3 $s5 $s2 $s1 $s0 LiveOut: $s3 $s5 $s2 $s1 $s0 $t0 blt $t0,$s5,L9 #LiveIn: $s3 $s5 $s2 $s1 $s0 $t0 $s7 LiveOut: $s3 $s5 $s2 $s1 $s0 li $t0,1 #LiveIn: $s3 $s5 $s1 $s7 LiveOut: $s3 $s5 $s1 $t0 $s7 bne $s2,$t0,L14 #LiveIn: $s3 $s5 $s1 $t0 $s7 LiveOut: $s3 $s5 $s1 move $t0,$s3 #LiveIn: $s3 $s5 $s1 LiveOut: $s5 $s1 $t0 li $s7,1 #LiveIn: $s5 $s1 $t0 LiveOut: $s5 $s1 $t0 $s7 bne $t0,$s7,L14 #LiveIn: $s5 $s1 $t0 $s7 LiveOut: $s5 $s1 li $s1,1 #LiveIn: $s5 LiveOut: $s5 $s1 b L15 #LiveIn: $s5 $s1 LiveOut: $s5 $s1 L14: #Else -> ThenLiveIn: $s5 $s1 LiveOut: $s5 $s1 move $a0,$s5 #LiveIn: $s5 $s1 LiveOut: $s5 $s1 li $v0,1 #LiveIn: $s5 $s1 LiveOut: $s5 $s1 syscall #LiveIn: $s5 $s1 LiveOut: $s5 $s1 la $a0,__newline #LiveIn: $s5 $s1 LiveOut: $s5 $s1 li $v0,4 #LiveIn: $s5 $s1 LiveOut: $s5 $s1 syscall #LiveIn: $s5 $s1 LiveOut: $s5 $s1 L15: #EndIfLiveIn: $s5 $s1 LiveOut: $s5 $s1 li $t0,2 #LiveIn: $s1 $s7 LiveOut: $s1 $t0 $s7 add $s5,$s5,$t0 #LiveIn: $s1 $t0 $s7 LiveOut: $s5 $s1 L3: #While ConditionLiveIn: $s5 $s1 LiveOut: $s5 $s1 li $t0,2 #LiveIn: $s5 $s1 LiveOut: $s5 $s1 $t0 li $t1,2 #LiveIn: $s5 $s6 $s1 $t0 LiveOut: $t1 $s5 $s6 $s1 $t0 sub $s7,$s5,$t1 #LiveIn: $t1 $s5 $s6 $s1 $t0 LiveOut: $s5 $s1 $t0 $s7 ble $t0,$s7,L2 #LiveIn: $s5 $s1 $t0 $s7 LiveOut: $s5 $s1 L1: #While ConditionLiveIn: $s5 $s1 LiveOut: $s5 $s1 li $t0,1 #LiveIn: $s5 $s7 LiveOut: $s5 $t0 $s7 beq $s1,$t0,L0 #LiveIn: $s5 $t0 $s7 LiveOut: $s5 li $a0,1234 #LiveIn: LiveOut: li $v0,1 #LiveIn: LiveOut: syscall #LiveIn: LiveOut: #Exit call to stop the programLiveIn: LiveOut: li $v0,10 #LiveIn: LiveOut: syscall #LiveIn: LiveOut: