Lab-9-Program Analysis
Lab-9-Program Analysis
Assignment-9
Module Marks
verifyInstr_setType() 9
countRegister() 5
checkDependency() 5
countLabels() 1
---------------------------------------------------------------
BACKWARD LABEL FORWARD LABEL
while -------
---------------------------------------------------------------
---------------------------------------------------------------
Names of Register used = zero v0 v1 a0 t0 t1 t2 t6 t7 s0 s1 s2 s3 s4 s5 s7
Total number of registers = 16
---------------------------------------------------------------
---------------------------------------------------------------
Total RAW Dependency = 5
---------------------------------------------------------------
--------------------DEPENDENT INSTRUCTIONS---------------------
addi $t1, $zero, 0 ---> addi $t1, $t1, 4
addi $t1, $zero, 0 ---> addi $t2, $t1, 4
addi $t1, $t1, 4 ---> addi $t2, $t1, 4
addi $t0, $zero, 0 ---> addi $t0, $t0, 4
beq $t6, 12, exit ---> move $a0, $t6
---------------------------------------------------------------
---------------------------------------------------------------
BACKWARD LABEL FORWARD LABEL
---------------------------------------------------------------
---------------------------------------------------------------
Names of Register used = zero v0 v1 a0 t0 t4 t5 t6 s0 s1 s2
Total number of registers = 11
---------------------------------------------------------------
---------------------------------------------------------------
Total RAW Dependency = 3
---------------------------------------------------------------
--------------------DEPENDENT INSTRUCTIONS---------------------
addi $t0, $zero, 0 ---> addi $t4, $t0, 4
addi $t0, $zero, 0 ---> addi $t5, $t0, 4
lw $t6, myArray($zero) ---> addi $a0, $t6, 0
---------------------------------------------------------------
---------------------------------------------------------------
BACKWARD LABEL FORWARD LABEL
while printNumber1
------- printNumber2
---------------------------------------------------------------
---------------------------------------------------------------
Names of Register used = zero v0 v1 a0 a1 t0 t1 t2 t3 s0 s1 s2 s3 ra
Total number of registers = 14
---------------------------------------------------------------
---------------------------------------------------------------
Total RAW Dependency = 3
---------------------------------------------------------------
--------------------DEPENDENT INSTRUCTIONS---------------------
addi $t0, $zero, 0 ---> add $a1, $t0, $zero
addi $t0, $zero, 0 ---> add $s3, $t0, $zero
addi $t2, $t1, 1 ---> addi $t3, $t2, 1
---------------------------------------------------------------
Names of Register used = v0 v1 a0 a1 t0 t1 t3 t4 t6
Total number of registers = 9
---------------------------------------------------------------
---------------------------------------------------------------
Total RAW Dependency = 3
---------------------------------------------------------------
--------------------DEPENDENT INSTRUCTIONS---------------------
addi $t0, $t0, 0 ---> addi $t3, $t0, 4
addi $t0, $t0, 0 ---> move $a0, $t0
lw $t6, myArray($t2) ---> addi $t4, $t6, 4
---------------------------------------------------------------
/*###################################################################################
Note: Please don’t upload the assignments, template file/solution and lab. manual on GitHub or
others public repository.
Kindly remove them, if you have uploaded the previous assignments.
It violates the BITS’s Intellectual Property Rights (IPR).
************************************************************************************/