8567 Commits

Author SHA1 Message Date
Misha Brukman
d32cfacbc7 Return the Module that we just materialized.
llvm-svn: 9201
2003-10-17 18:27:13 +00:00
Brian Gaeke
eaf7472fd7 Tidy up doxygen comment for getPointerToFunction().
Add prototypes for recompileAndRelinkFunction() and runJITOnFunction().

llvm-svn: 9200
2003-10-17 18:27:12 +00:00
Brian Gaeke
7b9b6dbd63 Refactor running the JIT passes on a single function into the new method,
runJITOnFunction().

Add new method for recompiling and patching in new versions of functions,
recompileAndRelinkFunction().

llvm-svn: 9199
2003-10-17 18:27:00 +00:00
Misha Brukman
a4bca57c6e Return the Module being materialized to avoid always calling getModule().
llvm-svn: 9198
2003-10-17 18:26:51 +00:00
Brian Gaeke
fc52099b3c Add stub version of replaceMachineCodeForFunction. It will live here until
we have a better place for it to go.

llvm-svn: 9197
2003-10-17 18:26:45 +00:00
Brian Gaeke
7157eed00f Remove extra blank line.
llvm-svn: 9196
2003-10-17 18:09:10 +00:00
Chris Lattner
67a86ccbed Do not crash on empty structures
llvm-svn: 9195
2003-10-17 18:03:54 +00:00
John Criswell
2bd92e1721 Modified the Makefile so that the sample library is linked dynamically.
llvm-svn: 9194
2003-10-17 17:47:08 +00:00
Misha Brukman
37fa677695 * Give credit where credit's due
* `Quote' names of projects
* Add emails to people's records

llvm-svn: 9193
2003-10-17 17:28:21 +00:00
Chris Lattner
080cafcc0e New testcase for C++ frontend crash
llvm-svn: 9192
2003-10-17 05:20:51 +00:00
Chris Lattner
17f8f2e317 Tighten up handling of checks for shift instructions
llvm-svn: 9191
2003-10-17 05:11:44 +00:00
Alkis Evlogimenos
5a1f705c88 Eliminate some extraneous code in SlotCalculator::insertVal().
Rename SlotCalculator::getValSlot() to SlotCalculator::getSlot(),
       SlotCalculator::insertValue() to SlotCalculator::getOrCreateSlot(),
       SlotCalculator::insertVal() to SlotCalculator::insertValue(), and
       SlotCalculator::doInsertVal() to SlotCalculator::doInsertValue().

llvm-svn: 9190
2003-10-17 02:02:40 +00:00
Alkis Evlogimenos
b13247db8c Someone forgot to commit an updated configure after adding tools/llvm-nm to configure.ac :-)
llvm-svn: 9189
2003-10-17 00:50:38 +00:00
Brian Gaeke
5eb1c4e08e Add debug variable.
llvm-svn: 9188
2003-10-16 23:46:01 +00:00
Brian Gaeke
edea9eca83 Fix typo in comment.
llvm-svn: 9187
2003-10-16 23:45:05 +00:00
Brian Gaeke
2a7cedb657 This file has funny include guards and funny extra whitespace.
Make this file less funny.

llvm-svn: 9186
2003-10-16 23:43:35 +00:00
Brian Gaeke
d04e650fdf Document that llvm-nm works in pipe mode, thanks to the efforts of Chris.
llvm-svn: 9185
2003-10-16 23:39:10 +00:00
Brian Gaeke
9b4da738dd Fix a typo in a comment, and zap a blank line.
llvm-svn: 9184
2003-10-16 23:33:38 +00:00
Misha Brukman
54c766e934 Add separator between different types of readers.
llvm-svn: 9183
2003-10-16 21:19:54 +00:00
Misha Brukman
d5c9118c89 JIT.cpp:
* #include "llvm/ModuleProvider"
* alphabetize #includes
* omit extraneous parens in pointer expressions

VM.cpp:
* #include "llvm/ModuleProvider"
* alphabetize #includes

llvm-svn: 9182
2003-10-16 21:19:34 +00:00
Misha Brukman
45a9016e1d * Reorder includes as per the style guide
* Move the constructors from .h file here
* Document ExecutionEngine::create()
* Catch exception possibly thrown by ModuleProvider::releaseModule()

llvm-svn: 9181
2003-10-16 21:18:05 +00:00
Misha Brukman
99daf743bb If we move the constructors to the .cpp file, we can drop the #include
llvm-svn: 9180
2003-10-16 21:16:21 +00:00
John Criswell
c373496a63 Removed the .PRECIOUS of Lex and Yacc output files.
They are already marked precious in llvm/Makefile.rules, and removing
this line seems to fix the Makefile so that the Yacc output is placed
into the object tree and not the source tree.

llvm-svn: 9179
2003-10-16 20:38:16 +00:00
John Criswell
69e69153d8 Removed the -mode option.
Fixed some grammar, spelling, and punctuation.

llvm-svn: 9178
2003-10-16 20:15:17 +00:00
Chris Lattner
39b976aed8 Minor cleanups
llvm-svn: 9177
2003-10-16 20:12:13 +00:00
John Criswell
c066e81c9e Added documentation on the new -disable-inlining option.
llvm-svn: 9176
2003-10-16 20:05:48 +00:00
John Criswell
38525dba06 I am not the only John Criswell.
:)

llvm-svn: 9175
2003-10-16 20:01:04 +00:00
Chris Lattner
e0b7655381 Give credit where credit is due
llvm-svn: 9174
2003-10-16 19:58:17 +00:00
John Criswell
6788096ff9 Added a section on all of the wonderful Makefile variables used to locate
LLVM.
Added information on how to use the autoconf code to specify LLVM's
location and setup separate source and object trees.
Fixed some of the wording to be more accurate, especially regarding the
building of libraries.
Added information on where built files are placed.
Added a link to the llvmdev mailing list so that they can ask us questions.

llvm-svn: 9173
2003-10-16 19:53:53 +00:00
Chris Lattner
2c93d183ac Make llvm-nm work in "pipe mode"
llvm-svn: 9172
2003-10-16 18:45:23 +00:00
Chris Lattner
f46c45682a Add support for 'weak' linkage.
llvm-svn: 9171
2003-10-16 18:29:00 +00:00
Chris Lattner
2bdaaa4e08 Add support for 'weak' linkage.
For now, we translate linkonce into weak linkage in the bytecode format because
we don't have enough bits to represent it.  We will rev the bytecode version
soon anyways, so this will be fixed in the near future.

llvm-svn: 9170
2003-10-16 18:28:50 +00:00
Chris Lattner
d7e4cc9339 Geeze, what is with Brian and these ifdef's?
llvm-svn: 9169
2003-10-16 18:27:24 +00:00
Chris Lattner
a8899d65d3 Add weak linking type
llvm-svn: 9168
2003-10-16 18:27:04 +00:00
Misha Brukman
4e16a55ef5 Automagically update website docs on commits.
llvm-svn: 9167
2003-10-16 18:14:43 +00:00
Misha Brukman
20736a22ee Update the website automatically on documentation commit [in progress].
llvm-svn: 9166
2003-10-16 18:13:19 +00:00
Misha Brukman
9578856d09 This should automatically update on the webpage.
llvm-svn: 9165
2003-10-16 18:10:45 +00:00
Brian Gaeke
c3591e81f2 yikes, a copy-and-paste-o
llvm-svn: 9164
2003-10-16 18:05:09 +00:00
Brian Gaeke
794d935f2f add llvm-nm entry.
llvm-svn: 9163
2003-10-16 18:04:40 +00:00
Brian Gaeke
68f83d0709 Add command guide (It's like a man page translated into html, but without the
translation...) for the new llvm-nm tool.

llvm-svn: 9162
2003-10-16 18:03:24 +00:00
Chris Lattner
815249e86c Welcome llvm-nm to the family
llvm-svn: 9161
2003-10-16 17:46:21 +00:00
Chris Lattner
09ef1749f7 Completely rewrite support for the Value::use_* list. Now, all operations on
this list (except use_size()) are constant time.  Before the killUse method
(used whenever something stopped using a value) was linear time, and thus
very very slow for large programs.

This speeds GCCAS up _substantially_ on large programs: almost 2x for 176.gcc:

176.gcc:     77.07s -> 37.38s
177.mesa:     7.59s ->  5.57s
252.eon:     21.02s -> 19.52s (*)
253.perlbmk: 11.40s -> 13.05s
254.gap:      7.25s -> 7.42s

252.eon would speed up a whole lot more, but optimization time is being
dominated by the inlining pass, which needs to be fixed.

llvm-svn: 9160
2003-10-16 16:53:07 +00:00
Chris Lattner
0493113344 Completely rewrite support for the Value::use_* list. Now, all operations on
this list (except use_size()) are constant time.  Before the killUse method
(used whenever something stopped using a value) was linear time, and thus
very very slow for large programs.

This speeds GCCAS up _substantially_ on large programs: almost 2x for 176.gcc:

176.gcc:     77.07s -> 37.38s
177.mesa:     7.59s ->  5.57s
252.eon:     21.02s -> 19.52s (*)
253.perlbmk: 11.40s -> 13.05s
254.gap:      7.25s -> 7.42s

252.eon would speed up a whole lot more, but optimization time is being
dominated by the inlining pass, which needs to be fixed.

llvm-svn: 9159
2003-10-16 16:53:04 +00:00
Chris Lattner
e1f71ee070 Unfortunately, it looks like level raise is still needed :(
llvm-svn: 9158
2003-10-16 16:50:34 +00:00
Chris Lattner
f0da6e06e6 This code does not require random access use_lists
llvm-svn: 9156
2003-10-16 16:49:12 +00:00
Chris Lattner
0747f39327 Eliminate using declaration
Rewrite code to work with use_lists what are either random access or bidirectional

llvm-svn: 9155
2003-10-16 16:48:53 +00:00
Misha Brukman
c2f0ea4cf1 Added an entry for `llvm-nm'.
llvm-svn: 9154
2003-10-16 16:12:04 +00:00
Brian Gaeke
d7f07a7f91 Okay, this is a little hack that "scratches an itch" of mine.
I dislike having to examine the output of "dis" to see what symbols
are in a bytecode file. So, here is a first cut at a "nm" utility for llvm.
Flame away.... :-)

llvm-svn: 9153
2003-10-16 04:43:15 +00:00
John Criswell
3e6d68f570 Added autoconf support for the sample project.
llvm-svn: 9152
2003-10-16 01:49:07 +00:00
John Criswell
27f6878d71 Added autoconf support for the sample project.
Fixed the header comment in Makefile.rules
Changed all references to the echo program in Makefile.rules to the value
found by autoconf.

llvm-svn: 9151
2003-10-16 01:49:00 +00:00