On Thu, Aug 11, 2011 at 2:50 PM, Richard Guenther <rguent...@suse.de> wrote:
>> Currently, conversion from floating point to integer on 64bit targets >> goes through DImode temporary, due to missing BUILT_IN_ICEIL (and >> other) builtins that can convert directly from FP to integer. > Please document those in doc/extend.texi and make sure they do not > leak into the global namespace as ifloor, etc., but are only available > as __builtin_ifloor, etc.. Please also add at least a testcase > that excercises expanding all of the variants - like by simply > writing wrappers with the non-__builtin_ name variant like Regarding the documentation, I found this in the @section Other built-in functions provided by GCC: <quote> GCC provides a large number of built-in functions other than the ones mentioned above. Some of these are for internal use in the processing of exceptions or variable-length argument lists and will not be documented here because they may change from time to time; we do not recommend general use of these functions. The remaining functions are provided for optimization purposes. </quote> These new functions definitely fall under this category, and for the same reason we didn't document lceil/lfloor builtins. They are used internally for optimization purposes and the same functionality can be achieved by simply writing (int) ceil (...). Uros.