Slide 7
Slide 7 text
実行例
AddCodeのインスタンスを生成し関数ポインタを得る
Hack #77も参照
AddCode c(2); // n = 2の例
const auto add = c.getCode();
生成されたコード
add3_winはn=3を渡した場合の例
add2_linux: | add3_win:
mov rax, [rdi] | mov rax, [rcx]
add rax, [rsi] | add rax, [rdx]
mov [rdx], rax | mov [r8], rax
mov rax, [rdi+0x8] | mov rax, [rcx+0x8]
adc rax, [rsi+0x8] | adc rax, [rdx+0x8]
mov [rdx+0x8], rax | mov [r8+0x8], rax
ret | mov rax, [rcx+0x10]
| adc rax, [rdx+0x10]
| mov [r8+0x10], rax
| ret 7 / 22