Provide a flowchart of the code below.
.globl main
.text main:
# Use stack to implement a function
# $100 = result 1i $a0, 0x0p640000
# This initializes the register $a0 to 0x00010000
addi $sp, $sp, -4 # Make space on the stack to store one register
sw $a0, 0($sp) # Save $a0 on the stack
jal for_tcall_function # Jump and link to the function for_tcall_function
addi $a0, $a0, -1 # Deallocate the stack space
done:
lw $a0, 0($sp) # Restore the $a0 from the stack
addi $sp, $sp, 4 # Deallocate the stack space
jr $ra # Return to the caller
# Following codes are mandatory (return)
li $v0, 1 # System call for print integer
syscall