[llvm-dev] Misleading documentation on FP to integer conversion instructions?

David Jones via llvm-dev llvm-dev at lists.llvm.org
Fri Sep 4 06:26:05 PDT 2020


The LLVM IR reference manual states, for fptosi:

"The ‘fptosi’ instruction converts its floating-point
<http://llvm.org/docs/LangRef.html#t-floating> operand into the nearest
(rounding towards zero) signed integer value."

I interpreted this to mean that it rounds:

The nearest integer to 0.3 is 0.

The nearest integer to 0.9 is 1.

The nearest integer to 0.5 is either 0 or 1. And this is where the
"rounding towards zero" applies - the result is prescribed to be 0.

In actuality, the instruction truncates, returning 0 for all cases.

Should this be reworded, perhaps to use the word "truncate"?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200904/07a39ca1/attachment.html>


More information about the llvm-dev mailing list