Commit Graph

130 Commits

Author SHA1 Message Date
Chris Lattner
214191f473 initial checkin of SJLJ exception handling runtime
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8235 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-30 23:29:22 +00:00
Chris Lattner
ed499d2e0a Rename LongJmpException -> SJLJException
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8234 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-30 23:29:08 +00:00
Chris Lattner
7a9fd015a3 we don't need this here
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8233 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-30 23:18:07 +00:00
Chris Lattner
7f45519784 Move language independent exception handling routines OUT of C++Exception.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8232 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-30 23:17:51 +00:00
Chris Lattner
e86159df9d File was renamed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8231 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-30 22:48:16 +00:00
Chris Lattner
ea0721c725 Rename files to be capitalized now that they are C++
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8230 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-30 22:47:59 +00:00
Chris Lattner
d6ddfb226f Initial checkin of the SJLJ EH interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8229 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-30 22:36:52 +00:00
Misha Brukman
402f151d44 Added a dummy version of libcurses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8222 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 18:13:52 +00:00
Misha Brukman
efe98e9b1d Added dummy termcap library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8221 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 18:09:46 +00:00
Chris Lattner
b40d5e7d94 * Add proper support for rethrown exceptions.
* Make catch_begin() produce a pointer that must be passed to catch_end()
* Eliminate the caught exception stack.
* Add optional debugging code that may be turned on.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8184 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 19:58:51 +00:00
Chris Lattner
82d222faaa Convert C comments to C++
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8172 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 14:43:36 +00:00
Chris Lattner
37459033f9 New wrapper around the terminate call.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8171 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 14:35:52 +00:00
Chris Lattner
f4b319d356 Squelch warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8170 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 14:35:12 +00:00
Chris Lattner
0028b2cdbc Be more typesafe
Call terminate and unexpected where appropriate.
Interface to libstdc++ as appropriate
Initial cut at implementing function exception specifications


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8169 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-27 23:00:11 +00:00
Chris Lattner
d289ed5615 Be more type-safe, add throw specs to all functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8168 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-27 22:59:15 +00:00
Chris Lattner
7a37fa7e28 Add throw specs to the functions, remove (void) from the functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8167 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-27 22:58:51 +00:00
Chris Lattner
0e807bd26b Hack out libexception temporarily until the Sparc FE is improved
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8166 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-27 22:18:23 +00:00
Chris Lattner
5eb7939057 Fix several _killer_ bugs. This now actually WORKS for really complex testcases :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8157 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-27 04:51:26 +00:00
Chris Lattner
5cf1199059 C++ify, add new get_cxx_exception function to convert from generic llvm_exceptions to llvm_cxx_exception's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8156 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-27 04:50:45 +00:00
Chris Lattner
c2c70fa79e Remove Cisms. We love C++
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8155 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-27 04:50:12 +00:00
Chris Lattner
23b9b05fd3 Add new __llvm_cxxeh_begin_catch_if_isa function, change C -> C++ comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8150 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-26 23:46:53 +00:00
Chris Lattner
aa8882a7ad Remove copy-and-paste gunk
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8147 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-25 22:37:04 +00:00
Chris Lattner
5337521c2b Initial checking of C++ exception handling library
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8146 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-25 22:35:36 +00:00
Misha Brukman
0f3627e554 Added dummy version of the `util' library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7995 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-20 21:44:04 +00:00
Misha Brukman
12967474d2 Added dummy library `libutempter' for non-privileged access to utmp/wtmp data.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7994 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-20 21:42:01 +00:00
Chris Lattner
5b007e248c This really isn't the gcc library!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7917 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-17 18:37:45 +00:00
Chris Lattner
d11df3c205 Adjust level, build things in parallel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7863 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-15 02:38:18 +00:00
Chris Lattner
9d6cb9ba25 initial checkin, adjust LEVEL
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7862 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-15 02:38:06 +00:00
Chris Lattner
1641df43c6 Initial checkin of README
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7861 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-15 02:35:13 +00:00
Chris Lattner
443ea946f1 Initial checkin of runtime/GCCLibraries makefile
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7860 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-15 02:33:49 +00:00
Chris Lattner
edaca0c690 Update readme
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7859 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-15 02:31:23 +00:00
Chris Lattner
da86e6c0b6 Convert libraries into the BYTECODE_LIBRARY style
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7858 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-15 02:20:32 +00:00
Chris Lattner
6defc76a85 Disable this library for now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7857 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-15 02:19:43 +00:00
Chris Lattner
1679e8205e Disable this support stuff, it doesn't work under linux anyway
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7849 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-14 20:55:38 +00:00
John Criswell
478b3a9682 Removing the pool allocator from the main CVS tree.
Use the poolalloc module in CVS from now on.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7810 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13 15:36:15 +00:00
Sumant Kowshik
228090cfe8 Minor fix so that the program exits upon a poolfree failure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7762 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12 00:43:23 +00:00
Sumant Kowshik
d105a8707a Change implementation so that variable sized slabs are used to allow arbitrary sized array allocations
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7663 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-07 05:31:04 +00:00
Vikram S. Adve
6235ea2012 1. Make table size prime -- improves hashing performance vastly.
2. Reduce #hashes from 2 to 1 for initial inserts.
3. Fix incorrect assertion from last checkin.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7417 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 12:49:25 +00:00
Vikram S. Adve
b3b0414c87 Bug fix: after reallocating the hash table, we have to re-insert each value
instead of copying table entries!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7396 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-29 20:01:01 +00:00
Chris Lattner
432312d8bf Remove unneccesary #ifdefs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7214 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-21 19:23:31 +00:00
Chris Lattner
51577e5f3a Fix warnings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7213 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-21 19:20:44 +00:00
Vikram S. Adve
e04a2e056b Use uint32_t for table index and size: table will never be > 4GB.
Also, make Pointer type depend on architecture.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7170 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-11 22:02:28 +00:00
Vikram S. Adve
0df8adc0e6 Pointer hash table reallocation code seems never to have been tested!
Unfortunately, reallocation also means that the pointer numbering will
change, so increase table size to try to avoid it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7130 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-08 18:42:44 +00:00
Vikram S. Adve
47485df280 Native libraries (libinstr*.a) should not have been taken out when
taking out the rule for compiling the test driver.
We need the native libraries for libinstr because they are directly
linked into the native CBE or LLC code.  That is the only practical
way to debug them!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7129 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-08 18:40:58 +00:00
Sumant Kowshik
af0f37ac49 Added support for poolallocarray and poolmakeunfreeable. The latter is used by the SAFECode project
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7102 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-03 17:55:47 +00:00
Chris Lattner
5d243c2fa5 Don't register the destructors if the list is empty
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6909 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 04:20:38 +00:00
Joel Stanley
b1b3fb3b6a Prevented inclusion of (non-existent) stdint.h on Sparc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6876 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 02:46:47 +00:00
Misha Brukman
d57f3efbc7 Prevent lines from wrapping.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6419 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-29 22:12:35 +00:00
Chris Lattner
96191aba7d Initial checkin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6414 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-29 20:24:54 +00:00
Chris Lattner
881a2bab05 Run more post-link xforms
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6400 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-29 15:16:45 +00:00
Chris Lattner
3c4f63ac55 Update to match the reality that is now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6362 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-27 21:43:14 +00:00
Chris Lattner
20fa5da40a add support for an explicit EXPORTED_SYMBOL_LIST
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6296 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-22 20:27:30 +00:00
Chris Lattner
61441cca45 Specify a list of symbols that should be exported by the library
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6290 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-22 19:50:30 +00:00
Chris Lattner
977abcb790 Update to match typename produced by the C frontend
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6287 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-22 19:30:11 +00:00
Chris Lattner
7cfee5b2bb Dead file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6189 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-14 13:10:18 +00:00
Chris Lattner
74075dd832 Minor updates
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6188 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-14 13:09:57 +00:00
Chris Lattner
fdab728301 Initial checkin of crtend.o implementation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6187 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-14 13:09:41 +00:00
Chris Lattner
aa470c2d47 New file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6186 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-14 12:40:20 +00:00
Chris Lattner
8fc625836e Remove support for memset
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5599 91177308-0d34-0410-b5e6-96231b3b80d8
2003-02-18 20:42:15 +00:00
Chris Lattner
6d3a877743 Add lots of functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5598 91177308-0d34-0410-b5e6-96231b3b80d8
2003-02-18 20:42:07 +00:00
Chris Lattner
3c0ced5e70 Implement more functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5538 91177308-0d34-0410-b5e6-96231b3b80d8
2003-02-11 23:12:23 +00:00
Chris Lattner
3a35254960 Implement feof and xmalloc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5478 91177308-0d34-0410-b5e6-96231b3b80d8
2003-02-03 19:12:38 +00:00
Chris Lattner
cbf2a3e5c1 Add a bunch more stubs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5459 91177308-0d34-0410-b5e6-96231b3b80d8
2003-02-01 04:51:12 +00:00
Chris Lattner
a4a684e433 Initial checkin of pool allocator library
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5429 91177308-0d34-0410-b5e6-96231b3b80d8
2003-01-29 18:38:11 +00:00
Chris Lattner
f3cffa10b0 Initial checkin of dummylib
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5357 91177308-0d34-0410-b5e6-96231b3b80d8
2003-01-17 19:09:29 +00:00
Chris Lattner
591c7288a7 fix path
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4636 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-08 21:29:22 +00:00
Chris Lattner
1b115971f2 Add note about what this is
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4581 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-06 20:58:26 +00:00
Chris Lattner
853f9bee44 Pass renamed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3141 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-30 00:53:26 +00:00
Chris Lattner
d6c68c417b Fixes to be LP64 correct
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2950 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-18 00:15:29 +00:00
Chris Lattner
c5208d4222 Allow libraries to specify other libraries to link to
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2678 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-20 21:45:44 +00:00
Chris Lattner
348d165d9b Tracelib is now an LLVM library just like all other libraries in this
directory.

