Question: Help needed in Embedded Systems Problem ! Thanx Part-5: Define the following C function using assembly instructions by following the arm architecture procedure call standard
Help needed in Embedded Systems Problem ! Thanx

Part-5: Define the following C function using assembly instructions by following the arm architecture procedure call standard (AAPCS). void myfunc(int*a, int b, int*d) { int c = 0; for (int i = b - 1; i >= ; i--) { if(a[i] > 0) C=C- a[i]; else if(a[i] NOTE: ARM Assembly summary sheet is given below: Memory access instructions LDR Rd, (Rn) ; load 32-bit number at [Rn) to Re LDR Rd, Rn, #off; load 32-bit number at [Rn+off) LDR Rd, -value ; set Rd equal to any 32-bit value LDRH Rd, [Rn) ; load unsigned 16-bit at [Rn] to LDRH Rd, [Rn, Hoff) i load unsigned 16-bit at [Rn+off LDRSH Rd, [R] ; load signed 16-bit at [Rn) to Re LDRSH Rd, (Rn, Hoff) load signed 16-bit at [Rn+off) LDRB Rd, (Rn) : load unsigned 8-bit at [Rn) to 1 LDRB Rd, [Rn, loft) ; load unsigned 8-bit at [Rntoff) LDRSB Rd, (Rn) : load signed 8-bit at [Rn) to Rd LDRSB Rd, (Rn, loft) ; load signed 8-bit at [Rn+off) to STR Rt, (Rn) ; store 32-bit Rt to [Rn] STR Rt, [Rn, Hof) store 32-bit Rt to [Rn+oft) STRH Rt, (Rn) store least sig. 16-bit Rt to [1
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
