Почему в эпилоге clang используется «добавить $N, %rsp «вместо» mov %rbp, %rsp` для восстановления «%rsp»?

# #assembly #clang #x86-64 #micro-optimization Вопрос: Учесть следующее: ammarfaizi2@integral:/tmp$ vi test.c ammarfaizi2@integral:/tmp$ cat test.c extern void use_buffer(void *buf); void a_func(void) { char buffer[4096]; use_buffer(buffer); } __asm__("emit_mov_rbp_to_rsp:ntmovq %rbp, %rsp"); ammarfaizi2@integral:/tmp$ clang…

Продолжить чтениеПочему в эпилоге clang используется «добавить $N, %rsp «вместо» mov %rbp, %rsp` для восстановления «%rsp»?