如何强制OCaml内联函数?

时间:2019-01-26 19:48:29

标签: ocaml inline-functions

是否可以告诉OCaml编译器内联一个函数,而不是希望其优化过程本身可以内联?

1 个答案:

答案 0 :(得分:12)

您都可以添加属性以始终内联函数

let f x = x [@@inline always]
(* which is equivalent to *)
let f x = x [@@inline]

或强制将特定呼叫内联到另一个属性

let a = (f[@inlined]) 1

如果要检查flambda做出的内联决策,可以使用inlining-report标志。