summaryrefslogtreecommitdiff
path: root/make
AgeCommit message (Collapse)Author
2014-11-28[asan] Remove the local copy of Android ucontext.h.Evgeniy Stepanov
This header is present in the r10c release of the NDK. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@222915 91177308-0d34-0410-b5e6-96231b3b80d8
2014-11-11Add a missing parenthesis mistakenly dropped in r221621.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@221656 91177308-0d34-0410-b5e6-96231b3b80d8
2014-11-10Clean up indentation after previous change.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@221622 91177308-0d34-0410-b5e6-96231b3b80d8
2014-11-10Build Darwin libclang_rt libraries against real SDKs.Bob Wilson
The minimal fake SDK was very useful in allowing us to build for all Darwin platforms without needing access to the real SDKs, but it did not support building any of the sanitizer runtimes. It's important to fix that. As a consequence, if you don't have the iOS SDKs installed, we will now skip building the iOS-specific libclang_rt libraries. rdar://problem/18825276 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@221621 91177308-0d34-0410-b5e6-96231b3b80d8
2014-11-10Do not build a separate x86_64h Haswell slice for the iOS simulator.Bob Wilson
r199996 added new x86_64h slices for all the Darwin compiler_rt libraries that had an x86_64 slice, but that is overkill for the iOS Simulator platform where the x86_64h slice is never used. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@221610 91177308-0d34-0410-b5e6-96231b3b80d8
2014-11-07Use @rpath for ASan dylib in MakefilesKuba Brecka
Reviewed at http://reviews.llvm.org/D6176 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@221556 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-14Add complex multiply/divide functions to arm64 iOS libclang_rt libraries.Bob Wilson
Clang r219557 introduces libcalls to complex multiply/divide functions. Since these functions are not available in iOS for arm64 devices, add them to the static libraries. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@219715 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-08AArch64: don't just hack arm64 support into compiler-rt.Tim Northover
We should check whether the compiler & linker support ARM64 before attempting to build a version of compiler-rt for it. Otherwise things will go badly. rdar://problem/18575597 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@219332 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-08AArch64: add support for ARM64 iOS versions of compiler-rt.Tim Northover
Just a dummy directory and a few sane choices in the Darwin SDK. rdar://problem/18575597 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@219323 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-08[ASan] Bump the minimum OSX version required to run ASan to 10.7.Alexander Potapenko
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@219302 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-10Fix configure+make build of profile runtime libraryAlexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212665 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-22Unify the name of compiler-rt builtins library on Linux.Alexey Samsonov
Call it "libclang_rt.builtins-<arch>.a" to be consistent with sanitizers/profile libraries naming. Modify Makefile and CMake build systems and Clang driver accordingly. Fixes PR19822. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209473 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-15Fix typosAlp Toker
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@208841 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-12[ASan] Split static ASan runtime in two parts: asan and asan_cxx.Alexey Samsonov
asan_cxx containts replacements for new/delete operators, and should only be linked in C++ mode. We plan to start building this part with exception support to make new more standard-compliant. See https://code.google.com/p/address-sanitizer/issues/detail?id=295 for more details. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@208609 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-07[DFSan] Update build rules for Makefile buildAlexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@208268 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-21InstrProf: Reorganize files; no functionality changeDuncan P. N. Exon Smith
Move functions around to prepare for some other changes. - Merge InstrProfilingExtras.h with InstrProfiling.h. There's no benefit to having these split. - Rename InstrProfilingExtras.c to InstrProfilingFile.c. - Split actual buffer writing code out of InstrProfiling.c into InstrProfilingBuffer.c. - Drive-by corrections of a couple of header comments. <rdar://problem/15943240> git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@204497 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-20PGO: Add explicit static initializationDuncan P. N. Exon Smith
Instead of relying on explicit static initialization from translation units, create a new file, InstrProfilingRuntime.cc, with an __llvm_pgo_runtime variable. After this commit (and its pair in clang), the driver will create a use of this variable. Unless the user defines their own version, the new object file will get pulled in, including that C++ static initialization that calls __llvm_pgo_register_write_atexit. The result is that, at least on Darwin, static initialization typically consists of a single function call, which registers a writeout functino atexit. Furthermore, users can skip even this behaviour by defining their own __llvm_pgo_runtime. <rdar://problem/15943240> git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@204380 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-20PGO: Moving files for clarityDuncan P. N. Exon Smith
<rdar://problem/15943240> git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@204373 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-20PGO: Implement Darwin linker magic for instrumentationDuncan P. N. Exon Smith
Use Darwin linker magic to find bounds of instrumentation data sections at link time instead of runtime. <rdar://problem/15943240> git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@204302 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-20PGO: Split out initialization of section boundsDuncan P. N. Exon Smith
Currently we register instrumentation data at runtime to determine the bounds of the sections where the data lives. Soon we'll implement platform-specific linker magic to determine this at link time. Move this logic to a separate file, so that our build system can choose the correct platform-specific code. No functionality change intended. <rdar://problem/15943240> git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@204299 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-19PGO: Appease buildbots after r204268Duncan P. N. Exon Smith
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@204276 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-19One more attempt to fix Makefile buildAlexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@204241 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-19[Make] Build sanitizer runtimes with -std=c++11Alexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@204239 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-18Move Android ucontext.h out of third_party.Evgeniy Stepanov
Google is re-licensing this code under the standard dual license of compiler-rt. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@204128 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-04ARM: implement __sync_fetch_and_* operationsTim Northover
Since these are primarily useful for deeply embedded targets where code size is very important, they are each in a separate file making use of infrastructure in sync-ops.h. This allows a linker to include just the functions that are actually used. rdar://problem/14736665 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@202812 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-04[asan] Fix Android configure/make build.Evgeniy Stepanov
Mirror recent cmake changes in the configure/make build system. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@202793 91177308-0d34-0410-b5e6-96231b3b80d8
2014-02-21Darwin: use the compiler-provided linkerTim Northover
When actually compiling we use clang for the final .dylib creation stage, so we should ask it what linker it'll use when detecting support for our architectures. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@201845 91177308-0d34-0410-b5e6-96231b3b80d8
2014-02-17[compiler-rt] Fix CompilerTargetTriple for non-English locales.Alexey Samsonov
When the locale of a shell is set other than English locales or the C locale, The word 'Target' may be translated. Thus, with e.g. ja_JP locale, compiler-rt couldn't be built properly. Forcing LANG=C fixes the problem. Patch by Ogino Masanori. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@201506 91177308-0d34-0410-b5e6-96231b3b80d8
2014-02-14Move original compiler-rt functions (libgcc replacement) to lib/builtins ↵Alexey Samsonov
directory git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@201393 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-29Remove -arm-enable-ehabi from Android build rules. It's enabled by default.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@200392 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-24Darwin: add x86_64h slice for Haswell.Tim Northover
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199996 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-23[asan] Android logging.Evgeniy Stepanov
This change duplicates all ASan output to system log on Android. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199887 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-21Macho-embedded: update build script for newer Clang behaviour.Tim Northover
Clang now uses the *-apple-macho triples for embedded targets using MachO. The environment makes less pretences to be running an actual Mach kernel with all the support that would imply, so a few changes are needed to the build scripts: + The Apple way of detecting endianness applies in all cases so drop the __MACH__ test. + A quick rename since "darwin_embedded" no longer makes any sense. If there's no Mach going on, there's certainly no Darwin. + Change how we test for support for a platform. The functions we build don't need any SDK support (stdio.h, ...) so we don't need to check for it. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199731 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-17[asan] Link runtime library with -lm -Wl,-z,defs to ensure that it declares ↵Evgeniy Stepanov
all its dependencies. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199483 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-16[asan] Nuke ASAN_FLEXIBLE_MAPPING_AND_OFFSET.Evgeniy Stepanov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199370 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-15Remove support for armv7f slice. <rdar://problem/12478440>Bob Wilson
This was never used for anything so we should just get rid of it. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199333 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-06profile: Rudimentary suppport for PGO instrumentationJustin Bogner
This is fairly minimal support for instrumentation based PGO. The data format is inefficient, and the output file name is hardcoded to pgo-data. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@198638 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-11Only build embedded darwin variants if the compiler supports themTim Northover
We need to filter out architectures that the compiler hasn't been built to target (most likely the ARM ones) before attemptint to build a version of libcompiler_rt. This can result in a completely empty library (e.g. soft-float doesn't have any x86 variants), in which case we shouldn't even try the build git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@197028 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-05Revert r196490 and fix include paths in makefile-based buildAlexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@196492 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-20Fixing ordering of definition of IOSSIM_SDK_PATHDuncan P. N. Exon Smith
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@195216 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-19[ASan] Don't put asan_iossim_dynamic in the list of configurations to buildAlexander Potapenko
if the iOS Simulator SDK is missing on the machine. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@195125 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-15Revert premature instructions to build __sync_fetch_*Tim Northover
My commits got a bit twisted when I was working on both embedded support and __sync stuff on the same branch. Sorry about that. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194886 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-15Add clang_darwin_embedded platform for embedded projectsTim Northover
This should build a separate set of embedded runtime libraries, supporting the option product: {PIC, static} x { Hard-float, soft-float } The emphasis is on ARM platforms (Cortex-M4F, Cortex-M3, Cortex-M0) but X86 variants are also built where possible. rdar://problem/10817205 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194873 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-15[ASan] Add the configure+make rules for building the ASan runtime for iOS ↵Alexander Potapenko
simulator. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194813 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-13[ASan] Remove the stale dependency on the Foundation framework from the ↵Alexander Potapenko
dynamic ASan runtime. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194583 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-03Push back various changes for building Apple's compiler-rt dylib.Bob Wilson
These changes had accumulated internally at Apple for no good reason. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193944 91177308-0d34-0410-b5e6-96231b3b80d8
2013-10-03[asan] Don't require X86 to build Android runtime.Evgeniy Stepanov
Patch by Greg Fitzgerald. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191883 91177308-0d34-0410-b5e6-96231b3b80d8
2013-08-22[lsan] Follow-up to r189010 - do the same in Makefile build.Sergey Matveev
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189011 91177308-0d34-0410-b5e6-96231b3b80d8
2013-08-21Add missing ']'.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188927 91177308-0d34-0410-b5e6-96231b3b80d8
2013-08-21For Darwin builds, locate tools using xcrun when available.Bob Wilson
The make/platform/darwin_bni.mk file already has similar code but we apparently neglected to add it to the clang_darwin.mk file. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188864 91177308-0d34-0410-b5e6-96231b3b80d8