summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/builtins/fixunsdfdi.c
Commit message (Collapse)AuthorAgeFilesLines
* builtins: tweak constant spellingSaleem Abdulrasool2015-10-061-2/+2
| | | | | | | | Use 4294967296.f instead of 0x1p32f to fix MSVC. NFC. Patch by Tee Hao Wei! llvm-svn: 249374
* Fix float->uint conversion for inputs less than 0Derek Schuff2015-05-011-0/+1
| | | | | | | | | | | | | | | | | | | | Summary: The spec for these functions says that they should return 0 in this case but this regressed in r234148. That revision essentially delegates the conversion to the hardware, but that has different behavior on different platforms (e.g. it is wrong on x86). Also fix a typo in the name of __fixunsdfti Test Plan: The existing unit tests now pass Reviewers: joerg, howard.hinnant Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D9305 llvm-svn: 236319
* Add hard float versions of FP to LL conversionsSergey Dmitrouk2015-04-061-2/+24
| | | | | | | | | | | | | | | | | | | | | | | | | This adds hard-float implementation for the following builtins: * __fixdfdi() * __fixsfdi() * __fixunsdfdi() * __fixunssfdi() The soft-float implementation does never raise floating point exceptions, which doesn't allow clients to detect floating point conversion errors. I must mention that I had to refer to libgcc's implementation to write these functions. Related unit-tests of compiler-rt passed with these changes. Patch was somewhat out-dated, so was updated locally without any functional changes. Differential Revision: http://reviews.llvm.org/D5376 llvm-svn: 234148
* Refactor float to integer conversion to share the same code.Joerg Sonnenberger2015-03-111-32/+6
| | | | | | | | | | | | | 80bit Intel/PPC long double is excluded due to lacking support for the abstraction. Consistently provide saturation logic. Extend to long double on 128bit IEEE extended platforms. Initial patch with test cases from GuanHong Liu. Reviewed by Steve Canon. Differential Revision: http://reviews.llvm.org/D2804 llvm-svn: 231965
* Move original compiler-rt functions (libgcc replacement) to lib/builtins ↵Alexey Samsonov2014-02-141-0/+47
directory llvm-svn: 201393
OpenPOWER on IntegriCloud