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
Daniel Dunbar
debb79b994
Sink {config.h,ConfigureChecks}.cmake into cmake directory.
...
llvm-svn: 93318
2010-01-13 16:12:49 +00:00
Nick Kledzik
64eecd2de5
Fix copy/paste error. http://llvm.org/bugs/show_bug.cgi?id=572
...
llvm-svn: 93297
2010-01-13 05:30:28 +00:00
Rafael Espindola
393cb7c22d
Use __USER_LABEL_PREFIX__ so that we don't add a _ prefix on ELF.
...
llvm-svn: 86542
2009-11-09 14:27:04 +00:00
Edward O'Callaghan
8f40ca3b8f
Fix x86/x64 on Linux, Credit to Rafael Espindola.
...
llvm-svn: 86075
2009-11-04 23:52:51 +00:00
Edward O'Callaghan
683dcc63b1
Add DragonFly BSD to supported platforms list.
...
llvm-svn: 85727
2009-11-01 18:30:27 +00:00
Edward O'Callaghan
a8fa825177
Fix DragonFly BSD define in compiler-rt.
...
llvm-svn: 85726
2009-11-01 18:25:55 +00:00
Edward O'Callaghan
73ee64d6a2
Fix CMakeLists.txt comment.
...
llvm-svn: 85686
2009-10-31 21:08:10 +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
Edward O'Callaghan
07d6005bdc
Nested function test in compiler-rt should not be run under Clang.
...
llvm-svn: 85456
2009-10-29 00:27:08 +00:00
Edward O'Callaghan
7c1cc70a90
Fix test suit for last CMake changes to CompilerRT.
...
llvm-svn: 85452
2009-10-29 00:16:23 +00:00
Edward O'Callaghan
a55dd008ad
Update CMake build system with target arch source file lists.
...
llvm-svn: 85448
2009-10-29 00:07:46 +00:00
Shantonu Sen
04f121bc50
Work around strictness in gcc 4.4.1 casting a function pointer to void *
...
llvm-svn: 85397
2009-10-28 15:54:04 +00:00
Shantonu Sen
1467592c6d
Add stdlib.h for rand() prototype
...
llvm-svn: 85396
2009-10-28 15:46:10 +00:00
Edward O'Callaghan
6d0a86cbd1
Update web docs for cmake test suit, comment out broken test.
...
llvm-svn: 85350
2009-10-28 00:09:30 +00:00
Edward O'Callaghan
1bafa6de57
Fix cmake test suit for compiler-rt.
...
llvm-svn: 85339
2009-10-27 23:23:41 +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
Daniel Dunbar
805c49408f
Update some .S file headers.
...
llvm-svn: 85262
2009-10-27 17:49:19 +00:00
Daniel Dunbar
64857209fb
Fix tests broken by removal of de-anonyomizing structs.
...
llvm-svn: 85261
2009-10-27 17:49:07 +00:00
Daniel Dunbar
247687360f
Remove duplicate copy of int_lib.h, and update test script to find copy inside lib/.
...
Also, fix some brokenness in the test script w.r.t REMOTE.
llvm-svn: 85260
2009-10-27 17:48:46 +00:00
Daniel Dunbar
10bf19ec7a
Add .gitignore file.
...
llvm-svn: 85259
2009-10-27 17:48:37 +00:00
Edward O'Callaghan
c0c9968f1b
Comment out broken tests and make the rest build in cmake build system.
...
llvm-svn: 84330
2009-10-17 10:19:32 +00:00
Edward O'Callaghan
bc85722d34
Improve doc readability.
...
llvm-svn: 83414
2009-10-06 21:03:43 +00:00
Edward O'Callaghan
e1cc630483
Update compiler-rt online docs to reflex recent work and testing.
...
llvm-svn: 83413
2009-10-06 21:01:17 +00:00
Shantonu Sen
ae3b01cf8a
If the compiler does not support GCC-compatible
...
atomic operations, skip building the blocks runtime
llvm-svn: 82627
2009-09-23 16:05:25 +00:00
Shantonu Sen
35684d034e
Keep on castin', in the name of -pedantic
...
llvm-svn: 82626
2009-09-23 15:34:09 +00:00
Edward O'Callaghan
b5127599f9
Note about compiler-rt only building on Darwin no longer applies.
...
llvm-svn: 82609
2009-09-23 05:06:46 +00:00
Edward O'Callaghan
0e38b38dd1
Update site information to reflect using cmake to build compiler-rt and not legacy makefiles.
...
llvm-svn: 82608
2009-09-23 05:04:26 +00:00
Edward O'Callaghan
49dc8717a4
CMake should only pass GCC options to GCC.
...
llvm-svn: 82607
2009-09-23 04:57:36 +00:00
Edward O'Callaghan
9a9c26eba6
We don't need a C++ compiler to build Blocks, Don't check for one.
...
llvm-svn: 82606
2009-09-23 03:53:48 +00:00
Edward O'Callaghan
dd54ab207b
Fix compile time warning: format '%#lx' expects type 'long unsigned int', but argument 3 has type 'unsigned int'
...
llvm-svn: 82605
2009-09-23 03:47:24 +00:00
Edward O'Callaghan
351a54e86f
Improve readability.
...
llvm-svn: 82604
2009-09-23 03:42:03 +00:00
Shantonu Sen
33f6acbbf1
1) Remove cmake-specific #define usage from the exported
...
Block.h/Block_private.h headers, since clients won't know what to
set. These are moved into runtime.c as appropriate
2) Use cmake checks for CAS builtins, instead of guessing based on GCC
#defines (which aren't set by clang and llvm-gcc anyway)
3) "#pragma mark" isn't supported by FSF gcc, so "#if 0" it out. It
should still show up in IDEs that support it
4) Fix some compiler warnings. GCC 4.3.3 seems super strict about
%p. function pointers can't be cast to void * either.
5) Avoid a warning for apple_versioning.c that "ISO C does not allow
empty files"
llvm-svn: 82504
2009-09-22 00:49:12 +00:00
Nick Kledzik
e80d44c943
update make rules so libcompiler-rt can be built for armv6 the Apple way
...
llvm-svn: 82185
2009-09-18 00:09:05 +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
Edward O'Callaghan
f68f63b7cf
Add Blocks support to CMake build system.
...
llvm-svn: 81617
2009-09-12 17:13:35 +00:00
Edward O'Callaghan
594906f923
Fix include path to config.h for CMake build system.
...
llvm-svn: 81616
2009-09-12 16:44:57 +00:00
Edward O'Callaghan
957fa1379c
GCC atomic built-ins are available patch to Blocks. - Credit to Bobby Powers.
...
llvm-svn: 81615
2009-09-12 16:29:10 +00:00
Edward O'Callaghan
882b798a50
Generalize Blocks code and intergrate with cmake build system more.
...
llvm-svn: 81613
2009-09-12 15:47:39 +00:00
Nick Kledzik
9130011d5f
add comparison functions for ARM
...
llvm-svn: 81597
2009-09-12 01:23:48 +00:00
Nick Kledzik
a6bce00934
rename files
...
llvm-svn: 81572
2009-09-11 21:16:10 +00:00