Вот текст в документе LLVM "langref" :
"cc 10" - GHC Convention
Это соглашение о вызовах было специально реализовано для использования компилятором Glasgow Haskell (GHC). Он передает все в регистры, доходя до крайностей, чтобы добиться этого, отключив регистры сохранения вызываемого объекта. Это соглашение о вызовах не должно использоваться Однако только для определенных ситуаций, таких как альтернатива методике производительности закрепления регистров , часто используемой при реализации функциональных языков программирования. На данный момент только X86 поддерживает это соглашение и имеет следующие ограничения:
- На X86 -32 поддерживает только до 4-битных параметров типа . Типы с плавающей запятой не поддерживаются.
- В X86-64 поддерживает только до 10-битных параметров типа и 6 параметров с плавающей запятой .
Q:
означает «закрепление регистров» или относится в "передает все в регистры", наверно.
что такое "4-битные параметры типа"? Я просто искал в руководстве Intel IA, но ничего не нашел.это особенность процессора Intel?