Chandler Carruth
ffdf342728
Remove the sysroot (or isysroot) restriction from the GCDAProfile.c
...
runtime in the Makefile build system as well. Sorry for the temporary
fallout, it took me a while to find these bits.
Bill, I'm not at all confident of the change for Darwin and iOS, but as
discussed we're completely blocked on fixing this. Anyways, please
review and let me know if this will work for you guys. If necessary,
I can work with you to rig up an errno.h stub for Darwin, but I expect
that to be... moderately challenging.
llvm-svn: 184805
2013-06-25 00:57:06 +00:00
Sylvestre Ledru
6e0a254ec9
When the compiler is not providing a clean triple, we should fail
...
the build right from the start.
For now, it is only done with DEBUGMAKE is provided. That makes
things harder to debug during ports of compiler-rt on other systems.
llvm-svn: 184295
2013-06-19 12:59:56 +00:00
Alexey Samsonov
49eb5700e2
Revert r182465 and add lsan-common library to makefile-based build
...
llvm-svn: 182470
2013-05-22 13:20:37 +00:00
Nick Kledzik
69e25c45e4
<rdar://problem/13806954> enable __atomic_* functions for Darwin
...
llvm-svn: 182435
2013-05-21 23:02:04 +00:00
Alexey Samsonov
9711b25d4b
[ASan] Nuke build of static ASan runtime on Mac OS
...
llvm-svn: 182261
2013-05-20 13:38:27 +00:00
Alexey Samsonov
7dcfc46253
[Sanitizer] Build sanitizer runtimes with debug info in Makefile build
...
llvm-svn: 182260
2013-05-20 13:35:43 +00:00
Sylvestre Ledru
7b4baa91ce
Fix a typo in the comment
...
llvm-svn: 181708
2013-05-13 14:53:09 +00:00
Bob Wilson
b1835b7947
Rewrite sw_vers makefile check to avoid error message on Linux.
...
When building compiler-rt on Linux, the "which sw_vers" check fails and
writes an error message into the build log. Apparently on Solaris "which"
writes the error message to stdout, so that the current test won't even
work properly. As far as I know sw_vers always lives in /usr/bin, so just
check for it there instead of using "which".
llvm-svn: 180792
2013-04-30 17:06:40 +00:00
Evgeniy Stepanov
9562bbaf9a
Add -fno-rtti to ASan runtime cflags on Android.
...
Otherwise we are picking up an extra libstdc++ dependency.
llvm-svn: 180265
2013-04-25 14:58:23 +00:00
Bob Wilson
f7405fabf5
Use the new iOS deployment target command-line options.
...
We now rely on the -mios-simulator-version-min option to identify the iOS
simulator target. I'm not sure if there's anything in compiler-rt where that
matters, but it's the right thing to do regardless.
llvm-svn: 180163
2013-04-23 23:52:10 +00:00
Richard Smith
1ea5b805ce
Don't forget to link in the C++-specific parts of the ubsan runtime when using the Makefile build system on Darwin.
...
llvm-svn: 177684
2013-03-22 00:01:44 +00:00
Richard Smith
e86b7b0bb9
Split ubsan runtime into three pieces (compiler-rt part):
...
* libclang_rt-san-* is sanitizer_common, and is linked in only if no other
sanitizer runtime is present.
* libclang_rt-ubsan-* is the piece of the runtime which doesn't depend on
a C++ ABI library, and is always linked in.
* libclang_rt-ubsan_cxx-* is the piece of the runtime which depends on a
C++ ABI library, and is only linked in when linking a C++ binary.
The Darwin ubsan runtime is unchanged.
For more details, see Clang change r177605.
llvm-svn: 177606
2013-03-20 23:49:17 +00:00
Alexey Samsonov
d7ab381f53
[Sanitizer] Build ASan, TSan and MSan runtimes with -fno-rtti.
...
llvm-svn: 176940
2013-03-13 09:18:30 +00:00
Nick Kledzik
2b9a65e4c4
update how libcompiler_rt.dylib links under libSystem.dylib on MacOSX
...
llvm-svn: 176466
2013-03-05 00:16:52 +00:00
Evgeniy Stepanov
57d6f737e6
[sanitizer] Add MSan to Makefile-based build rules.
...
llvm-svn: 175737
2013-02-21 13:55:54 +00:00
Daniel Dunbar
a495930c1d
[build/clang_darwin] Fix the case reversal in r173465.
...
- I got confused by the double negative, the test succends on 10.6, in which
case we *do* want to perform the filter-out.
llvm-svn: 173977
2013-01-30 21:45:35 +00:00
Daniel Dunbar
562fe1af43
[build/clang_darwin] Don't try to run sw_vers if we don't have it.
...
- Also, fix the test this is guarding, which was backwards.
llvm-svn: 173465
2013-01-25 18:09:28 +00:00
Alexey Samsonov
3fd1260155
ASan: build runtime flexible mapping and offset in configure+make build as well
...
llvm-svn: 173016
2013-01-21 09:13:10 +00:00
Evgeniy Stepanov
ab111fa511
[asan] Add soname to the dynamic runtime.
...
llvm-svn: 172055
2013-01-10 10:58:14 +00:00
Nick Kledzik
9fb21e57e5
Automatically create .dSYM for libcompiler_rt.dylib when using Apple's internal build system
...
llvm-svn: 168625
2012-11-26 22:48:51 +00:00
Alexey Samsonov
77d35747be
UBSan: fix support on Darwin in 'make' build system. Patch by Jean-Daniel Dupas.
...
llvm-svn: 168167
2012-11-16 12:51:23 +00:00
Alexey Samsonov
11aec95f4a
[UBSan] Add support for building ubsan runtime library on Linux with 'make'. Compiler-rt part.
...
llvm-svn: 168038
2012-11-15 12:37:55 +00:00
Richard Smith
6122d0692b
Support for building the ubsan runtime when using the autoconf build system on
...
Darwin. Patch by Jean-Daniel Dupas, tweaked by Jonathan Sauer, simplified
somewhat by me.
llvm-svn: 167889
2012-11-13 23:55:06 +00:00
Evgeniy Stepanov
64579da1a7
Build ASan runtime for ARM/Android.
...
llvm-svn: 166559
2012-10-24 14:03:41 +00:00
Bob Wilson
201bf679b2
Fix comment typo.
...
llvm-svn: 166246
2012-10-18 23:08:23 +00:00
Daniel Dunbar
e5e1c643df
build/clang_darwin: Don't try to build ARM contents on 10.6.
...
- The cctools' ranlib on 10.6 has a bug and can't understand our ARM object
files.
llvm-svn: 166114
2012-10-17 18:33:43 +00:00
Daniel Dunbar
345b09cb80
platform/clang_darwin: Drop an x86_64 slice into cc_kext_ios5.
...
- This doesn't get used, but it is a simple workaround for PR14013.
llvm-svn: 165987
2012-10-15 22:23:34 +00:00
Daniel Dunbar
ccd312520b
Un-revert r164907 and r164902 (+ follow-ups), 10.6 build fix to follow.
...
llvm-svn: 165986
2012-10-15 22:23:32 +00:00
Nico Weber
926e072016
Revert r164907 and r164902 (+ follow-ups). They broke building on 10.6.
...
See PR14013.
llvm-svn: 165963
2012-10-15 20:37:13 +00:00
Alexey Samsonov
7b6ce747d6
Determine supported archs for compiler-rt libraries on Linux by trying to compile a simple executable
...
llvm-svn: 165504
2012-10-09 16:05:50 +00:00
Alexey Samsonov
3197f8e6cb
[ASan] don't build 64-bit runtime on 32-bit Linux platforms
...
llvm-svn: 165222
2012-10-04 12:22:33 +00:00
Bill Wendling
836d53015e
I'm getting these errors with r165159:
...
/Users/void/llvm/llvm-tot.src/projects/compiler-rt/lib/arm/eqdf2vfp.S:22:2: error: instruction requires: VFP2
vmov d6, r0, r1
^
/Users/void/llvm/llvm-tot.src/projects/compiler-rt/lib/arm/eqdf2vfp.S:23:2: error: instruction requires: VFP2
vmov d7, r2, r3
^
/Users/void/llvm/llvm-tot.src/projects/compiler-rt/lib/arm/eqdf2vfp.S:24:2: error: instruction requires: VFP2
vcmp.f64 d6, d7
^
/Users/void/llvm/llvm-tot.src/projects/compiler-rt/lib/arm/eqdf2vfp.S:25:2: error: instruction requires: VFP2
vmrs apsr_nzcv, fpscr
^
llvm-svn: 165191
2012-10-04 01:44:41 +00:00
Bob Wilson
1ff65860e4
Back out my temporary workaround for Apple buildbots.
...
--- Reverse-merging r164909 into '.':
U make/platform/clang_darwin.mk
llvm-svn: 165159
2012-10-03 21:03:42 +00:00
Alexey Samsonov
c561ce0e01
Build ASan runtime on Linux for both x86_64 and i386, same as we do with full compiler_rt and libprofile
...
llvm-svn: 165096
2012-10-03 07:16:31 +00:00
Bob Wilson
dda435bcef
Temporarily comment out some new arm variants to try to fix buildbots.
...
llvm-svn: 164909
2012-09-30 05:34:28 +00:00
Bob Wilson
a4cefbdc87
Add compiler-rt support for Swift.
...
llvm-svn: 164903
2012-09-29 23:37:01 +00:00
Bob Wilson
0e039bee0d
Add support for iOS6.
...
llvm-svn: 164902
2012-09-29 23:25:48 +00:00
Daniel Dunbar
256ea4e4f3
build/clang_darwin: Add the ASAN dynamic library.
...
- Now with spelling fix for -lstdc++.
llvm-svn: 163527
2012-09-10 18:26:38 +00:00
Chad Rosier
ca8b950317
Revert r163415 in an attempt to bring back the buildbots.
...
llvm-svn: 163522
2012-09-10 17:26:42 +00:00
Daniel Dunbar
6eae4ce2b8
build/clang_darwin: Add the ASAN dynamic library.
...
llvm-svn: 163415
2012-09-07 19:57:35 +00:00
Daniel Dunbar
c053c2bcda
build: Add support for building dylibs.
...
llvm-svn: 163412
2012-09-07 19:57:23 +00:00
Chandler Carruth
1aa4fef601
Relocate the external headers provided by ASan and the common sanitizer
...
library.
These headers are intended to be available to user code when built with
AddressSanitizer (or one of the other sanitizer's in the future) to
interface with the runtime library. As such, they form stable external
C interfaces, and the headers shouldn't be located within the
implementation.
I've pulled them out into what seem like fairly obvious locations and
names, but I'm wide open to further bikeshedding of these names and
locations.
I've updated the code and the build system to cope with the new
locations, both CMake and Makefile. Please let me know if this breaks
anyone's build.
The eventual goal is to install these headers along side the Clang
builtin headers when we build the ASan runtime and install it. My
current thinking is to locate them at:
<prefix>/lib/clang/X.Y/include/sanitizer/common_interface_defs.h
<prefix>/lib/clang/X.Y/include/sanitizer/asan_interface.h
<prefix>/lib/clang/X.Y/include/sanitizer/...
But maybe others have different suggestions?
Fixing the style of the #include between these headers at least unblocks
experimentation with installing them as they now should work when
installed in these locations.
llvm-svn: 162822
2012-08-29 02:27:54 +00:00
Daniel Dunbar
8137cecb68
build/clang_darwin: More principled fix for PR12918; none of this stuff should
...
be built here.
llvm-svn: 159172
2012-06-25 22:41:31 +00:00
Nico Weber
34fd6e9cc2
Don't build compiler-rt arm code on darwin. Fixes PR12918.
...
I'm not sure if this is the right fix, but this has been broken
for two weeks and pleas for review were ignored. It seems to do
the right thing.
llvm-svn: 158466
2012-06-14 20:00:25 +00:00
Nico Weber
4555d5b471
80 columns
...
llvm-svn: 158465
2012-06-14 19:58:46 +00:00
Kostya Serebryany
458b4006b2
[asan,tsan] Add a new directory compiler-rt/lib/sanitizer_common
...
which will contain code shared between asan and tsan run-times.
Naming is hard. If you can suggest a better name for the directory -- speak up.
llvm-svn: 157611
2012-05-29 12:18:18 +00:00
Kostya Serebryany
a20890b6bc
[asan] use -fno-builtin to build asan-rt on Mac
...
llvm-svn: 157239
2012-05-22 07:59:37 +00:00
Kostya Serebryany
c84461dbfe
[asan] use -fPIE -fno-builtin for building asan-rt
...
llvm-svn: 157238
2012-05-22 07:56:09 +00:00
Kostya Serebryany
c9fd917b36
[tsan] makefile machinery to build tsan-rt (linux-x86_64 only)
...
llvm-svn: 156822
2012-05-15 15:17:35 +00:00
Kostya Serebryany
1dd4c606ed
[asan] move lib/asan/interception to lib/interception so that other tools (e.g. tsan) can use it
...
llvm-svn: 156816
2012-05-15 12:21:33 +00:00
Daniel Dunbar
030e0a866c
platform/clang_darwin: Fix a comment.
...
llvm-svn: 152058
2012-03-05 20:46:09 +00:00
Daniel Dunbar
cdf9bf7048
make/clang_darwin: Tweak CheckArches function to force the integrated-as and use
...
the stub SDK to try and ensure we always pick up the right archs when they
should be able to be used.
- Also, warn when we drop an architecture.
This is a reapplication of r150232 that should stick now that we have the
integrated assembler on for ARM.
llvm-svn: 152057
2012-03-05 20:46:06 +00:00
Bob Wilson
ddd971564e
Revert r150232 since it breaks the build when there's no ARM assembler.
...
llvm-svn: 150253
2012-02-10 16:36:49 +00:00
Daniel Dunbar
d205200d41
make/clang_darwin: Tweak CheckArches function to force the integrated-as and use
...
the stub SDK to try and ensure we always pick up the right archs when they
should be able to be used.
- Also, warn when we drop an architecture.
llvm-svn: 150232
2012-02-10 06:00:35 +00:00
Kostya Serebryany
10a6b304e1
[asan] build asan-rt with -funwind-tables
...
llvm-svn: 147341
2011-12-29 17:29:20 +00:00
Kostya Serebryany
0e5704607b
build compiler-rt with -fPIC, otherwise the run-time libs will not link with -pie, at least on linux
...
llvm-svn: 146499
2011-12-13 18:58:47 +00:00
Kostya Serebryany
b50a539eba
[asan] move build-time config options from makefile to source (otherwise we need config options in all makefiles)
...
llvm-svn: 146161
2011-12-08 18:30:42 +00:00
Daniel Dunbar
a8ad183a4c
platform/clang_linux: Switch builtin and profile libraries to build using the
...
stub SDK.
- This allows us to build both the m32 and m64 variants without worrying about
whether or not the user has the headers for the alternate arch installed.
llvm-svn: 146132
2011-12-08 02:39:54 +00:00
Kostya Serebryany
4236c97ccd
build all C++ files in compiler-rt with -fno-exceptions
...
llvm-svn: 145967
2011-12-06 21:11:50 +00:00
Daniel Dunbar
1ad92487ff
platform/clang_linux: Add profile and asan libs on x86.
...
llvm-svn: 145950
2011-12-06 18:25:42 +00:00
Daniel Dunbar
2003d39f7c
build: Add ModuleName per-subdir variable as a way to organize the different
...
sets of functions/objects into high level groups. Currently we have "builtins"
(the main compiler-rt code), "profile", and "asan".
- Use this to define CommonFunctions and ArchFunctions to only reference the
builtins functions.
llvm-svn: 145674
2011-12-02 02:42:07 +00:00
Daniel Dunbar
cf7fb02388
build/asan: Better fix for ASAN i386 build on Darwin, this causes us to see the
...
non-standard struct names.
llvm-svn: 145658
2011-12-02 00:52:55 +00:00
Daniel Dunbar
8a5fd211ab
build/asan: Fix ASAN build for i386, for reasons I don't really understand we
...
get the DARWIN_UNIX03 definition on x86_64 but not on i386.
llvm-svn: 145657
2011-12-02 00:45:48 +00:00
Daniel Dunbar
5cd49adb2d
platform/clang_darwin: Add asan runtime library configuration.
...
llvm-svn: 145649
2011-12-01 23:35:59 +00:00
Daniel Dunbar
2aa900834e
build: Sketch a Clang/Linux platform config.
...
- Currently just tries to build a full library for i386/x86_64.
- This is made substantially more complicated by the lack of a generalized way
to check for/invoke cross compilers. For now, we just try and make it work
for the matched arch, and rely on the host CC being Clang.
llvm-svn: 145322
2011-11-28 23:50:13 +00:00
Daniel Dunbar
f5e4b33f8e
platform/clang_darwin: Fix a refacto and commento.
...
llvm-svn: 144913
2011-11-17 17:47:22 +00:00
Daniel Dunbar
6a76c5eec4
platform/clang_darwin: Add configs for profiling support.
...
llvm-svn: 144866
2011-11-17 00:12:12 +00:00
Daniel Dunbar
35923d7864
platform/clang_darwin: Switch over to use stub Darwin SDK.
...
llvm-svn: 144845
2011-11-16 22:41:03 +00:00
Daniel Dunbar
56f42279c6
platform/clang_darwin: Tweak deployment arg variable names.
...
llvm-svn: 144844
2011-11-16 22:41:00 +00:00
Daniel Dunbar
2139c52d33
lib: Finish int_math.h definitions using compiler builtins and eliminate
...
implementation use of <math.h>.
llvm-svn: 144786
2011-11-16 07:33:06 +00:00
Daniel Dunbar
2b88e03404
lib: Add support for library wide utility functions, and make compilerrt_abort()
...
a real boy.
- The utility module needs to be included into every produced library, because
we don't have enough dependency tracking to know exactly which other modules
might require the utilities.
llvm-svn: 144751
2011-11-16 01:19:19 +00:00
Daniel Dunbar
2c523a6ff0
build/darwin_bni: Remove consistency check I added, I forgot we always load
...
every platform (even if it isn't being built).
llvm-svn: 144740
2011-11-16 00:20:40 +00:00
Daniel Dunbar
6328e7b1b3
build/darwin_bni: Add a consistency check.
...
llvm-svn: 144738
2011-11-16 00:20:29 +00:00
Daniel Dunbar
2f629c8992
build/clang_darwin: Set CC before trying to run CheckArches.
...
llvm-svn: 144661
2011-11-15 18:34:53 +00:00
Daniel Dunbar
3306157ab3
build/darwin_fat: Drop ppc from default arch list, ppc targets are no longer supported by modern toolchains.
...
llvm-svn: 144659
2011-11-15 18:34:22 +00:00
Daniel Dunbar
fdb75e40ae
build: Change default CC to be clang instead of gcc.
...
llvm-svn: 144658
2011-11-15 18:34:17 +00:00
Daniel Dunbar
638095fa8f
platform/clang_darwin: Improve the "can we build for this arch test" by checking
...
that the standard includes we use in compiler-rt also work.
llvm-svn: 144305
2011-11-10 19:32:03 +00:00
Nick Kledzik
b69f3694df
<rdar://problem/10172492> No armv4t slice of libcompiler_rt-static.a
...
llvm-svn: 140630
2011-09-27 20:05:27 +00:00
Daniel Dunbar
2682897e11
platform/clang_darwin: Allow use of an RC_SUPPORTED_ARCHS variable to limit the
...
architectures we try to build for.
llvm-svn: 139738
2011-09-14 21:19:45 +00:00
Bob Wilson
fd5148b45d
Remove redundant flag: -mthumb is the default for armv7.
...
llvm-svn: 138275
2011-08-22 21:39:01 +00:00
Bob Wilson
b13cb3ba06
Add the ARM VFP variants to the cc_kext libraries for armv6 and armv7.
...
Radar 9959402.
llvm-svn: 137835
2011-08-17 18:09:59 +00:00
Nick Kledzik
1f9470589b
<rdar://problem/9624306> clean up darwin platform to use xcrun. Set up variables in darwin_bni.mk. Use GetCNAVar in AppleBI.mk
...
llvm-svn: 133487
2011-06-21 00:07:55 +00:00
Nick Kledzik
3729225576
add STRIP and LIPO as AvailableOptions
...
llvm-svn: 133481
2011-06-20 23:47:02 +00:00
Eric Christopher
00758b08ae
Missed a rename here 4 args instead of 3.
...
llvm-svn: 133311
2011-06-17 23:19:18 +00:00
Eric Christopher
1d1809437e
Implement mulo<mode>4 for use in signed overflow checking.
...
Fixes rdar://9219742 and rdar://9218244
llvm-svn: 133284
2011-06-17 20:17:05 +00:00
Daniel Dunbar
7487bbb72a
build/clang_darwin: Fix previous change to CheckArches to not cause problem when
...
command produces error output on stdout instead of stderr (and suppress the
stderr output while at it).
llvm-svn: 133019
2011-06-14 22:21:49 +00:00
Daniel Dunbar
47e71a3711
build/clang_darwin: Improve archs check to verify we can not just recognize
...
arch, but actually compile a file with that arch.
llvm-svn: 132928
2011-06-13 19:18:23 +00:00
Daniel Dunbar
5c5d361236
clang/darwin: Tweak CheckArches function to use CC and to not spew output.
...
llvm-svn: 131656
2011-05-19 18:02:55 +00:00
Eric Christopher
539ec3ae90
Check architectures to make sure that we can build for all of them
...
before we try to.
Patch by Patrick Walton!
llvm-svn: 131098
2011-05-09 20:24:43 +00:00
Daniel Dunbar
eac62c5388
clang/Darwin: Include divsi3 functions on x86, they are used by the divmod
...
implementation.
llvm-svn: 131034
2011-05-06 23:06:07 +00:00
Daniel Dunbar
5aea1725ac
clang/Darwin: Update ios static lib to build for all archs, in case the
...
simulator wants to use it.
llvm-svn: 130566
2011-04-30 01:20:56 +00:00
Eric Christopher
fca8b75b71
Make sure we include __sync_synchronize on arm platforms if we need it.
...
llvm-svn: 129944
2011-04-21 22:05:05 +00:00
Daniel Dunbar
0ce75e834f
clang_darwin: Add divmod functions to cc_kext library.
...
llvm-svn: 129874
2011-04-20 21:40:40 +00:00
Daniel Dunbar
74457a715d
clang_darwin: Always set deployment targets when building compiler-rt bits, so
...
that we don't have a hidden dependency on possible deployment target environment
overrides.
- Also, add support for an ARM_SDK build variable which points to the isysroot
to use for ARM bits.
llvm-svn: 129873
2011-04-20 21:40:37 +00:00
Daniel Dunbar
ddd3a2ec1d
clang_darwin: Tweak runtime library definitions to include divmod functions.
...
llvm-svn: 129757
2011-04-19 15:14:46 +00:00
Nick Kledzik
19b826011e
<rdar://problem/9282305> install an archive for dyld and fix missing -static
...
llvm-svn: 129492
2011-04-14 00:45:01 +00:00
Nick Kledzik
012323dee9
<rdar://problem/9173756> enable CC.Release to be used always
...
llvm-svn: 129487
2011-04-14 00:39:01 +00:00
Daniel Dunbar
1d84f37577
clang/Darwin: Add all the comparison functions, the desire to cherry pick just
...
the ones we want isn't worth the effort.
llvm-svn: 128298
2011-03-25 19:19:10 +00:00
Daniel Dunbar
4c70f3e6ac
Revert "Split single & double comparison routines into separate implementation
...
files," for now, I missed some necesary updates.
llvm-svn: 128296
2011-03-25 18:45:39 +00:00
Daniel Dunbar
1102c9ae58
Split single & double comparison routines into separate implementation files,
...
for consistency.
llvm-svn: 128282
2011-03-25 15:52:51 +00:00