[LLVMdev] convert integer to double "uitofp" or "sitofp" ?
xinfinity_a at yahoo.com
Fri Oct 21 02:59:07 PDT 2011
As I understand, in LLVM IR it cannot be determined whether a register of type int is signed or unsigned.
If one wants to convert an integer to a double, which instruction should be used: "uitofp" or "sitofp" ?
We track the values taken by all load instructions and we process them using a function. If the value is a pointer, we use int64 as the type of the function argument.
But in case the load instruction loads from a scalar, we need to convert it to a unique type, which we chose to be DoubleTy and use a function that expects a double as parameter.
Hence, we need to convert integers of various sizes to double. Is it possible to detect which instruction should be used ("uitofp" or "sitofp" )?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev