Comparing sensitive data, confidential files or internal emails?

Most legal and privacy policies prohibit uploading sensitive data online. Diffchecker Desktop ensures your confidential information never leaves your computer. Work offline and compare documents securely.

Inline OsStr

Created Diff never expires
162 removals
201 lines
141 additions
182 lines
example::cargo_home_with_cwd:
check_stage1::cargo_home_with_cwd:
push rbp
push r15
push r15
push r14
push r14
push r13
push r12
push r12
push rbx
push rbx
sub rsp, 96
sub rsp, 112
mov r14, rdx
mov r14, rdx
mov r15, rsi
mov r15, rsi
mov r12, rdi
mov r13, rdi
lea rsi, [rip + .L__unnamed_1]
lea rsi, [rip + .L__unnamed_1]
lea rdi, [rsp + 24]
mov rdi, rsp
mov edx, 10
mov edx, 10
call qword ptr [rip + std::env::_var_os]
call qword ptr [rip + std::env::_var_os]
cmp qword ptr [rsp + 24], 0
mov rdi, qword ptr [rsp]
je .LBB2_6
test rdi, rdi
mov rax, qword ptr [rsp + 40]
je .LBB6_4
mov qword ptr [rsp + 16], rax
movups xmm0, xmmword ptr [rsp + 24]
movaps xmmword ptr [rsp], xmm0
mov rdi, rsp
call qword ptr [rip + std::sys_common::os_str_bytes::Buf::as_slice]
mov rdi, rax
mov rsi, rdx
call qword ptr [rip + std::ffi::os_str::OsStr::is_empty]
test al, al
je .LBB2_7
mov rsi, qword ptr [rsp + 8]
mov rsi, qword ptr [rsp + 8]
mov rbx, qword ptr [rsp + 16]
test rbx, rbx
je .LBB6_2
mov qword ptr [rsp + 64], rdi
mov qword ptr [rsp + 72], rsi
mov qword ptr [rsp + 80], rbx
mov rax, qword ptr [rsp + 64]
mov qword ptr [rsp + 32], rax
mov rax, qword ptr [rsp + 72]
mov qword ptr [rsp + 40], rax
mov qword ptr [rsp + 48], rbx
mov r12, qword ptr [rsp + 32]
mov rdi, r12
mov rsi, rbx
call qword ptr [rip + std::path::Path::is_absolute]
test al, al
je .LBB6_13
mov rax, qword ptr [rsp + 48]
mov qword ptr [r13 + 24], rax
movaps xmm0, xmmword ptr [rsp + 32]
jmp .LBB6_18
.LBB6_2:
test rsi, rsi
test rsi, rsi
je .LBB2_6
je .LBB6_4
mov rdi, qword ptr [rsp]
mov edx, 1
mov edx, 1
call qword ptr [rip + __rust_dealloc]
call qword ptr [rip + __rust_dealloc]
.LBB2_6:
.LBB6_4:
mov qword ptr [rsp + 48], 0
mov qword ptr [rsp + 64], 0
.LBB2_8:
lea rdi, [rsp + 88]
mov bpl, 1
lea rdi, [rsp + 72]
call qword ptr [rip + std::env::home_dir]
call qword ptr [rip + std::env::home_dir]
cmp qword ptr [rsp + 72], 0
cmp qword ptr [rsp + 88], 0
je .LBB2_29
je .LBB6_20
mov rax, qword ptr [rsp + 88]
movups xmm0, xmmword ptr [rsp + 88]
mov qword ptr [rsp + 16], rax
movups xmm0, xmmword ptr [rsp + 72]
movaps xmmword ptr [rsp], xmm0
movaps xmmword ptr [rsp], xmm0
mov rdi, rsp
mov rdx, qword ptr [rsp + 104]
call qword ptr [rip + <std::path::PathBuf as core::ops::deref::Deref>::deref]
mov qword ptr [rsp + 16], rdx
mov rbx, rax
mov rbx, qword ptr [rsp]
mov r14, rdx
lea rcx, [rip + .L__unnamed_2]
lea rdi, [rip + .L__unnamed_2]
lea rdi, [rsp + 32]
mov esi, 6
mov r8d, 6
call qword ptr [rip + std::path::<impl core::convert::AsRef<std::path::Path> for str>::as_ref]
mov r8, rdx
lea rdi, [rsp + 24]
mov rsi, rbx
mov rsi, rbx
mov rdx, r14
mov rcx, rax
call qword ptr [rip + std::path::Path::_join]
call qword ptr [rip + std::path::Path::_join]
mov rsi, qword ptr [rsp + 8]
mov rsi, qword ptr [rsp + 8]
test rsi, rsi
test rsi, rsi
je .LBB2_15
je .LBB6_9
mov rdi, qword ptr [rsp]
mov edx, 1
mov edx, 1
mov rdi, rbx
call qword ptr [rip + __rust_dealloc]
call qword ptr [rip + __rust_dealloc]
.LBB2_15:
.LBB6_9:
movups xmm0, xmmword ptr [rsp + 24]
movups xmm0, xmmword ptr [rsp + 32]
movaps xmmword ptr [rsp], xmm0
movaps xmmword ptr [rsp], xmm0
mov rax, qword ptr [rsp + 40]
mov rax, qword ptr [rsp + 48]
mov qword ptr [rsp + 16], rax
mov qword ptr [rsp + 16], rax
cmp qword ptr [rsp], 0
cmp qword ptr [rsp], 0
je .LBB2_30
je .LBB6_21
mov rax, qword ptr [rsp + 16]
mov qword ptr [r12 + 24], rax
movaps xmm0, xmmword ptr [rsp]
jmp .LBB2_26
.LBB2_7:
mov rax, qword ptr [rsp + 16]
mov rax, qword ptr [rsp + 16]
mov qword ptr [rsp + 64], rax
mov qword ptr [r13 + 24], rax
movaps xmm0, xmmword ptr [rsp]
movaps xmm0, xmmword ptr [rsp]
movaps xmmword ptr [rsp + 48], xmm0
.LBB6_18:
cmp qword ptr [rsp + 48], 0
movups xmmword ptr [r13 + 8], xmm0
je .LBB2_8
mov qword ptr [r13], 0
mov rax, qword ptr [rsp + 64]
jmp .LBB6_16
mov qword ptr [rsp + 16], rax
.LBB6_20:
movaps xmm0, xmmword ptr [rsp + 48]
movaps xmmword ptr [rsp], xmm0
xor ebp, ebp
lea rdi, [rsp + 24]
mov rsi, rsp
call qword ptr [rip + <std::path::PathBuf as core::convert::From<std::ffi::os_str::OsString>>::from]
lea rdi, [rsp + 24]
call qword ptr [rip + <std::path::PathBuf as core::ops::deref::Deref>::deref]
mov rdi, rax
mov rsi, rdx
call qword ptr [rip + std::path::Path::is_absolute]
test al, al
je .LBB2_21
mov rax, qword ptr [rsp + 40]
mov qword ptr [r12 + 24], rax
movups xmm0, xmmword ptr [rsp + 24]
.LBB2_26:
movups xmmword ptr [r12 + 8], xmm0
mov qword ptr [r12], 0
jmp .LBB2_33
.LBB2_29:
mov qword ptr [rsp], 0
mov qword ptr [rsp], 0
.LBB2_30:
.LBB6_21:
lea rdi, [rip + .L__unnamed_3]
mov edi, 29
mov esi, 29
mov esi, 1
call qword ptr [rip + std::error::<impl core::convert::From<&str> for alloc::boxed::Box<dyn std::error::Error+core::marker::Sync+core::marker::Send>>::from]
call qword ptr [rip + __rust_alloc]
mov rcx, rdx
test rax, rax
lea rdi, [rsp + 24]
je .LBB6_30
mov rbx, rax
movups xmm0, xmmword ptr [rip + .L__unnamed_3+13]
movups xmmword ptr [rax + 13], xmm0
movups xmm0, xmmword ptr [rip + .L__unnamed_3]
movups xmmword ptr [rax], xmm0
mov edi, 24
mov esi, 8
call qword ptr [rip + __rust_alloc]
test rax, rax
je .LBB6_31
mov qword ptr [rax], rbx
movaps xmm0, xmmword ptr [rip + .LCPI6_0]
movups xmmword ptr [rax + 8], xmm0
lea rcx, [rip + .L__unnamed_0]
lea rdi, [rsp + 32]
mov esi, 16
mov esi, 16
mov rdx, rax
mov rdx, rax
call qword ptr [rip + std::io::error::Error::_new]
call qword ptr [rip + std::io::error::Error::_new]
movups xmm0, xmmword ptr [rsp + 24]
movups xmm0, xmmword ptr [rsp + 32]
movups xmmword ptr [r12 + 8], xmm0
movups xmmword ptr [r13 + 8], xmm0
mov qword ptr [r12], 1
mov qword ptr [r13], 1
.LBB2_33:
jmp .LBB6_16
mov rax, r12
.LBB6_13:
add rsp, 96
pop rbx
pop r12
pop r14
pop r15
pop rbp
ret
.LBB2_21:
lea rdi, [rsp + 24]
call qword ptr [rip + <std::path::PathBuf as core::convert::AsRef<std::path::Path>>::as_ref]
mov r8, rdx
mov rdi, rsp
mov rdi, rsp
mov rsi, r15
mov rsi, r15
mov rdx, r14
mov rdx, r14
mov rcx, rax
mov rcx, r12
mov r8, rbx
call qword ptr [rip + std::path::Path::_join]
call qword ptr [rip + std::path::Path::_join]
mov rax, qword ptr [rsp + 16]
mov rax, qword ptr [rsp + 16]
mov qword ptr [r12 + 24], rax
mov qword ptr [r13 + 24], rax
movups xmm0, xmmword ptr [rsp]
movups xmm0, xmmword ptr [rsp]
movups xmmword ptr [r12 + 8], xmm0
movups xmmword ptr [r13 + 8], xmm0
mov qword ptr [r12], 0
mov qword ptr [r13], 0
mov rsi, qword ptr [rsp + 32]
mov rsi, qword ptr [rsp + 40]
test rsi, rsi
test rsi, rsi
je .LBB2_33
je .LBB6_16
mov rdi, qword ptr [rsp + 24]
mov edx, 1
mov edx, 1
mov rdi, r12
call qword ptr [rip + __rust_dealloc]
call qword ptr [rip + __rust_dealloc]
jmp .LBB2_33
.LBB6_16:
mov rbx, rax
mov rax, r13
lea rdi, [rsp + 24]
add rsp, 112
call core::ptr::real_drop_in_place::<std::path::PathBuf>
pop rbx
xor ebp, ebp
pop r12
cmp qword ptr [rsp + 48], 0
pop r13
je .LBB2_42
pop r14
jmp .LBB2_37
pop r15
ret
.LBB6_30:
mov edi, 29
mov esi, 1
call qword ptr [rip + alloc::alloc::handle_alloc_error]
ud2
.LBB6_31:
mov edi, 24
mov esi, 8
call qword ptr [rip + alloc::alloc::handle_alloc_error]
ud2
.LBB6_19:
mov rbx, rax
mov rbx, rax
mov rdi, rsp
mov rdi, rsp
call core::ptr::real_drop_in_place::<core::option::Option<std::path::PathBuf>>
call core::ptr::real_drop_in_place::<Option<std::path::PathBuf>>
mov bpl, 1
jmp .LBB6_28
cmp qword ptr [rsp + 48], 0
.LBB6_27:
je .LBB2_42
jmp .LBB2_37
mov rbx, rax
cmp qword ptr [rsp + 48], 0
je .LBB2_42
jmp .LBB2_37
mov rbx, rax
mov rbx, rax
mov rdi, rsp
mov rdi, rsp
jmp .LBB2_40
call core::ptr::real_drop_in_place::<std::path::PathBuf>
jmp .LBB6_28
.LBB6_25:
mov rbx, rax
mov rbx, rax
mov rdi, rsp
lea rdi, [rsp + 32]
call core::ptr::real_drop_in_place::<std::path::PathBuf>
call core::ptr::real_drop_in_place::<std::path::PathBuf>
mov bpl, 1
cmp qword ptr [rsp + 48], 0
jne .LBB2_37
.LBB2_42:
lea rdi, [rsp + 48]
call core::ptr::real_drop_in_place::<core::option::Option<std::path::PathBuf>>
mov rdi, rbx
mov rdi, rbx
call _Unwind_Resume@PLT
call _Unwind_Resume
ud2
ud2
.LBB2_37:
.LBB6_29:
test bpl, bpl
mov rbx, rax
je .LBB2_41
.LBB6_28:
lea rdi, [rsp + 48]
lea rdi, [rsp + 64]
.LBB2_40:
call core::ptr::real_drop_in_place::<Option<std::path::PathBuf>>
call core::ptr::real_drop_in_place::<std::path::PathBuf>
.LBB2_41:
mov rdi, rbx
mov rdi, rbx
call _Unwind_Resume@PLT
call _Unwind_Resume
ud2
ud2


.L__unnamed_1:
.L__unnamed_1:
.ascii "CARGO_HOME"
.ascii "CARGO_HOME"


.L__unnamed_2:
.L__unnamed_2:
.ascii ".cargo"
.ascii ".cargo"


.L__unnamed_3:
.L__unnamed_3:
.ascii "could not find cargo home dir"
.ascii "could not find cargo home dir"