Commit Graph

171 Commits

Author SHA1 Message Date
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