Commit Graph

126 Commits

Author SHA1 Message Date
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
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 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
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 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 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
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 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
Daniel Dunbar 1730ab0b94 compiler-rt/clang/cc_kext: Update for functions which we have sinced acquired
implementations for.

llvm-svn: 128039
2011-03-21 23:31:09 +00:00
Nick Kledzik 47a823b281 <rdar://problem/8914924> implement udivmodsi4 and divmodsi4 for ARM
llvm-svn: 127778
2011-03-17 00:09:13 +00:00
Daniel Dunbar fee882c203 clang_darwin: We don't need clear_cache for use with Clang on ARM/Darwin.
llvm-svn: 123989
2011-01-21 18:23:47 +00:00
Daniel Dunbar e1e6acecb3 clang_darwin: Build with -fno-builtin, primarily to avoid issues with defining possible builtin functions.
llvm-svn: 123988
2011-01-21 18:23:42 +00:00
Daniel Dunbar 384a842085 clang_darwin: Start building an armv7 slice for cc_kext.
llvm-svn: 123987
2011-01-21 18:23:37 +00:00
Daniel Dunbar 77b059e32b clang_darwin: Build cckext bits with -mthumb.
llvm-svn: 123986
2011-01-21 18:23:32 +00:00
Daniel Dunbar d8baa2b4b0 Fix typo.
llvm-svn: 123985
2011-01-21 18:23:27 +00:00
Nick Kledzik c2d789b95e <rdar://problem/8482056> Add Soft Floating Compares for armv6 and armv7
llvm-svn: 114854
2010-09-27 18:28:15 +00:00
Daniel Dunbar 5680b2a09c compiler-rt/clang/Darwin: Add a new library configuration which has nothing
other than eprintf for i386.

llvm-svn: 114504
2010-09-21 23:42:49 +00:00
Nick Kledzik 9445ef8f4a fix arvm5 builds
llvm-svn: 107588
2010-07-04 18:29:01 +00:00
Nick Kledzik 749dc33dff <rdar://problem/7987491> Libcompiler_rt isn't platform aware
llvm-svn: 103852
2010-05-15 01:42:04 +00:00
Nick Kledzik 386e5f364e tweak arm exports
llvm-svn: 103331
2010-05-07 23:44:43 +00:00
Nick Kledzik 26274da38f improve arm build support on darwin
llvm-svn: 102032
2010-04-21 22:46:53 +00:00
Daniel Dunbar 2843b5ed7f clang/Darwin: Don't include enable_execute_stack in libcc_kext.a.
llvm-svn: 100055
2010-03-31 22:36:07 +00:00
Nick Kledzik 516f36d133 <rdar://problem/7733536> Move libcompiler_rt over to a dylib target for Libsystem
llvm-svn: 100045
2010-03-31 20:38:57 +00:00
Daniel Dunbar 587b1d419d Add new build option KERNEL_USE, which compiles with -mkernel and gets propogated to CFLAGS. Use this to call panic() instead of abort() when enabled.
llvm-svn: 100015
2010-03-31 17:00:48 +00:00
Daniel Dunbar 36e6b654a2 Don't build an armv7 slice for now, it has the same stuff as on armv6.
llvm-svn: 99654
2010-03-26 21:07:05 +00:00
Daniel Dunbar 8900ab9b2f Clang/Darwin: Add definition for files to put in cc_kext.a.
llvm-svn: 99632
2010-03-26 18:52:45 +00:00
Nick Kledzik debb901045 add __sync_synchronize. Needed by compiler when emitting thumb1 with -fno-builtin
llvm-svn: 95132
2010-02-02 21:34:04 +00:00
Nick Kledzik 1683cebc9d add compiler options for B&I builds
llvm-svn: 95123
2010-02-02 21:03:34 +00:00
Nick Kledzik 3efa0ef21a FUNCTIONS.armv6 to have actual function names
llvm-svn: 95018
2010-02-01 22:40:40 +00:00
Daniel Dunbar f99eaa948d Tweak clang_darwin config to strip off any -arch if the user overrides CC, we do
this during an Apple style build.

llvm-svn: 94216
2010-01-22 21:06:18 +00:00
Daniel Dunbar 857138f663 clang/Darwin: Rename x86_10.4 static lib config to just 10.4, and add 'eprintf'
which seems to be needed.

llvm-svn: 93969
2010-01-20 02:34:31 +00:00
Daniel Dunbar d5f5236468 Add .mk for use by clang/Darwin.
llvm-svn: 93817
2010-01-19 00:01:22 +00:00
Daniel Dunbar f665b32a70 Add a VISIBILITY_HIDDEN option, which can be used to make all compiler-rt function definitions hidden/private extern.
llvm-svn: 93790
2010-01-18 22:19:34 +00:00
Daniel Dunbar d382d17f09 Update Apple-style build support for new Makefiles
llvm-svn: 93721
2010-01-18 06:49:42 +00:00
Daniel Dunbar efd84e770b Add support for "platform" configurations, which define a suite of compiler-rt
libraries to generate.
 - Each library may be built with different flags and for different
   architectures, and there is support for building Darwin style fat archives.

 - Uses an ambituous amount of make programming, but should be hidden to
   users and developers.

llvm-svn: 93720
2010-01-18 06:49:33 +00:00