shrl -0x1if(4(%rsp) - 我理解左移,但目前不了解-0x1if ...汇编指令的一部分?

Car*_*ano -1 assembly x86-64

我现在还在学习装配.其余的代码在我理解之下并且宁愿自己解决,但涉及右移(shrl)的行是我不明白的.0x1if(4(%rsp)是什么意思?谢谢!

 400783:    89 7c 24 ec             mov    %edi,-0x14(%rsp)
 400787:    c7 44 24 fc 00 00 00    movl   $0x0,-0x4(%rsp)
 40078e:    00 
 40078f:    eb 14                   jmp    4007a5 <f3+0x22>
 400791:    8b 44 24 ec             mov    -0x14(%rsp),%eax
 400795:    83 e0 01                and    $0x1,%eax
 400798:    85 c0                   test   %eax,%eax
 40079a:    74 05                   je     4007a1 <f3+0x1e>
 40079c:    83 44 24 fc 01          addl   $0x1,-0x4(%rsp)
 **4007a1:  d1 6c 24 ec             shrl   -0x1if (4(%rsp)***
 4007a5:    83 7c 24 ec 00          cmpl   $0x0,-0x14(%rsp)
 4007aa:    75 e5                   jne    400791 <f3+0xe>
 4007ac:    8b 44 24 fc             mov    -0x4(%rsp),%eax
 4007b0:    f7 d8                   neg    %eax
 4007b2:    c3                      retq   
Run Code Online (Sandbox Code Playgroud)

fuz*_*fuz 5

4007a1:  d1 6c 24 ec             shrl   -0x1if (4(%rsp)
Run Code Online (Sandbox Code Playgroud)

可能发生了某种OCR错误.编码指令清楚地表明这应该是shrl -0x14(%rsp).