If the test code needs to be resurrected in the future, it should be moved
into the test/Programs directory, linking with tracelib.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2672 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-20 21:16:19 +00:00
Chris Lattner
2bb5c7f6bf * If hashing a pointer, cast it to a 64 bit number so gcc doesn't warn
* Don't put extra stuff after #endif


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2671 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-20 21:15:30 +00:00
Chris Lattner
cfb81918ed Implement the printf function, used by assert
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2666 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-20 19:11:23 +00:00
Vikram S. Adve
2df1f74b97 Runtime routines to support tracing.
Currently includes code to hash pointers to sequence numbers.
The hash table should be separated out into a separate file
since that is generic.  The rest of this code is pretty small.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2655 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-19 15:49:58 +00:00
Chris Lattner
812d8be09c Remove compilation of __main because we now link -lgcc into programs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1947 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-22 19:13:47 +00:00
Vikram S. Adve
1d7aefd6c7 Need rule for runtime.o. This is just temporary to provide
ll__main so that llc output can link.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1913 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-18 04:04:25 +00:00
Chris Lattner
4ee8dd7f2b Add strcat function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1847 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-11 17:46:50 +00:00
Chris Lattner
c1e20acc68 Checkin library infrastructure for building stuff to be linked with
gccld


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1842 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-08 23:20:52 +00:00
Chris Lattner
0305141a51 Add a clean target stub
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1818 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-26 21:48:24 +00:00
Chris Lattner
7aeed26bc4 Initial checkin of Makefile, just a dummy file for now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1566 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-23 19:57:59 +00:00