Commit Graph

185 Commits

Author SHA1 Message Date
Chris Lattner
1cd4c7294c Make sure that at least one virtual method is defined in a .cpp file to avoid
having the compiler emit RTTI and vtables to EVERY translation unit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11871 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-26 07:24:18 +00:00
Misha Brukman
ac2ecd0ba0 `cat' is usually in /bin, not /usr/bin, at least on our systems.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11690 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-21 21:51:41 +00:00
Chris Lattner
b9632bee7c When printing a stack trace, demangle it if possible. Since we are potentially
in a signal handler, allocating memory or doing other unsafe things is bad,
which means we should do it in a different process.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11689 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-21 21:06:19 +00:00
Brian Gaeke
38ce7e57d4 Use backtrace() and include execinfo.h, if they were detected by autoconf.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11658 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-20 06:40:59 +00:00
Chris Lattner
6559615fc4 Disable the stack trace thing until we can get an autoconf test for it. This
call breaks on sparcs


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11635 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-19 21:21:23 +00:00
Chris Lattner
982774cbeb Implement new function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11631 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-19 20:03:14 +00:00
Alkis Evlogimenos
1d29a6d6c7 Make ToolExecutionError inherit std::exception and implement its
interface: getMessage() is gone, use what() instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11621 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-19 07:39:26 +00:00
Alkis Evlogimenos
280f9c939d Print stacktrace in STDERR before dying on a fatal signal. Currently
the symbols are not demangled.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11620 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-19 07:36:35 +00:00
Chris Lattner
9cbbee332f Add support for just running the code generator
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11611 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 23:24:41 +00:00
Chris Lattner
a3de11783f indent correctly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11601 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 20:58:00 +00:00
Chris Lattner
722ca71285 Don't yell. BUGPOINT should yell, not the tool runner :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11600 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 20:57:38 +00:00
Chris Lattner
89bf9ea65e If there is an error running a tool, include the error message (e.g. assertion failure) in the exception
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11597 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 20:38:00 +00:00
Chris Lattner
8c56be5e2b When an error occurs executing a tool, we now throw an exception instead
of calling exit(1).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11593 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 20:21:57 +00:00
Chris Lattner
9915cd9e9f The C backend is no longer in llvm-dis, it's in llc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11533 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-17 06:40:06 +00:00
Chris Lattner
8709927af8 Fix a bug in the recent rewrite of the leakdetector that caused all of the
nightly tests to be really messed up.  The problem was that the new leakdetector
was depending on undefined behavior: the order of destruction of static objects.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11488 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-15 23:33:48 +00:00
Alkis Evlogimenos
b663d76f86 Modularize implementation of LeakDetector into a typed template
implementation class. This makes the code simpler and allows for more
types to be added easily. It also implements caching for generic
objects (it was only available for llvm objects).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11452 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-14 23:33:39 +00:00
Chris Lattner
a6acb4f5fd Fix the logic in the name mangler. If there are two symbols named 'X', and one
is external, make sure to mangle the *internal* one, not external one


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11424 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-14 00:30:23 +00:00
Chris Lattner
82a5ff4c54 Initialize the count instance variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11305 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-11 03:29:16 +00:00
John Criswell
7f7d16b62f Fixes for PR214. Use the SHLIBEXT variable instead of hardcoding .so into
every file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10976 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-26 20:59:41 +00:00
Chris Lattner
64811a3e18 This file goes away
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10905 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-17 19:35:57 +00:00
Chris Lattner
67bb7603ea Remove use of ConstantHandling itf
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10800 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-12 20:13:04 +00:00
Chris Lattner
74b1f45293 Remove config wrapper around <cerrno>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10747 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-10 19:15:14 +00:00
Alkis Evlogimenos
d2c39e991e Pass std::string to constructor as const reference to avoid multiple
copies.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10705 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-06 09:16:02 +00:00
John Criswell
2657aecfe2 Not all platforms supports sighandler_t, so I changed it to use the older
return value from signal() (which should be the same type; it's just not
typedef'd).
This fixes the build on Solaris.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10675 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-01 15:14:28 +00:00
Chris Lattner
9e26027b82 * Add a new helper progress method
* Make sure that the user sees the 100% mark
* Don't bother printing out X.0%, just print out X%


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10672 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-31 10:20:38 +00:00
Chris Lattner
0a5f0334ff Add missing #include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10669 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-31 07:31:10 +00:00
Chris Lattner
81a085a259 Add new function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10664 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-31 06:15:37 +00:00
Chris Lattner
a2e9363617 New class, useful for command-line interactive programs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10662 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-31 05:40:02 +00:00
Chris Lattner
316cb083d6 Add new method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10649 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-30 07:36:14 +00:00
Chris Lattner
9899ae3ae8 Further revisions of the FDHandle idea. In this version we use ownership
semantics that are the same as those used by std::auto_ptr.  This allows
copying of FDHandle's, but copying transfers ownership.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10646 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-30 02:45:16 +00:00
Chris Lattner
9b448b703f Add trivial exception specs to produce better code since the methods cannot
be inlined.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10643 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-29 21:43:58 +00:00
Chris Lattner
2d6481cc2a Factor FDHandle out of the bytecode reader into the FileUtilities.h support
routines.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10642 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-29 21:35:05 +00:00
Chris Lattner
872ccce0a8 implement new getToken function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10639 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-29 05:07:02 +00:00
Chris Lattner
2cdd21c2e4 Finegrainify namespacification
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10464 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-14 21:35:53 +00:00
Chris Lattner
b6d465f813 Finegrainify namespacification
Make the Timer code give correct user/system/user+system times when -track-memory is enabled


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10463 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-14 21:27:33 +00:00
Brian Gaeke
59e47e3ee1 Lock abstraction, introduced with a view toward making the JIT thread-safe.
Eventually.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10284 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 21:33:31 +00:00
Misha Brukman
971a7b88b5 Fix copy-pasto.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10197 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-24 05:36:38 +00:00
Misha Brukman
17cca96735 Add ability to query if a file is a legitimate ELF shared object.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10193 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-24 05:28:12 +00:00
Brian Gaeke
c8db76c647 Only use -Wl,-R. if HAVE_LINK_R.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10066 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-18 06:31:17 +00:00
Brian Gaeke
d0fde30ce8 Put all LLVM code into the llvm namespace, as per bug 109.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-11 22:41:34 +00:00
Brian Gaeke
a2302ffe78 Move IsArchive and IsBytecode here from gccld. Refactor into CheckMagic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9901 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-11 21:53:50 +00:00
Brian Gaeke
56be7ffe58 Add implementation of FileOpenable().
Refactor MakeFileExecutable() & MakeFileExecutable() into AddPermissionsBits().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9892 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-11 18:27:21 +00:00
Chris Lattner
764486f5e4 Attempt to provide support for those without RTLD_DEFAULT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9503 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-25 16:55:32 +00:00
John Criswell
e488e9360b Added LLVM copyright notice to Makefiles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9312 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 22:26:57 +00:00
John Criswell
b576c94c15 Added LLVM project notice to the top of every C++ source file.
Header files will be on the way.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 19:43:21 +00:00
Chris Lattner
0b1fe84e81 Add debugtype, make output marginally more nice
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9251 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 02:27:40 +00:00
Chris Lattner
7b2ccffa59 Fix PR #47
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9250 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 02:14:58 +00:00
Chris Lattner
1f0f1621f0 Without this option, the -run-llc mode does not work with shared objects at
all, making it pointless for use with the code generator debugger.  With it,
it works like a charm.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9245 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 21:54:47 +00:00
Brian Gaeke
53e557d670 Fix up error message.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9139 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-15 20:46:58 +00:00
Chris Lattner
eeed983821 Generalize abstract interpreter interface to allow linking in an arbitrary number of shared objects
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9129 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-14 21:52:52 +00:00