Commit Graph

54 Commits

Author SHA1 Message Date
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
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 ac02b5a09c fix return type of _Unwind_Exception.exception_cleanup
llvm-svn: 93983
2010-01-20 06:13:20 +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 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 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 a8fa825177 Fix DragonFly BSD define in compiler-rt.
llvm-svn: 85726
2009-11-01 18:25:55 +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 a55dd008ad Update CMake build system with target arch source file lists.
llvm-svn: 85448
2009-10-29 00:07:46 +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 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
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
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
Daniel Dunbar 85922561ee Unbreak building of assembly files (broken by my .s -> .S rename).
- Noticed & patched by Nick Kledzik.

 - This may expose portability issues in the .S files, if so we should either
   disable them on non-Darwin, or even better make them portable.

llvm-svn: 81476
2009-09-10 23:27:45 +00:00
Edward O'Callaghan 665671ec89 Fix some files that got left behind in early changeset to unnamed unions fix. Credit to Roman Divacky.
llvm-svn: 80913
2009-09-03 09:12:20 +00:00
Edward O'Callaghan 19db729ab4 Add support for ellcc, Credit to Richard Pennington.
llvm-svn: 79332
2009-08-18 11:54:44 +00:00
Edward O'Callaghan ea0bd0d0a4 Fix pre-processor mistake for BSDs in endianness.h
llvm-svn: 79330
2009-08-18 11:07:59 +00:00
Edward O'Callaghan 40268af91e Temporary define HAVE_SYSCONF until cmake checks are done.
llvm-svn: 78546
2009-08-10 01:02:16 +00:00
Edward O'Callaghan 2dbae9c334 Fix a FIXME for configure check for HAVE_SYSCONF.
llvm-svn: 78545
2009-08-10 00:56:46 +00:00
Nuno Lopes 1586376f2e fix build on linux
llvm-svn: 78538
2009-08-09 18:59:21 +00:00
Edward O'Callaghan ccf48131d0 Refactor to remove un-named struct gnu extension usage. Now ISO C89 and C99 compliant. Comment trailing endifs
llvm-svn: 78537
2009-08-09 18:41:02 +00:00
Edward O'Callaghan f8ba5e9e6e Optimized versions now buildable on Solaris.
llvm-svn: 78457
2009-08-08 04:43:56 +00:00
Edward O'Callaghan 032ab6f978 Fix signedness warning in mprotect call, Clean up and improve endianness.h header.
llvm-svn: 78451
2009-08-08 02:31:50 +00:00
Edward O'Callaghan 5583632adf Code style and Readability fixes. Credit to Craig van Vliet.
llvm-svn: 78403
2009-08-07 20:30:09 +00:00
Edward O'Callaghan 7a6cb5febf Refactor test suit endianness pre-processor code. More style and readability fixes, start labling endif's
llvm-svn: 78234
2009-08-05 19:57:20 +00:00
Edward O'Callaghan dabf71f171 Next batch of C++ to C comment style changes. Also improve and factor out endianness pre-processor code.
llvm-svn: 78226
2009-08-05 19:06:50 +00:00
Edward O'Callaghan 4856eef437 Fixup C++ style comments are not allowed in ISO C90 to classic C style.
llvm-svn: 78152
2009-08-05 04:02:56 +00:00
Edward O'Callaghan df72046277 Start porting compiler-rt testsuit to Solaris with new build system. Fix some C++ style comments which are not allowed in ISO C90.
llvm-svn: 78143
2009-08-05 01:47:29 +00:00
Edward O'Callaghan 30009e7121 Refactor out common pre-processor code.
llvm-svn: 78037
2009-08-04 03:30:10 +00:00
Edward O'Callaghan 7578f80b0c Fix newlinew warning in floatundidf.c , Bulkout CMake system more, complete port to AuroraUX and Solaris.
llvm-svn: 77958
2009-08-03 05:59:48 +00:00
Edward O'Callaghan 43fb93ab2f A few CMake formating fixes for compiler-rt.
llvm-svn: 77937
2009-08-03 02:15:06 +00:00
Edward O'Callaghan 6912ed0f36 Initial import of CMake type build system. Just like the rest of llvm..
llvm-svn: 77933
2009-08-03 01:08:25 +00:00
Eli Friedman 30bd27bf7d Misc compiler-rt fixes. Clarify neg implementations to show what is
actually happening.  Fix mod implementation so it doesn't get 
optimized to a recursive call.  Make x86-32 non-SSE2 shift 
implementation use shld/shrd instead of emulating it (the only x86 processor
where the emulation might be remotely close to justifiable is the Pentium 4).

llvm-svn: 74756
2009-07-03 02:26:38 +00:00