| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 252964
|
|
|
|
|
|
| |
I was a little too aggressive about adding sources from the arm subdirectory.
llvm-svn: 252929
|
|
|
|
|
|
| |
Turns out you need to save before committing.
llvm-svn: 252928
|
|
|
|
|
|
| |
Also added a TODO comment to make the build system throw an error if the CMakeLists gets out of sync again.
llvm-svn: 252927
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of tests and __fixuint
Summary:
The following tests for 128-bit floating-point type behaved in a strange way, thought it were bugs, but seem to be mistakes in tests:
* `fixtfsi` test checked for `0x80000001` as a value returned for number less than can be represented, while `LONG_MIN` should be returned on saturation;
* `fixunstfdi` wasn't enabled for AArch64, only for PPC, but there is nothing PPC specific in that test;
* `multf3` tried to underflow multiplication by producing result with 16383 exponent, while there are still 112 bits of fraction plus implicit bit, so resultant exponent should be 16497.
Tests for some other builtins didn't exist:
* `fixtfdi`
* `fixtfti`
* `fixunstfti`
They were made by copying similar files and adjusting for wider types and adding/removing some reasonable/extra checks.
Also `__fixuint` seems to have off by one error, updated tests to catch this case.
Reviewers: rengolin, zatrazz, howard.hinnant, t.p.northover, jmolloy, enefaim
Subscribers: aemerson, llvm-commits, rengolin
Differential Revision: http://reviews.llvm.org/D14187
llvm-svn: 252180
|
|
|
|
| |
llvm-svn: 251931
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add chkstk/alloca for gcc objects.
Replace or instructions with test, the latter should be marginally more
efficent, as it does not write to memory.
Differential Revision: http://reviews.llvm.org/D14044
Patch by vadimcn
llvm-svn: 251928
|
|
|
|
|
|
|
|
|
| |
MSVC 2013 doesnt support C99 fully, including the hexidecimal floating point
representation. Use the expanded value to permit building with it.
Patch by Tee Hao Wei!
llvm-svn: 250365
|
|
|
|
|
|
|
|
|
| |
The assembly implementations use GNU syntax which MSVC doesn't handle. Rather
than duplicate the code in a second syntax, use the C implementations.
Patch by Tee Hao Wei!
llvm-svn: 250360
|
|
|
|
|
|
|
|
|
| |
Add an implementation for __builtin_clzll on MSVC even when _BitScanForward4 is
unavailable.
Patch by Tee Hao Wei!
llvm-svn: 250359
|
|
|
|
|
|
|
|
| |
Revert once more. This seems to fail to build on the buildbots which build with
ninja rather than MSBuild/Visual Studio. This requires further build
infrastructure changes to deal with the assembly routines.
llvm-svn: 250001
|
|
|
|
|
|
|
| |
Previous changes should now permit building on MSVC 2013 in addition to MSVC
2015.
llvm-svn: 250000
|
|
|
|
|
|
| |
Abstract out the always inline spelling similar to ASAN. NFC.
llvm-svn: 249986
|
|
|
|
|
|
|
| |
Now that we have the NORETURN macro, use that to mark the function as noreturn,
rather than the GNU __attribute__.
llvm-svn: 249985
|
|
|
|
|
|
|
|
|
| |
__inline is a vendor specific spelling for inline. clang and gcc treat it the
same as inline, and is available in MSVC 2013 which does not implement C99
(VS2015 supports the inline keyword though). This will allow us to build the
builtins using MSVC.
llvm-svn: 249953
|
|
|
|
|
|
|
| |
Seems to break on the sanitizer buildbot. Revert until it can be fixed
properly.
llvm-svn: 249950
|
|
|
|
|
|
| |
_BitReverse64 is only available on ARM and x64. Guard it accordingly.
llvm-svn: 249949
|
|
|
|
|
|
| |
Patch by Tee Hao Wei!
llvm-svn: 249948
|
|
|
|
| |
llvm-svn: 249914
|
|
|
|
|
|
| |
Xcode distribution.
llvm-svn: 249912
|
|
|
|
| |
llvm-svn: 249888
|
|
|
|
|
|
|
| |
The ARM RTABI defines these functions as __aeabi_h2f, __aeabi_f2h and
__aeabi_d2h, so we need aliases for them.
llvm-svn: 249559
|
|
|
|
|
|
|
| |
__GNUC__ indicates the GNU compiler, not __GNU__. This got through due to
building with clang rather than gcc.
llvm-svn: 249516
|
|
|
|
|
|
|
|
|
| |
cl does not support the same intrinsics as clang. Provide implementations for
the intrinsics using MSVC builtins.
Patch by Tee Hao Wei!
llvm-svn: 249515
|
|
|
|
|
|
|
|
|
| |
cl does not support C99 completely as of VS2015. Emulate _Complex to allow
building with MSVC.
Patch by Tee Hao Wei!
llvm-svn: 249514
|
|
|
|
|
|
|
|
| |
Use MSVCRT functions for floating-point builtins unavailable on MSVC.
Patch by Tee Hao Wei!
llvm-svn: 249513
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: howard.hinnant, samsonov
Subscribers: samsonov, dsanders, llvm-commits
Differential Revision: http://reviews.llvm.org/D13098
llvm-svn: 249382
|
|
|
|
|
|
|
|
| |
Unfortunately, int_utils.h needs to depend on int_lib for the common macro
definitions. However, currently, int_utils.h is included by int_lib.h. Reorder
the inclusion to work around this.
llvm-svn: 249376
|
|
|
|
|
|
|
|
| |
This allows us to build the builtins using MSVC. NFC.
Patch by Tee Hao Wei!
llvm-svn: 249375
|
|
|
|
|
|
|
|
| |
Use 4294967296.f instead of 0x1p32f to fix MSVC. NFC.
Patch by Tee Hao Wei!
llvm-svn: 249374
|
|
|
|
|
|
|
|
| |
Include Windows.h instead of winbase.h and windef.h
Patch by Tee Hao Wei!
llvm-svn: 249373
|
|
|
|
|
|
|
|
| |
so they don't get included on 'm' architectures. NFC.
This should help make the compiler-rt build less noisy.
llvm-svn: 249084
|
|
|
|
|
|
|
|
| |
files for OS X to the exclude lists.
This should help make the compiler-rt build less noisy.
llvm-svn: 249070
|
|
|
|
|
|
|
|
| |
files for the iOS simulator to the exclude lists.
This should help make the compiler-rt build less noisy.
llvm-svn: 249068
|
|
|
|
|
|
|
|
| |
files for iOS to the exclude lists.
This should help make the compiler-rt build less noisy.
llvm-svn: 249057
|
|
|
|
|
|
|
|
| |
lists change.
We need to make sure that if you change the builtin filter lists CMake re-generates its configurations so it includes the right builtins in the generated libraries.
llvm-svn: 248852
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: This ports functionality from the clang_macho_embedded.mk platform makefile over to CMake.
Reviewers: bogner, samsonov, bob.wilson
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D13226
llvm-svn: 248850
|
|
|
|
|
|
| |
architectures since we don't support aeabi on iOS.
llvm-svn: 248744
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the builtins are built with libgcc as the unwind provider on ARM, the exposed
_Unwind_SetIP is a macro. This results in the following warning due to
expansion of the argument:
warning: suggest parentheses around arithmetic in operand of ‘|’ [-Wparentheses]
Add a no-op set of parenthesis around the argument that will prevent this
warning.
llvm-svn: 248686
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a new name for ARM32 (armhf). We now force that the default build for
ARM32 (arm) to be soft-float ABI. This has a corresponding clang change to look
for these names based on the floating point ABI. The functions are built
identically (the functions are marked as AAPCS, so the calling convention does
not change, as per the RTABI specification), however, the object file contains
attributes indicating the build configuration which the linker will ensure are
not mix and matched. We now built the appropriate named archive so that we can
link properly.
llvm-svn: 248648
|
|
|
|
|
|
| |
There are lingering issues building the atomic builtins with various versions of gcc. To unblock people we can only include them on Apple platforms where they are more tested.
llvm-svn: 248386
|
|
|
|
| |
llvm-svn: 248385
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
make/platform/clang_darwin.mk in compiler_rt
Summary:
Building the builtins on Darwin platforms is a bit complicated. This is a first-pass implementation of the functionality from clang_darwin.mk into CMake.
When building the builtins on Darwin we have layers of blacklists that we apply based on platform, architecture, and minimum supported OS version.
Reviewers: bogner, filcab, bob.wilson, samsonov
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D13059
llvm-svn: 248383
|
|
|
|
|
|
| |
Returning a void expression is bad.
llvm-svn: 248346
|
|
|
|
| |
llvm-svn: 248330
|
|
|
|
|
|
|
|
|
|
| |
available.
This should fix the bots broken by r248322.
Reviewed by bogner over my shoulder.
llvm-svn: 248328
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: bogner, samsonov
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D13069
llvm-svn: 248322
|
|
|
|
|
|
| |
Building iOS does respect COMPILER_RT_ENABLE_IOS.
llvm-svn: 246501
|
|
|
|
| |
llvm-svn: 246499
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
I broke building the builtins with r245967. This fixes them on Linux and builds them properly for Darwin.
The old code could not be made to work on Darwin as a result of the refactoring of add_compiler_rt_runtime, so I had to rework the way they are built for Darwin. This solution is not ideal and will be fixed in subsequent commits. I just want to get this in so everything is working again.
Reviewers: samsonov, chh, compnerd, bogner
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D12500
llvm-svn: 246487
|