Answer from cs61c-bg (Spencer Ahrens 16187781) for Question 2 The repeated use of the same variables can cause problems as the assembler may get them overlapped with the label call, confusing the branch call because of changing variables at the branch start.