这是LLVM's doc "langref"中的文字:
"cc 10" - GHC convention
This calling convention has been implemented specifically for use by the Glasgow Haskell Compiler (GHC). It passes everything in registers, going to extremes to achieve this by disabling callee save registers. This calling convention should not be used lightly but only for specific situations such as an alternative to the register pinning performance technique often used when implementing functional programming languages.At the moment only X86 supports this convention and it has the following limitations:
- On X86-32 only supports up to 4 bit type parameters. No floating point types are supported.
- On X86-64 only supports up to 10 bit type parameters and 6 floating point parameters.
问:
最佳答案
CC_X86_64_GHC
和 CC_X86_32_GHC
)。 关于haskell - LLVM 对 GHC 的调用约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6394937/