[INFO] fetching crate x86 0.41.0... [INFO] checking x86-0.41.0 against master#33fdb797f59421c7bbecaa4588ed5d7a31a9494a for pr-87190-3 [INFO] extracting crate x86 0.41.0 into /workspace/builds/worker-81/source [INFO] validating manifest of crates.io crate x86 0.41.0 on toolchain 33fdb797f59421c7bbecaa4588ed5d7a31a9494a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-81/source/rust-toolchain [INFO] started tweaking crates.io crate x86 0.41.0 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate x86 0.41.0 [INFO] tweaked toml for crates.io crate x86 0.41.0 written to /workspace/builds/worker-81/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-81/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-81/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2566ed8095b62f71b38fd0520fa0b3b6c9bc71f4897e8b2e62a8f2dec1c7e4b1 [INFO] running `Command { std: "docker" "start" "-a" "2566ed8095b62f71b38fd0520fa0b3b6c9bc71f4897e8b2e62a8f2dec1c7e4b1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2566ed8095b62f71b38fd0520fa0b3b6c9bc71f4897e8b2e62a8f2dec1c7e4b1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2566ed8095b62f71b38fd0520fa0b3b6c9bc71f4897e8b2e62a8f2dec1c7e4b1", kill_on_drop: false }` [INFO] [stdout] 2566ed8095b62f71b38fd0520fa0b3b6c9bc71f4897e8b2e62a8f2dec1c7e4b1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-81/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-81/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 53ebe52bb71d905260425c6d40e72f1d6b4cf3bbb42828fe7f8de260f5e65d30 [INFO] running `Command { std: "docker" "start" "-a" "53ebe52bb71d905260425c6d40e72f1d6b4cf3bbb42828fe7f8de260f5e65d30", kill_on_drop: false }` [INFO] [stderr] Compiling typenum v1.13.0 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Compiling x86 v0.37.0 [INFO] [stderr] Checking bit_field v0.10.1 [INFO] [stderr] Compiling heapless v0.5.6 [INFO] [stderr] Checking byteorder v1.4.3 [INFO] [stderr] Compiling x86 v0.41.0 (/opt/rustwide/workdir) [INFO] [stderr] Checking termcodes v0.0.1 [INFO] [stderr] Checking spin v0.5.2 [INFO] [stderr] Compiling generic-array v0.14.4 [INFO] [stderr] Checking raw-cpuid v9.1.1 [INFO] [stderr] Checking raw-cpuid v10.2.0 [INFO] [stderr] Checking hash32 v0.1.1 [INFO] [stderr] Checking generic-array v0.12.4 [INFO] [stderr] Checking generic-array v0.13.3 [INFO] [stderr] Checking as-slice v0.1.5 [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits32/eflags.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | llvm_asm!("clac" ::: "memory" "flags" : "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits32/eflags.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | llvm_asm!("stac" ::: "memory" "flags" : "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/registers.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | llvm_asm!("leaq 0(%rip), $0" : "=r" (rip) ::); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/registers.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | llvm_asm!("mov %rsp, $0" : "=r" (rsp) ::); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/registers.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | llvm_asm!("mov %rbp, $0" : "=r" (rbp) ::); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/rflags.rs:82:14 [INFO] [stdout] | [INFO] [stdout] 82 | unsafe { llvm_asm!("pushfq; popq $0" : "=r"(r) :: "memory") }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/rflags.rs:89:14 [INFO] [stdout] | [INFO] [stdout] 89 | unsafe { llvm_asm!("pushq $0; popfq" :: "r"(val.bits()) : "memory" "flags") }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:144:5 [INFO] [stdout] | [INFO] [stdout] 144 | llvm_asm!("pushq $0; \ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 157 | llvm_asm!("wrgsbase $0" :: "r" (base) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:166:5 [INFO] [stdout] | [INFO] [stdout] 166 | llvm_asm!("wrfsbase $0" :: "r" (base) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:176:5 [INFO] [stdout] | [INFO] [stdout] 176 | llvm_asm!("rdgsbase $0" : "=r" (gs_base) ); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | llvm_asm!("rdfsbase $0" : "=r" (fs_base) ); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:198:5 [INFO] [stdout] | [INFO] [stdout] 198 | llvm_asm!("movq %fs:0x0, $0" : "=r" (fs) ); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:209:5 [INFO] [stdout] | [INFO] [stdout] 209 | llvm_asm!("movq %gs:0x0, $0" : "=r" (gs) ); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:224:5 [INFO] [stdout] | [INFO] [stdout] 224 | llvm_asm!("swapgs" ::: "gs"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/sgx.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | llvm_asm!("encls" : "={eax}" (eax), "={rbx}" (out_rbx) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/sgx.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | llvm_asm!("encls" : "={eax}" (eax), "={rbx}" (out_rbx) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/sgx.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | llvm_asm!("encls" : "={eax}" (eax), "={rbx}" (out_rbx) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/sgx.rs:292:5 [INFO] [stdout] | [INFO] [stdout] 292 | llvm_asm!("enclu" : "={eax}" (eax), "={rcx}" (out_rcx) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/sgx.rs:301:5 [INFO] [stdout] | [INFO] [stdout] 301 | llvm_asm!("enclu" : "={eax}" (eax), "={rcx}" (out_rcx) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | llvm_asm!("syscall" : "={rax}" (ret) : "{rax}" (arg0) : "rcx", "r11", "memory" : "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:113:5 [INFO] [stdout] | [INFO] [stdout] 113 | llvm_asm!("syscall" : "={rax}" (ret) : "{rax}" (arg0), "{rdi}" (arg1) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | llvm_asm!("syscall" : "={rax}" (ret) : "{rax}" (arg0), "{rdi}" (arg1), "{rsi}" (arg2) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | llvm_asm!("syscall" : "={rax}" (ret) : "{rax}" (arg0), "{rdi}" (arg1), "{rsi}" (arg2), "{rdx}" (arg3) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:155:5 [INFO] [stdout] | [INFO] [stdout] 155 | llvm_asm!("syscall" : "={rax}" (ret) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | llvm_asm!("syscall" : "={rax}" (ret) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:194:5 [INFO] [stdout] | [INFO] [stdout] 194 | llvm_asm!("syscall" : "={rax}" (ret) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | llvm_asm!("vmxon $0" : /* no outputs */ : "m"(addr)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | llvm_asm!("vmxoff"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:54:5 [INFO] [stdout] | [INFO] [stdout] 54 | llvm_asm!("vmclear $0" : /* no outputs */ : "m"(addr)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | llvm_asm!("vmptrld $0" : /* no outputs */ : "m"(addr)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:75:5 [INFO] [stdout] | [INFO] [stdout] 75 | llvm_asm!("vmptrst ($0)" : /* no outputs */ : "r"(&value) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | llvm_asm!("vmread $1, $0" : "=r"(value) : "r"(field)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | llvm_asm!("vmwrite $1, $0" : /* no outputs */ : "r"(field), "r"(value)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | llvm_asm!("vmlaunch"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | llvm_asm!("vmresume"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | llvm_asm!("mov %cr0, $0" : "=r" (ret)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:105:5 [INFO] [stdout] | [INFO] [stdout] 105 | llvm_asm!("mov $0, %cr0" :: "r" (val.bits) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:114:5 [INFO] [stdout] | [INFO] [stdout] 114 | llvm_asm!("mov %cr2, $0" : "=r" (ret)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | llvm_asm!("mov $0, %cr2" :: "r" (val) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 132 | llvm_asm!("mov %cr3, $0" : "=r" (ret)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | llvm_asm!("mov $0, %cr3" :: "r" (val) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:150:5 [INFO] [stdout] | [INFO] [stdout] 150 | llvm_asm!("mov %cr4, $0" : "=r" (ret)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | llvm_asm!("mov $0, %cr4" :: "r" (val.bits) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | llvm_asm!("lgdt ($0)" :: "r" (gdt) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | llvm_asm!("sgdt ($0)" : "+r" (idt as *mut DescriptorTablePointer) :: "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | llvm_asm!("lldt $0" :: "r" (selector.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | llvm_asm!("sldt $0" : "=r"(selector)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 107 | llvm_asm!("lidt ($0)" :: "r" (idt) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | llvm_asm!("sidt ($0)" : "+r" (idt as *mut DescriptorTablePointer) :: "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/fence.rs:8:14 [INFO] [stdout] | [INFO] [stdout] 8 | unsafe { llvm_asm!("mfence" ::: "memory") }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/fence.rs:17:14 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { llvm_asm!("sfence" ::: "memory") }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/fence.rs:27:14 [INFO] [stdout] | [INFO] [stdout] 27 | unsafe { llvm_asm!("sfence" ::: "memory") }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | llvm_asm!("outb %al, %dx" :: "{dx}"(port), "{al}"(val)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | llvm_asm!("inb %dx, %al" : "={ax}"(ret) : "{dx}"(port) :: "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | llvm_asm!("outw %ax, %dx" :: "{dx}"(port), "{al}"(val)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | llvm_asm!("inw %dx, %ax" : "={ax}"(ret) : "{dx}"(port) :: "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | llvm_asm!("outl %eax, %dx" :: "{dx}"(port), "{al}"(val)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | llvm_asm!("inl %dx, %eax" : "={ax}"(ret) : "{dx}"(port) :: "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/irq.rs:355:5 [INFO] [stdout] | [INFO] [stdout] 355 | llvm_asm!("sti"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/irq.rs:363:5 [INFO] [stdout] | [INFO] [stdout] 363 | llvm_asm!("cli"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/msr.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | llvm_asm!("wrmsr" :: "{ecx}" (msr), "{eax}" (low), "{edx}" (high) : "memory" : "volatile" ); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/msr.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | llvm_asm!("rdmsr" : "={eax}" (low), "={edx}" (high) : "{ecx}" (msr) : "memory" : "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:564:5 [INFO] [stdout] | [INFO] [stdout] 564 | llvm_asm!("movw $0, %ss " :: "r" (sel.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:572:5 [INFO] [stdout] | [INFO] [stdout] 572 | llvm_asm!("movw $0, %ds " :: "r" (sel.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:580:5 [INFO] [stdout] | [INFO] [stdout] 580 | llvm_asm!("movw $0, %es " :: "r" (sel.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:588:5 [INFO] [stdout] | [INFO] [stdout] 588 | llvm_asm!("movw $0, %fs " :: "r" (sel.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:596:5 [INFO] [stdout] | [INFO] [stdout] 596 | llvm_asm!("movw $0, %gs " :: "r" (sel.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:604:14 [INFO] [stdout] | [INFO] [stdout] 604 | unsafe { llvm_asm!("mov %cs, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:611:14 [INFO] [stdout] | [INFO] [stdout] 611 | unsafe { llvm_asm!("mov %es, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:618:14 [INFO] [stdout] | [INFO] [stdout] 618 | unsafe { llvm_asm!("mov %ss, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:625:14 [INFO] [stdout] | [INFO] [stdout] 625 | unsafe { llvm_asm!("mov %ds, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:632:14 [INFO] [stdout] | [INFO] [stdout] 632 | unsafe { llvm_asm!("mov %fs, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:639:14 [INFO] [stdout] | [INFO] [stdout] 639 | unsafe { llvm_asm!("mov %gs, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/task.rs:9:14 [INFO] [stdout] | [INFO] [stdout] 9 | unsafe { llvm_asm!("str $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/task.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | llvm_asm!("ltr $0" :: "r" (sel.bits())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/tlb.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | llvm_asm!("invlpg ($0)" :: "r" (addr) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/lib.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | llvm_asm!("hlt" :::: "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/lib.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | llvm_asm!("rdpid $0" : "=r"(pid)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 79 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking klogger v0.0.7 [INFO] [stdout] error[E0463]: can't find crate for `x86test` [INFO] [stdout] --> tests/kvm/bin.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | extern crate x86test; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `x86` due to 2 previous errors [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] For more information about this error, try `rustc --explain E0463`. [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits32/eflags.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | llvm_asm!("clac" ::: "memory" "flags" : "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits32/eflags.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | llvm_asm!("stac" ::: "memory" "flags" : "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/registers.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | llvm_asm!("leaq 0(%rip), $0" : "=r" (rip) ::); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/registers.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | llvm_asm!("mov %rsp, $0" : "=r" (rsp) ::); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/registers.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | llvm_asm!("mov %rbp, $0" : "=r" (rbp) ::); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/rflags.rs:82:14 [INFO] [stdout] | [INFO] [stdout] 82 | unsafe { llvm_asm!("pushfq; popq $0" : "=r"(r) :: "memory") }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/rflags.rs:89:14 [INFO] [stdout] | [INFO] [stdout] 89 | unsafe { llvm_asm!("pushq $0; popfq" :: "r"(val.bits()) : "memory" "flags") }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:144:5 [INFO] [stdout] | [INFO] [stdout] 144 | llvm_asm!("pushq $0; \ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 157 | llvm_asm!("wrgsbase $0" :: "r" (base) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:166:5 [INFO] [stdout] | [INFO] [stdout] 166 | llvm_asm!("wrfsbase $0" :: "r" (base) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:176:5 [INFO] [stdout] | [INFO] [stdout] 176 | llvm_asm!("rdgsbase $0" : "=r" (gs_base) ); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | llvm_asm!("rdfsbase $0" : "=r" (fs_base) ); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:198:5 [INFO] [stdout] | [INFO] [stdout] 198 | llvm_asm!("movq %fs:0x0, $0" : "=r" (fs) ); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:209:5 [INFO] [stdout] | [INFO] [stdout] 209 | llvm_asm!("movq %gs:0x0, $0" : "=r" (gs) ); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/segmentation.rs:224:5 [INFO] [stdout] | [INFO] [stdout] 224 | llvm_asm!("swapgs" ::: "gs"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/sgx.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | llvm_asm!("encls" : "={eax}" (eax), "={rbx}" (out_rbx) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/sgx.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | llvm_asm!("encls" : "={eax}" (eax), "={rbx}" (out_rbx) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/sgx.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | llvm_asm!("encls" : "={eax}" (eax), "={rbx}" (out_rbx) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/sgx.rs:292:5 [INFO] [stdout] | [INFO] [stdout] 292 | llvm_asm!("enclu" : "={eax}" (eax), "={rcx}" (out_rcx) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/sgx.rs:301:5 [INFO] [stdout] | [INFO] [stdout] 301 | llvm_asm!("enclu" : "={eax}" (eax), "={rcx}" (out_rcx) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | llvm_asm!("syscall" : "={rax}" (ret) : "{rax}" (arg0) : "rcx", "r11", "memory" : "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:113:5 [INFO] [stdout] | [INFO] [stdout] 113 | llvm_asm!("syscall" : "={rax}" (ret) : "{rax}" (arg0), "{rdi}" (arg1) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | llvm_asm!("syscall" : "={rax}" (ret) : "{rax}" (arg0), "{rdi}" (arg1), "{rsi}" (arg2) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | llvm_asm!("syscall" : "={rax}" (ret) : "{rax}" (arg0), "{rdi}" (arg1), "{rsi}" (arg2), "{rdx}" (arg3) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:155:5 [INFO] [stdout] | [INFO] [stdout] 155 | llvm_asm!("syscall" : "={rax}" (ret) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | llvm_asm!("syscall" : "={rax}" (ret) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/syscall.rs:194:5 [INFO] [stdout] | [INFO] [stdout] 194 | llvm_asm!("syscall" : "={rax}" (ret) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | llvm_asm!("vmxon $0" : /* no outputs */ : "m"(addr)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | llvm_asm!("vmxoff"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:54:5 [INFO] [stdout] | [INFO] [stdout] 54 | llvm_asm!("vmclear $0" : /* no outputs */ : "m"(addr)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | llvm_asm!("vmptrld $0" : /* no outputs */ : "m"(addr)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:75:5 [INFO] [stdout] | [INFO] [stdout] 75 | llvm_asm!("vmptrst ($0)" : /* no outputs */ : "r"(&value) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | llvm_asm!("vmread $1, $0" : "=r"(value) : "r"(field)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | llvm_asm!("vmwrite $1, $0" : /* no outputs */ : "r"(field), "r"(value)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | llvm_asm!("vmlaunch"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/bits64/vmx.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | llvm_asm!("vmresume"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | llvm_asm!("mov %cr0, $0" : "=r" (ret)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:105:5 [INFO] [stdout] | [INFO] [stdout] 105 | llvm_asm!("mov $0, %cr0" :: "r" (val.bits) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:114:5 [INFO] [stdout] | [INFO] [stdout] 114 | llvm_asm!("mov %cr2, $0" : "=r" (ret)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | llvm_asm!("mov $0, %cr2" :: "r" (val) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 132 | llvm_asm!("mov %cr3, $0" : "=r" (ret)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | llvm_asm!("mov $0, %cr3" :: "r" (val) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:150:5 [INFO] [stdout] | [INFO] [stdout] 150 | llvm_asm!("mov %cr4, $0" : "=r" (ret)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/controlregs.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | llvm_asm!("mov $0, %cr4" :: "r" (val.bits) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | llvm_asm!("lgdt ($0)" :: "r" (gdt) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | llvm_asm!("sgdt ($0)" : "+r" (idt as *mut DescriptorTablePointer) :: "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | llvm_asm!("lldt $0" :: "r" (selector.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | llvm_asm!("sldt $0" : "=r"(selector)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 107 | llvm_asm!("lidt ($0)" :: "r" (idt) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/dtables.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | llvm_asm!("sidt ($0)" : "+r" (idt as *mut DescriptorTablePointer) :: "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/fence.rs:8:14 [INFO] [stdout] | [INFO] [stdout] 8 | unsafe { llvm_asm!("mfence" ::: "memory") }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/fence.rs:17:14 [INFO] [stdout] | [INFO] [stdout] 17 | unsafe { llvm_asm!("sfence" ::: "memory") }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/fence.rs:27:14 [INFO] [stdout] | [INFO] [stdout] 27 | unsafe { llvm_asm!("sfence" ::: "memory") }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | llvm_asm!("outb %al, %dx" :: "{dx}"(port), "{al}"(val)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | llvm_asm!("inb %dx, %al" : "={ax}"(ret) : "{dx}"(port) :: "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | llvm_asm!("outw %ax, %dx" :: "{dx}"(port), "{al}"(val)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | llvm_asm!("inw %dx, %ax" : "={ax}"(ret) : "{dx}"(port) :: "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | llvm_asm!("outl %eax, %dx" :: "{dx}"(port), "{al}"(val)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/io.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | llvm_asm!("inl %dx, %eax" : "={ax}"(ret) : "{dx}"(port) :: "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/irq.rs:355:5 [INFO] [stdout] | [INFO] [stdout] 355 | llvm_asm!("sti"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/irq.rs:363:5 [INFO] [stdout] | [INFO] [stdout] 363 | llvm_asm!("cli"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/msr.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | llvm_asm!("wrmsr" :: "{ecx}" (msr), "{eax}" (low), "{edx}" (high) : "memory" : "volatile" ); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/msr.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | llvm_asm!("rdmsr" : "={eax}" (low), "={edx}" (high) : "{ecx}" (msr) : "memory" : "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:564:5 [INFO] [stdout] | [INFO] [stdout] 564 | llvm_asm!("movw $0, %ss " :: "r" (sel.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:572:5 [INFO] [stdout] | [INFO] [stdout] 572 | llvm_asm!("movw $0, %ds " :: "r" (sel.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:580:5 [INFO] [stdout] | [INFO] [stdout] 580 | llvm_asm!("movw $0, %es " :: "r" (sel.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:588:5 [INFO] [stdout] | [INFO] [stdout] 588 | llvm_asm!("movw $0, %fs " :: "r" (sel.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:596:5 [INFO] [stdout] | [INFO] [stdout] 596 | llvm_asm!("movw $0, %gs " :: "r" (sel.bits()) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:604:14 [INFO] [stdout] | [INFO] [stdout] 604 | unsafe { llvm_asm!("mov %cs, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:611:14 [INFO] [stdout] | [INFO] [stdout] 611 | unsafe { llvm_asm!("mov %es, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:618:14 [INFO] [stdout] | [INFO] [stdout] 618 | unsafe { llvm_asm!("mov %ss, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:625:14 [INFO] [stdout] | [INFO] [stdout] 625 | unsafe { llvm_asm!("mov %ds, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:632:14 [INFO] [stdout] | [INFO] [stdout] 632 | unsafe { llvm_asm!("mov %fs, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/segmentation.rs:639:14 [INFO] [stdout] | [INFO] [stdout] 639 | unsafe { llvm_asm!("mov %gs, $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/task.rs:9:14 [INFO] [stdout] | [INFO] [stdout] 9 | unsafe { llvm_asm!("str $0" : "=r" (segment) ) }; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/task.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | llvm_asm!("ltr $0" :: "r" (sel.bits())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/tlb.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | llvm_asm!("invlpg ($0)" :: "r" (addr) : "memory"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/lib.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | llvm_asm!("hlt" :::: "volatile"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `llvm_asm`: will be removed from the compiler, use asm! instead [INFO] [stdout] --> src/lib.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | llvm_asm!("rdpid $0" : "=r"(pid)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 79 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "53ebe52bb71d905260425c6d40e72f1d6b4cf3bbb42828fe7f8de260f5e65d30", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "53ebe52bb71d905260425c6d40e72f1d6b4cf3bbb42828fe7f8de260f5e65d30", kill_on_drop: false }` [INFO] [stdout] 53ebe52bb71d905260425c6d40e72f1d6b4cf3bbb42828fe7f8de260f5e65d30