 Comprehensive Rust(繁体中文)有兩個主要的「設定檔」可產生程式碼,分別是「Debug」(加強執行階段檢查,最佳化程度較低) 和「Release」(減少執行階段檢查,大規模最佳化)。這些設定檔位於頂端的「Debug」下方。 • 感興趣的話,不妨點選「...」下的「ASM」查看產生的組語程式碼。 學員準備休息時,請鼓勵他們開啟 Playground 略微試驗一下。在剩餘的課堂時間,建議他們持續開啟 Playground 分頁嘗試操作。如果學生程度較高,想進一步瞭解 S。 53.2 行內組語 有時候,我們需要使用組語,才能執行 Rust 程式碼無法執行的作業。舉例來說,如要發出 HVC (管理程序 呼叫) 指示韌體關閉系統: use core::arch::asm; use core::panic::PanicInfo; mod exceptions; const PSCI_SYSTEM_OFF: u32 = 0x84000008; extern "C" Safe because this only uses the declared registers and doesn't do // anything with memory. unsafe { asm!("hvc #0", inout("w0") PSCI_SYSTEM_OFF => _, inout("w1") 0 => _, inout("w2") 0 => _, inout("w3") 00 码力 | 358 页 | 1.41 MB | 10 月前3 Comprehensive Rust(繁体中文)有兩個主要的「設定檔」可產生程式碼,分別是「Debug」(加強執行階段檢查,最佳化程度較低) 和「Release」(減少執行階段檢查,大規模最佳化)。這些設定檔位於頂端的「Debug」下方。 • 感興趣的話,不妨點選「...」下的「ASM」查看產生的組語程式碼。 學員準備休息時,請鼓勵他們開啟 Playground 略微試驗一下。在剩餘的課堂時間,建議他們持續開啟 Playground 分頁嘗試操作。如果學生程度較高,想進一步瞭解 S。 53.2 行內組語 有時候,我們需要使用組語,才能執行 Rust 程式碼無法執行的作業。舉例來說,如要發出 HVC (管理程序 呼叫) 指示韌體關閉系統: use core::arch::asm; use core::panic::PanicInfo; mod exceptions; const PSCI_SYSTEM_OFF: u32 = 0x84000008; extern "C" Safe because this only uses the declared registers and doesn't do // anything with memory. unsafe { asm!("hvc #0", inout("w0") PSCI_SYSTEM_OFF => _, inout("w1") 0 => _, inout("w2") 0 => _, inout("w3") 00 码力 | 358 页 | 1.41 MB | 10 月前3
 Julia 1.11.4current method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2007 页 | 6.73 MB | 3 月前3 Julia 1.11.4current method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2007 页 | 6.73 MB | 3 月前3
 Julia 1.11.5 Documentationcurrent method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2007 页 | 6.73 MB | 3 月前3 Julia 1.11.5 Documentationcurrent method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2007 页 | 6.73 MB | 3 月前3
 Julia 1.11.6 Release Notescurrent method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2007 页 | 6.73 MB | 3 月前3 Julia 1.11.6 Release Notescurrent method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2007 页 | 6.73 MB | 3 月前3
 julia 1.13.0 DEVcurrent method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2058 页 | 7.45 MB | 3 月前3 julia 1.13.0 DEVcurrent method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2058 页 | 7.45 MB | 3 月前3
 Julia 1.12.0 RC1current method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2057 页 | 7.44 MB | 3 月前3 Julia 1.12.0 RC1current method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2057 页 | 7.44 MB | 3 月前3
 Julia 1.12.0 Beta4current method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2057 页 | 7.44 MB | 3 月前3 Julia 1.12.0 Beta4current method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2057 页 | 7.44 MB | 3 月前3
 Julia 1.12.0 Beta3current method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2057 页 | 7.44 MB | 3 月前3 Julia 1.12.0 Beta3current method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2057 页 | 7.44 MB | 3 月前3
 julia 1.12.0 beta1current method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2047 页 | 7.41 MB | 3 月前3 julia 1.12.0 beta1current method instance object. • jl_gdbdumpcode(mi) :: For dumping all of code_typed/code_llvm/code_asm when the REPL is not working right. • jlbacktrace() :: For dumping the current Julia backtrace stack0 码力 | 2047 页 | 7.41 MB | 3 月前3
共 9 条
- 1













