. code locations Consider the following C code and the corresponding assembly code: oid baz(int a, int * p) pushq %rbp movq %rsp,%rbp subq $16,%rsp int c; c = a-*p; movl %ecx,16(%rbp) movq %rdx, 24(%rbp) movq 24(%rbp), %rax movl (%rax),%eax movl 16(%rbp),%edx subl %eax,%edx movl %edx,%eax movl %eax,-4(%rbp) if (c) cmpl $0, -4(%rbp) je L2 { int d = c*2; movl -4(%rbp),%eax addl %eax,%eax movl %eax,-8(%rbp) movl 24(%rbp),%rax movl (%rax),%eax subl *p -= d; -8(%rbp),%eax movl %eax,%edx movq 24(%rbp), %rax movl %edx, (%rax) jmp L4: }

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
100%
2. code locations
Consider the following C code and the corresponding assembly code:
void baz(int a, int * p)
{
pushq %rbp
movq %rsp,%rbp
subq $16,%rsp
int c;
C = a-*p;
movl %ecx,16(%rbp)
movq %rdx, 24(%rbp)
movq 24(%rbp), %rax
movl (%rax),%eax
movl 16(%rbp),%edx
subl %eax,%edx
movl %edx,%eax
movl %eax,-4(%rbp)
cmpl $0, -4(%rbp)
je L2
if (c)
{
int d = c*2;
movl -4(%rbp),%eax
addl %eax,%eax
movl %eax,-8(%rbp)
*p -= d;
movl 24(%rbp),%rax
movl (%rax),%eax
subl -8(%rbp),%eax
movl %eax,%edx
movq 24(%rbp), %rax
movl %edx, (%rax)
jmp L4:
(continued on next page)
Transcribed Image Text:2. code locations Consider the following C code and the corresponding assembly code: void baz(int a, int * p) { pushq %rbp movq %rsp,%rbp subq $16,%rsp int c; C = a-*p; movl %ecx,16(%rbp) movq %rdx, 24(%rbp) movq 24(%rbp), %rax movl (%rax),%eax movl 16(%rbp),%edx subl %eax,%edx movl %edx,%eax movl %eax,-4(%rbp) cmpl $0, -4(%rbp) je L2 if (c) { int d = c*2; movl -4(%rbp),%eax addl %eax,%eax movl %eax,-8(%rbp) *p -= d; movl 24(%rbp),%rax movl (%rax),%eax subl -8(%rbp),%eax movl %eax,%edx movq 24(%rbp), %rax movl %edx, (%rax) jmp L4: (continued on next page)
else
{
int e = *p/2;
L2:
movq 24(%rbp),%rax
movl (%rax),%eax
movl %eax, %edx
shrl
$31, %edx
addl %edx, %eax
sarl
movl %eax,-12(%rbp)
%eax
movl 24(%rbp),%rax
movl (%rax), %edx
movl -12(%rbp), %eax
subl
addl
*p += e-a;
16(%rbp),%eax
%eax,%edx
movq 24(%rbp), %rax
movl %edx,(%rax)
}
}
L4:
addq $16, %rsp
popq %rbp
ret
Give the memory (not register!) location for each of the 5 variables in this function
a
C
d
e
Transcribed Image Text:else { int e = *p/2; L2: movq 24(%rbp),%rax movl (%rax),%eax movl %eax, %edx shrl $31, %edx addl %edx, %eax sarl movl %eax,-12(%rbp) %eax movl 24(%rbp),%rax movl (%rax), %edx movl -12(%rbp), %eax subl addl *p += e-a; 16(%rbp),%eax %eax,%edx movq 24(%rbp), %rax movl %edx,(%rax) } } L4: addq $16, %rsp popq %rbp ret Give the memory (not register!) location for each of the 5 variables in this function a C d e
Expert Solution
steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY