2021-11-22 - Rust CTCFT - Rust for LinuxMoonshot: rust-analyzer support (e.g. “▶ Run Test | Debug”). Language Library Tooling Tooling Codegen quality: minimal source code example 1 struct Example(Option); impl Drop for Example { self.0.take(); } } pub fn example() -> u32 { Example(Some(10u32)).0.take().unwrap() } Codegen quality: output example::example: pushq %rbx subq $16, %rsp movabsq $42949672961 movl $10, %eax retq When unwrap_unchecked is used instead. Tooling Tooling Codegen quality: example 2, minimal source code use std::ptr::read_volatile; pub unsafe fn test1(ptr: *const 0 码力 | 53 页 | 332.50 KB | 9 月前3
Rust 语言学习笔记false # 控制`-C lto` 参数,此参数影响可执行文件和静态库的生成, debug-assertions = true # 控制调试断言是否开启 codegen-units = 1 # 控制编译器的 `-C codegen-units` 参数。注意,当`lto = true`时,此字段值 被忽略 # 发布模板, 对应`cargo build --release`命令 [profile debug-assertions = false codegen-units = 1 # 测试模板,对应`cargo test`命令 [profile.test] opt-level = 0 debug = true rpath = false lto = false debug-assertions = true codegen-units = 1 # 性能评估模板,对应`cargo debug-assertions = false codegen-units = 1 # 文档模板,对应`cargo doc`命令 [profile.doc] opt-level = 0 debug = true rpath = false lto = false debug-assertions = true codegen-units = 1 5.2.4 feature0 码力 | 117 页 | 2.24 MB | 1 年前3
共 2 条
- 1













