OS 开发中可以使用基于 LLVM 的语言吗?
Can LLVM-based languages be used in OS development?
据我了解,LLVM 不允许您强制使用特定的处理器寄存器。这是否意味着一种在底层使用 LLVM 的语言不能用于开发 OS、引导加载程序或诸如需要直接访问寄存器之类的东西?
LLVM IR 可以或不能用于OS开发中还有其他原因吗?
LLVM 是一个抽象机器。因此,它不会直接允许您访问某些硬件寄存器。但是,您仍然可以使用内联汇编(通过 call asm
LLVM 位码助记符)或在汇编中编写需要访问固定硬件寄存器的少数函数,并从您的 LLVM 代码中调用它们。
据我了解,LLVM 不允许您强制使用特定的处理器寄存器。这是否意味着一种在底层使用 LLVM 的语言不能用于开发 OS、引导加载程序或诸如需要直接访问寄存器之类的东西?
LLVM IR 可以或不能用于OS开发中还有其他原因吗?
LLVM 是一个抽象机器。因此,它不会直接允许您访问某些硬件寄存器。但是,您仍然可以使用内联汇编(通过 call asm
LLVM 位码助记符)或在汇编中编写需要访问固定硬件寄存器的少数函数,并从您的 LLVM 代码中调用它们。