我正在使用OCaml / llvm开发一个小型专用编译器。到目前为止,一切都很好,但我仍然坚持使用IEE-754语义进行浮点运算。
根据llvm documnentation,有一种为每个浮点指令指定快速数学标志的方法:
http://llvm.org/docs/LangRef.html#fastmath
不幸的是,我无法弄清楚,如何使用OCaml设置这些标志。我只能使用:
val build_fadd : llvalue -> llvalue -> string -> llbuilder -> llvalue
那么是否标记了OCaml绑定中未实现的指令?如果不是,我如何使用外部C函数为现有指令更改标志?