Skip to content

Instantly share code, notes, and snippets.

@kdy1
Created May 5, 2021 09:52
Show Gist options
  • Save kdy1/e5a1211460f40d10ffb9654c663f2314 to your computer and use it in GitHub Desktop.
Save kdy1/e5a1211460f40d10ffb9654c663f2314 to your computer and use it in GitHub Desktop.
swc babelify assembly
swc_babel_compat::stmt::<impl swc_babel_compat::Babelify for swc_ecma_ast::stmt::BlockStmt>::babelify:
push rbp
mov rbp, rsp
push r15
push r14
push rbx
sub rsp, 216
mov r15, rdx
mov rbx, rsi
mov r14, rdi
mov rdx, qword, ptr, [rsi, +, 24]
mov ecx, dword, ptr, [rsi, +, 32]
lea rdi, [rbp, -, 240]
mov rsi, r15
call swc_babel_compat::Context::base
mov rax, qword, ptr, [rbx]
mov rcx, qword, ptr, [rbx, +, 8]
mov rsi, qword, ptr, [rbx, +, 16]
mov qword, ptr, [rbp, -, 56], r15
cmp rsi, 16
jb LBB1337_4
mov rbx, qword, ptr, [rip, +, L_anon.c5922298836b799d46876bcdcff0f0b3.52]
mov qword, ptr, [rbp, -, 48], rbx
mov qword, ptr, [rbp, -, 40], 0
mov qword, ptr, [rbp, -, 32], 0
mov qword, ptr, [rbp, -, 96], rax
mov qword, ptr, [rbp, -, 88], rcx
mov qword, ptr, [rbp, -, 80], rsi
lea rax, [rbp, -, 56]
mov qword, ptr, [rbp, -, 72], rax
lea rdi, [rbp, -, 48]
lea rdx, [rbp, -, 96]
call rayon::iter::collect::Collect<T>::with_consumer
jmp LBB1337_6
LBB1337_4:
imul rdx, rsi, 232
add rdx, rax
mov qword, ptr, [rbp, -, 96], rax
mov qword, ptr, [rbp, -, 88], rcx
mov qword, ptr, [rbp, -, 80], rax
mov qword, ptr, [rbp, -, 72], rdx
lea rax, [rbp, -, 56]
mov qword, ptr, [rbp, -, 64], rax
lea rdi, [rbp, -, 48]
lea rsi, [rbp, -, 96]
call <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
mov rbx, qword, ptr, [rip, +, L_anon.c5922298836b799d46876bcdcff0f0b3.52]
LBB1337_6:
mov qword, ptr, [r14, +, 184], 0
mov qword, ptr, [r14, +, 176], 0
lea rsi, [rbp, -, 240]
mov edx, 144
mov rdi, r14
call _memcpy
mov rax, qword, ptr, [rbp, -, 48]
mov rcx, qword, ptr, [rbp, -, 40]
mov qword, ptr, [r14, +, 144], rax
mov qword, ptr, [r14, +, 152], rcx
mov rax, qword, ptr, [rbp, -, 32]
mov qword, ptr, [r14, +, 160], rax
mov qword, ptr, [r14, +, 168], rbx
mov rax, r14
add rsp, 216
pop rbx
pop r14
pop r15
pop rbp
ret
LBB1337_9:
jmp LBB1337_10
LBB1337_3:
mov r14, rax
lea rdi, [rbp, -, 48]
call core::ptr::drop_in_place<alloc::vec::Vec<swc_babel_ast::stmt::Statement>>
jmp LBB1337_11
LBB1337_12:
LBB1337_10:
mov r14, rax
LBB1337_11:
lea rdi, [rbp, -, 240]
call core::ptr::drop_in_place<swc_babel_ast::common::BaseNode>
mov rdi, r14
call __Unwind_Resume
LBB1337_7:
mov r14, rax
mov rdi, rbx
call core::ptr::drop_in_place<alloc::vec::Vec<swc_ecma_ast::stmt::Stmt>>
mov rdi, r14
call __Unwind_Resume
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment