Nick Kledzik
23bbd617e4
<rdar://problem/12512722> Use arm divide instruction if available
...
llvm-svn: 182665
2013-05-24 19:38:11 +00:00
Zonr Chang
2d5d8168ff
Implement aeabi_{f,d}cmp*.
...
Special thanks to Anton for the review.
llvm-svn: 174596
2013-02-07 08:29:47 +00:00
Bob Wilson
a4cefbdc87
Add compiler-rt support for Swift.
...
llvm-svn: 164903
2012-09-29 23:37:01 +00:00
Chandler Carruth
6acfaaf3aa
Remove the old, and non-functional CMake build system from CompilerRT.
...
I cannot build any part of this successfully on either Linux or Darwin,
and the replacement is worlds simpler by requiring that this be built as
a subproject of LLVM. If this breaks you for any reason, please let me
know, and let me know what your use case is.
llvm-svn: 154059
2012-04-04 22:12:01 +00:00
Bob Wilson
e67004e2f1
Back out some changes that accidentally committed.
...
llvm-svn: 150254
2012-02-10 16:41:46 +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
Anton Korobeynikov
28037ceacf
Proper divmod implementation
...
llvm-svn: 149242
2012-01-30 10:21:51 +00:00
Anton Korobeynikov
b047b04c4c
Provide aeabi_mem* functions.
...
llvm-svn: 149241
2012-01-30 10:21:23 +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
Bob Wilson
7184d9fc33
Change ARM vfp assembly functions to use unified syntax.
...
llvm-svn: 138332
2011-08-23 16:40:18 +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
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
fc1586cf9f
<rdar://problem/9091300> update Apple packaging of compiler-rt
...
llvm-svn: 127057
2011-03-05 02:15:16 +00:00
Howard Hinnant
5b791f6e64
license change
...
llvm-svn: 119397
2010-11-16 22:13:33 +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
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
9445ef8f4a
fix arvm5 builds
...
llvm-svn: 107588
2010-07-04 18:29:01 +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
Nick Kledzik
209ac43b76
ARM before armv6 did not supprt 'rev' instruction
...
llvm-svn: 107548
2010-07-03 00:12:47 +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
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
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
6bcbef6230
Rename subdir 'Target' variable to 'Implementation' to be less overloaded.
...
llvm-svn: 93718
2010-01-18 06:49:09 +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
Nick Kledzik
d4b78d38d4
add __save_vfp_d8_d15_regs and __restore_vfp_d8_d15_regs for ARM
...
llvm-svn: 85531
2009-10-29 22:31:39 +00:00
Daniel Dunbar
9ff9371bb7
Switch to using DEFINE_COMPILERRT_[PRIVATE_]FUNCTION to define function symbols inside .S files.
...
llvm-svn: 85264
2009-10-27 17:50:21 +00:00
Daniel Dunbar
7d50478889
Add assembly.h for use in .S files.
...
llvm-svn: 85263
2009-10-27 17:49:50 +00:00
Nick Kledzik
4efa121e40
add support for __switch* needed for switch statements in thumb codegen
...
llvm-svn: 82184
2009-09-18 00:07:52 +00:00
Nick Kledzik
ad160c0330
add conversion functions and test cases for ARM
...
llvm-svn: 81809
2009-09-14 23:26:56 +00:00
Edward O'Callaghan
2e2d1a87f9
Update cmake files for arm support hooks.
...
llvm-svn: 81760
2009-09-14 12:45:07 +00:00
Nick Kledzik
0f312a09b2
fix typo in comment
...
llvm-svn: 81686
2009-09-13 18:34:39 +00:00
Nick Kledzik
9130011d5f
add comparison functions for ARM
...
llvm-svn: 81597
2009-09-12 01:23:48 +00:00
Nick Kledzik
b9c6e4a189
start adding implementation of arm *vfp routines with test cases
...
llvm-svn: 81558
2009-09-11 20:02:01 +00:00
Daniel Dunbar
c91aeac18b
Stub out structure for building armv{6,7} libs.
...
llvm-svn: 81482
2009-09-10 23:50:10 +00:00