You copied the Doc URL to your clipboard.

__qdbl intrinsic

This intrinsic inserts instructions equivalent to the saturating addition of an integer with itself into the instruction stream generated by the compiler. It enables you to obtain the saturating double of an integer from within your C or C++ code.


int __qdbl(int val)



is the data value to be doubled.

Return value

The __qdbl intrinsic returns the saturating add of val with itself, or equivalently, __qadd(val, val).


The compiler does not recognize the __qdbl intrinsic when compiling for a target that does not support the QADD instruction. The compiler generates either a warning or an error in this case, depending on the source language:

  • In C code: Warning: #223-D: function "__qdbl" declared implicitly.
  • In C++ code: Error: #20: identifier "__qdbl" is undefined.