[llvm-dev] Fixed point data type support

陳韋任 via llvm-dev llvm-dev at lists.llvm.org
Thu Jul 6 04:26:30 PDT 2017

> 1.       Using exactly the existing LLVM integer type:
> a.        How to distinguish fixed point data and regular integer data
> types during lowering and register allocation (if there is operations that
> operates on different type of registers than GPRs)? (Any functional,
> performance concerns here?)
> b.     For parameter passing, linkage support, should we use “attribute”
> to support it?
> c.     Will there be any transformations/optimizations (e.g. SROA) that
> operates on integer types but may not be suitable to Fixed point types?
​From what I can tell from the links you provide, the general suggestion is​

​let Clang emit fix-point type as LLVM integer type (iN). Perhaps you can
distinguish it (say, i40) from regular integer type (i32), and make backend
use particular register or operation on it. If not, you have to emit LLVM
(?) intrinsic to help LLVM make the decision.


Wei-Ren Chen (陳韋任)
Homepage: https://people.cs.nctu.edu.tw/~chenwj
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170706/3f09fb1f/attachment.html>

More information about the llvm-dev mailing list