Anton Korobeynikov
3c5199042a
Add some macro magic: user __USER_LABEL_PREFIX__ instead of hardcoding it for each platform
...
llvm-svn: 129818
2011-04-19 21:22:14 +00:00
Anton Korobeynikov
4322a7d2c6
More fixes for missed includes
...
llvm-svn: 129807
2011-04-19 20:50:32 +00:00
Anton Korobeynikov
147ecfad82
Add missed include
...
llvm-svn: 129804
2011-04-19 20:45:29 +00:00
Anton Korobeynikov
0529d4da93
Add missed files from my last commit.
...
llvm-svn: 129777
2011-04-19 18:14:19 +00:00
Anton Korobeynikov
e63da933eb
Move abi bits to separate header. Force AAPCS for EABI in accordance with ARM RTABI.
...
llvm-svn: 129769
2011-04-19 17:52:09 +00:00
Anton Korobeynikov
75e3c1993c
Add ARM EABI function aliases to routines
...
llvm-svn: 129768
2011-04-19 17:51:24 +00:00
Anton Korobeynikov
bdadd87c4d
Make use of LOCAL_LABEL macro
...
llvm-svn: 129767
2011-04-19 17:50:42 +00:00
Anton Korobeynikov
1653610449
Get rid of darwin'isms. Provide convenient macro for assembler local lables.
...
llvm-svn: 129766
2011-04-19 17:50:09 +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
e7e288c805
don't add version info for static library
...
llvm-svn: 129489
2011-04-14 00:40:20 +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
Nick Kledzik
aa60d6ac01
fix typo
...
llvm-svn: 129389
2011-04-12 21:22:48 +00:00
Nick Kledzik
191c2804e7
<rdar://problem/9185449> update version info for arm
...
llvm-svn: 129386
2011-04-12 21:11:47 +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
Daniel Dunbar
f3798a397d
compiler-rt: Split subdf3 and subsf3 out of add implementations, for
...
consistency.
llvm-svn: 128038
2011-03-21 23:30:19 +00:00
Stephen Canon
32acbef33f
slight re-arrangement to maybe pick up one cycle on dual-issue ARM cores
...
llvm-svn: 128003
2011-03-21 17:35:26 +00:00
Stephen Canon
5abb5c14c4
Carefully written implementations of the 32-bit integer divide and modulus functions for ARM. These are still using a naive digit-by-digit algorithm, but the core loop has been carefully written.
...
llvm-svn: 127882
2011-03-18 16:35:02 +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
Nick Kledzik
371d881758
<rdar://problem/9145073> use -Os for release builds
...
llvm-svn: 127767
2011-03-16 22:23:24 +00:00
Chris Lattner
15bc34c7c2
don't compile modsi3 into an infinite loop, patch by Matt Johnson!
...
llvm-svn: 127429
2011-03-10 22:11:46 +00:00
Nick Kledzik
b611885ae6
<rdar://problem/9099747> fix use of SDKROOT
...
llvm-svn: 127270
2011-03-08 20:25:22 +00:00
Nick Kledzik
fc1586cf9f
<rdar://problem/9091300> update Apple packaging of compiler-rt
...
llvm-svn: 127057
2011-03-05 02:15:16 +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
9f1bd06ae9
Add missing <stdint.h> to build properly on Solaris. Patch by Joakim Johansson
...
llvm-svn: 123006
2011-01-07 19:09:06 +00:00
Howard Hinnant
5b791f6e64
license change
...
llvm-svn: 119397
2010-11-16 22:13:33 +00:00
Chris Lattner
f8a07f67e7
compiler_rt is now dual licensed under MIT and UIUC license.
...
llvm-svn: 119389
2010-11-16 21:34:56 +00:00
Daniel Dunbar
dde0471072
make: Add CheckCommandLineOverrides to my little Makefile library, a routine for
...
validating the variables set on the make command line.
llvm-svn: 116517
2010-10-14 21:23:37 +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
Stephen Canon
5f0e6e7b92
Adds an extra explicit cast to fix Bug 7931 and removes codepaths that were never used
...
llvm-svn: 111269
2010-08-17 19:13:45 +00:00
Blaine Garst
be67b4aa20
add unit tests
...
llvm-svn: 110278
2010-08-04 23:34:21 +00:00
Nick Kledzik
cceb1f2e67
add assembly implementation of modsi3 so compiler does not have to special case a - (a / b) * b optimization
...
llvm-svn: 109492
2010-07-27 06:24:32 +00:00
Stephen Canon
8770d3d367
Fix error in rep_clz on non-LP64 targets. Patch by Christoph Gerum
...
llvm-svn: 109416
2010-07-26 18:17:00 +00:00
Stephen Canon
df69264765
Hand-tuning of single-precision soft-float comparison routines for ARM
...
llvm-svn: 107891
2010-07-08 17:45:05 +00:00
Nick Kledzik
238bc001ca
fix install location
...
llvm-svn: 107589
2010-07-04 18:29:23 +00:00
Nick Kledzik
9445ef8f4a
fix arvm5 builds
...
llvm-svn: 107588
2010-07-04 18:29:01 +00:00
Stephen Canon
644ab08dec
Initial implementation of double-precision soft-float division, moved a couple utility functions from the multiplications into the utility header
...
llvm-svn: 107586
2010-07-04 16:53:39 +00:00
Stephen Canon
9ae6fd58c4
Single-precision soft-float division
...
llvm-svn: 107579
2010-07-04 06:15:44 +00:00
Stephen Canon
909f6c7bc4
Further cleanup of ARM bswap implementations, thanks to John Tytgat
...
llvm-svn: 107576
2010-07-03 21:47:50 +00:00
Stephen Canon
b84e7dc80e
Marginally smaller implementations of bswap for ARMv4, ARMv5 that avoid the need to establish a frame
...
llvm-svn: 107555
2010-07-03 01:00:49 +00:00
Stephen Canon
7973295a19
Renamed unsigned->float routines to match GCC convention
...
llvm-svn: 107554
2010-07-03 00:56:03 +00:00
Nick Kledzik
209ac43b76
ARM before armv6 did not supprt 'rev' instruction
...
llvm-svn: 107548
2010-07-03 00:12:47 +00:00
Stephen Canon
04b97967dd
[unsigned] int -> float soft-float conversions for single- and double-precision
...
llvm-svn: 107535
2010-07-02 23:05:46 +00:00
Stephen Canon
4be0d7ead9
float- and double-to-integer soft-float conversions for compiler-rt
...
llvm-svn: 107524
2010-07-02 22:10:58 +00:00
Stephen Canon
75a21dc9a7
Tests for soft-float comparison functions
...
llvm-svn: 107414
2010-07-01 18:35:50 +00:00
Stephen Canon
e9946d0d3f
... and one more fix to remove some warnings in the new double -> float conversion
...
llvm-svn: 107409
2010-07-01 18:02:15 +00:00
Stephen Canon
74eaf1f66c
Correction to previous commit which mistakenly included older versions of some files; now includes the correct LLVM license header
...
llvm-svn: 107408
2010-07-01 17:58:24 +00:00
Stephen Canon
b1fdde1d01
Adding soft-float comparisons, addition, subtraction, multiplication and negation
...
llvm-svn: 107400
2010-07-01 15:52:42 +00:00
Stephen Canon
60a234f079
This is a test commit to verify repository access.
...
llvm-svn: 106376
2010-06-19 04:34:50 +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
c6cacf9858
sjlj based personality requires a different name
...
llvm-svn: 103330
2010-05-07 23:44:20 +00:00
Chris Lattner
2dd1552588
improve bullets, patch by Mike Miller
...
llvm-svn: 103000
2010-05-04 05:19:07 +00:00
Charles Davis
b2403ee273
Fix build with MSVC.
...
llvm-svn: 102671
2010-04-29 23:44:00 +00:00
Nick Kledzik
26274da38f
improve arm build support on darwin
...
llvm-svn: 102032
2010-04-21 22:46:53 +00:00
Nick Kledzik
8e7ebea0b9
add explicit alignment directives to assure arm code is 4-byte aligned
...
llvm-svn: 102030
2010-04-21 22:36:23 +00:00
Blaine Garst
b4d7aa6fd6
update copyright notices
...
llvm-svn: 101986
2010-04-21 04:34:46 +00:00
Nick Kledzik
5b0a0629a3
add include of int_lib.h to match change to use compilerrt_abort()
...
llvm-svn: 101396
2010-04-15 20:37:56 +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
Nick Kledzik
b3d3ec7091
<rdar://problem/7813254> check enable_execute_stack implementation
...
llvm-svn: 100036
2010-03-31 19:52:01 +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
f287008791
Use a private compilerrt_abort() define instead of calling abort directly.
...
- Fiddling with abort directly is annoying given the way we use system includes, although it would be nice to fix this so we could make sure calling abort directly is verboten.
llvm-svn: 100014
2010-03-31 17:00:45 +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
Nick Kledzik
10b2046750
document runtime support functions
...
llvm-svn: 94223
2010-01-22 21:21:14 +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
Howard Hinnant
16139b5f2d
Updated README.txt
...
llvm-svn: 94016
2010-01-20 19:53:19 +00:00
Howard Hinnant
adc1c56e49
Updated README.txt
...
llvm-svn: 94011
2010-01-20 18:44:52 +00:00
Nick Kledzik
ac02b5a09c
fix return type of _Unwind_Exception.exception_cleanup
...
llvm-svn: 93983
2010-01-20 06:13:20 +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
bdf248d13a
Allow UniversalArchs variable to be overridden on a per-config basis.
...
llvm-svn: 93816
2010-01-19 00:01:15 +00:00
Daniel Dunbar
4c43c2bc73
Split up switch.S and save_restore_d8_d15.S to follow one function per file convention.
...
llvm-svn: 93815
2010-01-19 00:01:10 +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
64a198d060
Unbreak symbol mangling in .s files, at least for Darwin/Linux.
...
llvm-svn: 93789
2010-01-18 22:19:25 +00:00
Daniel Dunbar
ef89858e47
Add DEFINE_COMPILERRT_PRIVATE_FUNCTION_UNMANGLED for use in .S files -- restFP and saveFP don't get USER_LABEL_PREFIX prepended for some reason.
...
llvm-svn: 93788
2010-01-18 22:19:20 +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
Daniel Dunbar
16c5071c6d
Remove old build logic, this is going to be replaced by a more configurable mechanism shortly.
...
llvm-svn: 93719
2010-01-18 06:49:16 +00:00
Daniel Dunbar
6bcbef6230
Rename subdir 'Target' variable to 'Implementation' to be less overloaded.
...
llvm-svn: 93718
2010-01-18 06:49:09 +00:00
Daniel Dunbar
8e5a2f084a
Add 'SelectFunctionDir' function, to select appropriate function implementation based on a configuration and architecture.
...
llvm-svn: 93717
2010-01-18 06:48:56 +00:00
Daniel Dunbar
ae28e68d09
Add more make utility functions.
...
- With tests. :)
llvm-svn: 93716
2010-01-18 06:48:48 +00:00
Daniel Dunbar
2d9816e44b
Change subdir traversal to primarily cache information about what is available in subdirectories.
...
- Rest of makefiles will move to using the information after it has been computed, instead of during subdir traversal.
Also, add 'make info-functions' target, which prints information on all the functions available in compiler-rt.
Also, add 'make help-devel' for listing help on targets intended for compiler-rt developers or direct users.
llvm-svn: 93715
2010-01-18 06:48:40 +00:00
Daniel Dunbar
56e0eb9fc9
Simplify subdirectory makefiles, and be more robust by checking that they define the appropriate variables.
...
llvm-svn: 93714
2010-01-18 06:48:33 +00:00
Daniel Dunbar
40d6f65ae1
Add basic make {help,help-hidden} targets.
...
llvm-svn: 93713
2010-01-18 06:48:19 +00:00
Daniel Dunbar
43164b34b1
Rename DebugMake variable to DEBUGMAKE for consistency (variables that are designed to be overridden), and use VERBOSE=1 instead of VERBOSE!="" for controlling verbosity.
...
llvm-svn: 93712
2010-01-18 06:48:12 +00:00
Daniel Dunbar
32f75c6a42
Unbreak trampoline test.
...
llvm-svn: 93711
2010-01-18 06:48:06 +00:00
Daniel Dunbar
dcf5a317f1
Tidy up comments, remove whitespace, and rename 'print-%' make debugging target
...
to 'make-print-%' to match LLVM.
llvm-svn: 93319
2010-01-13 16:13:01 +00:00