summaryrefslogtreecommitdiffstats
path: root/compiler-rt/test/builtins/Unit
Commit message (Collapse)AuthorAgeFilesLines
* [Builtins] Implement half-precision conversions.Ahmed Bougacha2015-05-124-0/+378
| | | | | | | | | | | | | | | | | Mostly uninteresting, except: - in __extendXfYf2, when checking if the number is normal, the old code relied on the unsignedness of src_rep_t, which is a problem when sizeof(src_rep_t) < sizeof(int): the result gets promoted to int, the signedness of which breaks the comparison. I added an explicit cast; it shouldn't affect other types. - we can't pass __fp16, so src_t and src_rep_t are the same. - the gnu_*_ieee symbols are simply duplicated definitions, as aliases are problematic on mach-o (where only weak aliases are supported; that's not what we want). Differential Revision: http://reviews.llvm.org/D9693 llvm-svn: 237161
* Add COMPILER_RT_ABI attribute to declarations of builtin functions in unittestsDerek Schuff2015-04-24131-133/+159
| | | | | | | | | | | | | | Summary: This makes their local declarations match their definitions for ARM targets, where they have a different calling convention. This really only affects functions that use floating point types (since the runtime functions use soft-float, and some targets may default to hard-float) but it seemed good to make it uniform and do the int-only ones too. Differential Revision: http://reviews.llvm.org/D9062 llvm-svn: 235722
* Refactor float to integer conversion to share the same code.Joerg Sonnenberger2015-03-112-0/+129
| | | | | | | | | | | | | 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
* Avoid warnings on !PowerPCJoerg Sonnenberger2015-03-081-1/+2
| | | | llvm-svn: 231609
* Don't produce warnings on !PowerPC.Joerg Sonnenberger2015-03-083-3/+6
| | | | llvm-svn: 231608
* tests: correct builtins test if built under -mthumb on ARMSaleem Abdulrasool2015-01-052-11/+28
| | | | | | | | | | | The clear_cache and enable_execute_stack tests attempt to memcpy the definition of a function into a buffer before executing the function. The problem with this approach is that on some targets (ARM with thumb mode compilation, MIPS with MIPS16 codegen or uMIPS), you would use a pointer which is incorrect (it would be off-by-one) due to the ISA selection being encoded into the address. This ensures that the function address is retrieved correctly in all cases. llvm-svn: 225215
* Implement floatsitf, floatunstfsi, which performJoerg Sonnenberger2014-09-162-0/+113
| | | | | | | | | | (signed/unsigned)integer to quad-precision conversion. Submitted by GuanHong Liu. Differential Revision: http://reviews.llvm.org/D2805 llvm-svn: 217901
* Provide mul for IEEE quad. From GuanHong Liu.Joerg Sonnenberger2014-06-191-0/+95
| | | | | | Differential Revision: http://reviews.llvm.org/D2799 llvm-svn: 211313
* Provide add and sub for IEEE quad. From GuanHong Liu.Joerg Sonnenberger2014-06-192-0/+155
| | | | | | Differential Revision: http://reviews.llvm.org/D2798 llvm-svn: 211312
* Implement __divtf3 for IEEE quad precision.Joerg Sonnenberger2014-05-301-0/+94
| | | | | | | Patch by: GuanHong Liu Differential Revision: http://reviews.llvm.org/D2800 llvm-svn: 209886
* Add __extenddftf2 and __extendsftf2 for IEEE quad precision.Joerg Sonnenberger2014-05-292-0/+165
| | | | | | | Patch by: GuanHong Liu Differential Revision: http://reviews.llvm.org/D2802 llvm-svn: 209783
* Implement __trunctfdf2 and __trunctfsf2 for IEEE quad precision.Joerg Sonnenberger2014-05-292-0/+151
| | | | | | | Patch by: GuanHong Liu Differential Revision: http://reviews.llvm.org/D2803 llvm-svn: 209782
* Add support for IEEE754 quad precision comparison functions.Joerg Sonnenberger2014-04-018-0/+822
| | | | | | | | From GuanHong Liu. Differential Revision: http://llvm-reviews.chandlerc.com/D2797 llvm-svn: 205312
* Use CRT_HAS_128BIT.Joerg Sonnenberger2014-03-1835-104/+104
| | | | llvm-svn: 204182
* Move tests for BlocksRuntime and builtins to corresponding directories under ↵Alexey Samsonov2014-02-14158-0/+166558
test/ llvm-svn: 201396
OpenPOWER on IntegriCloud