Commit Graph

7594 Commits

Author SHA1 Message Date
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
Chris Lattner
1f9336eb2e New testcase *sigh*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8228 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-30 21:00:36 +00:00
Chris Lattner
df9791912a New, HARD, bitfield testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8227 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-30 20:57:49 +00:00
Chris Lattner
2fdd3c0714 Yet another bit-field bug
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8226 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 22:46:34 +00:00
Chris Lattner
450e4f51f4 minor simplification
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8225 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 21:57:18 +00:00
Misha Brukman
879678338f Test case distilled from sed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8224 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 21:49:51 +00:00
Misha Brukman
cec2eb2591 Testcase distilled from xemacs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8223 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 21:28:47 +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
9e8d1ac6f2 New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8218 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 16:00:19 +00:00
Misha Brukman
4f40cf4ab6 Use llvm-dis' instead of simply dis'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8217 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 15:26:31 +00:00
Chris Lattner
004caf4ded Remove automagic support for Modules. Noone uses it now anyways, and GCC 3.4 doesn't want us to do this unless Module has been #included
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8216 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 14:48:21 +00:00
John Criswell
3a9ce67289 "Help keep our secrets secret."
Added code to respect the umask value.  Before, files were generated world
readable, which may not be desirable for all installations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8215 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 14:46:12 +00:00
Chris Lattner
6666a04c6c There is no reason for this to be a pass!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8214 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 14:43:17 +00:00
Chris Lattner
df9ec1052b Move getAnalysisToUpdate to after the definition of AnalysisResolver.
GCC 3.4 apparently wants classes to be DEFINED before they are USED.  What is
it smoking.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8213 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 14:26:51 +00:00
Chris Lattner
40c6fb6cac Fix compilation problems with G++ 3.4
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8212 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 14:22:29 +00:00
Chris Lattner
15444a9bd4 Slightly simplify make logic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8211 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 14:07:02 +00:00
Chris Lattner
287d11191f Fix bug: Linker/2003-08-28-TypeResolvesGlobal3.ll
Use new replaceAllUsesWith stuff in a way that works even though types have not yet been propagated


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8210 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 05:37:22 +00:00
Chris Lattner
23f3a49aec Implement "unsafe" replaceAllUsesWWith stuff for use during type resolution.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8209 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 05:36:46 +00:00
Chris Lattner
6ac02a9092 Allow for "unsafe" replaceAllUsesWith operatations, for use during type resolution
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8208 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 05:36:05 +00:00
Chris Lattner
205f9fce19 Yet ANOTHER complication that the libstdc++ library runs into linking...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8207 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 05:29:38 +00:00
Chris Lattner
ad217a4ca2 Fix bug: Linker/2003-08-28-TypeResolvesGlobal2.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8206 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 05:11:34 +00:00
Chris Lattner
2bc065b63a Refactor code to make it useful outside of Constants.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8205 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 05:09:37 +00:00
Chris Lattner
94949dad0c Add new method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8204 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 05:08:31 +00:00
Chris Lattner
38e3fd3475 Ok, the last bug fix was not good enough to fix libstdc++. Maybe this one will be
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8203 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 04:54:23 +00:00
Chris Lattner
652f032ce9 Fix bug: Linker/2003-08-28-TypeResolvesGlobal.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8202 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 04:49:54 +00:00
Chris Lattner
0c49b89298 New testcase which is preventing the linking of libstdc++
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8201 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 04:40:34 +00:00
Misha Brukman
cfd67c96dc * Use alloca() to force GCC not to eliminate frame pointer
* Break apart saving and restoring registers into separate functions
* Instead of saving single and double FP registers, just save the double
  registers -- aliasing helps preserve the single FP registers as well.
* Request just as much memory for a stub as we actually use


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8200 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 04:22:54 +00:00
Chris Lattner
7905a6e561 NEw testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8199 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 00:29:55 +00:00
Chris Lattner
77e94d645b New testcase, not only possible of causing compilation failures, but could
also cause miscompilations!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8198 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-29 00:03:45 +00:00
Misha Brukman
85544baf54 Renaming dis' -> llvm-dis'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8197 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 22:14:16 +00:00
Chris Lattner
b3ceec2117 Document the llvm.unwind intrinsic.
Clarify the documentation for the invoke instruction


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8196 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 22:12:25 +00:00
Misha Brukman
a0a0a03946 Renaming as' -> llvm-as' and dis' -> llvm-dis'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8195 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 22:02:50 +00:00
Misha Brukman
82086a5894 Near-term fix for renaming as' -> llvm-as' and dis' -> llvm-dis'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8194 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 21:46:34 +00:00
Misha Brukman
a86b04246a Start using llvm-as' instead of as'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8193 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 21:45:08 +00:00
Misha Brukman
231d64dd08 Build llvm-as and llvm-dis as the upgrade path to renamed tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8192 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 21:43:51 +00:00
John Criswell
c9afb499f6 Fixed two double free bugs that caused llc to segfault or run forever.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8191 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 21:43:17 +00:00
John Criswell
b5d09bf4cc Added code to avoid checking for .bc when the filename is too short.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8190 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 21:42:29 +00:00
Misha Brukman
ad0bf0fc0c Renaming LLVM dis' to llvm-dis'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8189 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 21:34:13 +00:00
Misha Brukman
cbb62dd6b7 Renaming LLVM as' to llvm-as'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8188 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 21:32:57 +00:00
Chris Lattner
aeb54b882c Add support for the llvm.unwind intrinsic, which we codegen to just do an abort
until we implement unwinding.
Add support for the invoke instruction, which codegens just like a call with
a branch after it.

The end effect of this change is that programs using the invoke instruction,
but never unwinding, will work fine.  Programs that unwind will abort until
we get unwind support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8187 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 21:23:43 +00:00
Chris Lattner
81f0dbdc23 Add another testcase I found lying around.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8186 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 20:33:46 +00:00
Chris Lattner
206c7d029d Add test for the last chapter of our C++ exception handling odyssey. llvmg++
now fully supports all C++ exception handling functionality.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8185 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 20:32:36 +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
902d580bd9 New testcases, all of which work with llvmg++!
This tests exception specifications, and also adds an "easy" rethrow test.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8183 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 19:57:53 +00:00
Chris Lattner
8df6bddd01 Link to the C++ libraries. This is temporary
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8182 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 19:57:14 +00:00
Chris Lattner
fd04561e1b Fix really nasty bugs in the CWriter, handling invoke instructions. Tracking
these down was NOT phun.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8181 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 19:56:10 +00:00