Question: Convert this x86-64 code shown above to Y86-64 code. Function main: Calling arithEx() long arithEx (long, long, long, long, long, long, long, long): long main()

Convert this x86-64 code shown above to Y86-64 code.
Function main: Calling arithEx() long arithEx (long, long, long, long, long, long, long, long): long main() { long a, b, c, d, e, f, g, h, w: a = 100: b = 12345: c = 98765: d = 23: e = 25: f = 27: g = 29: h = 31: w = arithEx(a, b, c, d, e, f, g, h): w++: return w: } Compilation command: gcc -O1 -S main.arithEX.c generated this x86-64 assembly code (with minor changes in red): main: subq exist24, %rsp movq exist31, 8 (%rsp) movq exist29, (%rsp) movq exist27, %r9 movq exist25, %r8 movq exist23, %rcx movq exist98765, %rdx movq exist12345, %rsi movq exist100, %rdi call arithEx addq exist1, %rax addq exist24, %rsp ret
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
