Chris Lattner [Sun, 19 Oct 2003 02:51:01 +0000 (02:51 +0000)]
.string adds an implicit zero at the end. This is not what we wanted.
This fixes PR#44.
llvm-svn: 9252
Chris Lattner [Sun, 19 Oct 2003 02:27:40 +0000 (02:27 +0000)]
Add debugtype, make output marginally more nice
llvm-svn: 9251
Chris Lattner [Sun, 19 Oct 2003 02:14:58 +0000 (02:14 +0000)]
Fix PR #47
llvm-svn: 9250
Chris Lattner [Sun, 19 Oct 2003 00:26:11 +0000 (00:26 +0000)]
Fix bug: Jello/2003-10-18-PHINode-ConstantExpr-CondCode-Failure.llx
This also fixes miscompilation of 176.gcc.
llvm-svn: 9249
Chris Lattner [Sat, 18 Oct 2003 23:54:45 +0000 (23:54 +0000)]
New testcase, distilled from 176.gcc codegen failure
llvm-svn: 9248
Chris Lattner [Sat, 18 Oct 2003 21:55:47 +0000 (21:55 +0000)]
Update compile information
llvm-svn: 9247
Chris Lattner [Sat, 18 Oct 2003 21:55:35 +0000 (21:55 +0000)]
Add usage blurb
llvm-svn: 9246
Chris Lattner [Sat, 18 Oct 2003 21:54:47 +0000 (21:54 +0000)]
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.
llvm-svn: 9245
Chris Lattner [Sat, 18 Oct 2003 21:34:15 +0000 (21:34 +0000)]
Add bugpoint advice section
llvm-svn: 9244
Chris Lattner [Sat, 18 Oct 2003 21:08:57 +0000 (21:08 +0000)]
Print -fno-strict-aliasing as well
llvm-svn: 9243
Chris Lattner [Sat, 18 Oct 2003 21:02:51 +0000 (21:02 +0000)]
Don't leave a trail of bugpoint-execution-output-* breadcrumbs all over the place
llvm-svn: 9242
Chris Lattner [Sat, 18 Oct 2003 20:57:23 +0000 (20:57 +0000)]
Expand the --args section
llvm-svn: 9241
Chris Lattner [Sat, 18 Oct 2003 20:54:37 +0000 (20:54 +0000)]
* Add the -additional-so option
* Add info about codegen and miscompilation mode
llvm-svn: 9240
Chris Lattner [Sat, 18 Oct 2003 20:36:15 +0000 (20:36 +0000)]
Beef up the description of bugpoint a lot. Update for renamed options
llvm-svn: 9239
Chris Lattner [Sat, 18 Oct 2003 20:30:48 +0000 (20:30 +0000)]
Change run-lli -> run-int
Many people associate lli with the jit, so we don't want to suprise them
llvm-svn: 9238
Chris Lattner [Sat, 18 Oct 2003 20:18:20 +0000 (20:18 +0000)]
Default to using the CBE instead of the Interpreter if no -run-* option is specified
llvm-svn: 9237
Chris Lattner [Sat, 18 Oct 2003 19:48:10 +0000 (19:48 +0000)]
Fix warning
llvm-svn: 9236
Chris Lattner [Sat, 18 Oct 2003 19:31:39 +0000 (19:31 +0000)]
Print stuff to stdout if something changes.
llvm-svn: 9235
Chris Lattner [Sat, 18 Oct 2003 19:27:48 +0000 (19:27 +0000)]
If we detect a pass crash during miscompilation testing, immediately enter the
crash debugger
llvm-svn: 9234
Chris Lattner [Sat, 18 Oct 2003 06:30:21 +0000 (06:30 +0000)]
add support for new linkage types
llvm-svn: 9228
Chris Lattner [Sat, 18 Oct 2003 06:14:59 +0000 (06:14 +0000)]
Fix PR#50
llvm-svn: 9227
Chris Lattner [Sat, 18 Oct 2003 05:57:43 +0000 (05:57 +0000)]
Add support for the new varargs intrinsics and instructions
llvm-svn: 9226
Chris Lattner [Sat, 18 Oct 2003 05:56:52 +0000 (05:56 +0000)]
ADd support for the new varargs instructions
llvm-svn: 9225
Chris Lattner [Sat, 18 Oct 2003 05:56:40 +0000 (05:56 +0000)]
Add support for the new varargs intrinsics
llvm-svn: 9224
Chris Lattner [Sat, 18 Oct 2003 05:55:58 +0000 (05:55 +0000)]
Update the sparc backend to at least compile correctly with the new varargs stuff even if it's not all implemented yet.
llvm-svn: 9223
Chris Lattner [Sat, 18 Oct 2003 05:55:25 +0000 (05:55 +0000)]
Interpret the new varargs intrinsics correctly
llvm-svn: 9222
Chris Lattner [Sat, 18 Oct 2003 05:54:48 +0000 (05:54 +0000)]
Updated to emit the final 1.0 bytecode format. This supports weak linkage,
more efficient encoding of varargs calls, and the new varargs intrinsics.
llvm-svn: 9221
Chris Lattner [Sat, 18 Oct 2003 05:54:18 +0000 (05:54 +0000)]
* New revised variable argument handling support
* More dense bytecode encoding for varargs calls (like printf)
* Eliminated the extremely old bytecode format. rev #0 is now 1.0
llvm-svn: 9220
Chris Lattner [Sat, 18 Oct 2003 05:53:13 +0000 (05:53 +0000)]
New revised variable argument handling support
llvm-svn: 9219
Chris Lattner [Sat, 18 Oct 2003 05:51:36 +0000 (05:51 +0000)]
Update for new varargs support
llvm-svn: 9218
Chris Lattner [Sat, 18 Oct 2003 00:14:13 +0000 (00:14 +0000)]
Fix bug in my checkin
llvm-svn: 9217
Chris Lattner [Sat, 18 Oct 2003 00:05:05 +0000 (00:05 +0000)]
Another formatting fix
llvm-svn: 9216
Chris Lattner [Fri, 17 Oct 2003 23:07:47 +0000 (23:07 +0000)]
More cleanups
llvm-svn: 9215
Chris Lattner [Fri, 17 Oct 2003 23:03:16 +0000 (23:03 +0000)]
Be more helpful if a pass fails while chasing down a miscompilation
llvm-svn: 9214
Misha Brukman [Fri, 17 Oct 2003 23:00:03 +0000 (23:00 +0000)]
* Align comments into 80 columns
* Stop using full pathnames (we don't know where the source could be)
* Use only relative distance to the source, so a user can download the code and
generate their own copy of the doxygen documentation easily
* Since `docs' has moved one level up, all relative path names lost a `..'
llvm-svn: 9213
Misha Brukman [Fri, 17 Oct 2003 21:59:57 +0000 (21:59 +0000)]
Chris says it's better to assert that TheModule is valid than silently return 0.
llvm-svn: 9212
John Criswell [Fri, 17 Oct 2003 21:50:38 +0000 (21:50 +0000)]
Added additional information about linking dynamic libraries.
llvm-svn: 9211
Brian Gaeke [Fri, 17 Oct 2003 21:47:25 +0000 (21:47 +0000)]
You can't just blat the address into memory, you have to blat its
displacement.
llvm-svn: 9210
John Criswell [Fri, 17 Oct 2003 21:37:26 +0000 (21:37 +0000)]
Adding license information for the sample project.
llvm-svn: 9209
John Criswell [Fri, 17 Oct 2003 21:10:57 +0000 (21:10 +0000)]
Updated the README so that it catagorizes the docs similar to the web page.
Added a few missing docs as well.
llvm-svn: 9208
Misha Brukman [Fri, 17 Oct 2003 18:31:59 +0000 (18:31 +0000)]
Don't release the Module, as that invalidates the Module* within the
ModuleProvider, which has bad consequences in lli::callAsMain() which tries to
access that same Module*.
llvm-svn: 9205
Brian Gaeke [Fri, 17 Oct 2003 18:27:46 +0000 (18:27 +0000)]
Implement replaceMachineCodeForFunction() for x86.
llvm-svn: 9204
Brian Gaeke [Fri, 17 Oct 2003 18:27:37 +0000 (18:27 +0000)]
Refactor jump insertion code from CompilationCallback() into insertJumpAtAddr().
Make insertFarJumpAtAddr() return void, because nothing uses its return value.
Remove some commented-out code.
Implement replaceMachineCodeForFunction() for SPARC.
llvm-svn: 9203
Brian Gaeke [Fri, 17 Oct 2003 18:27:25 +0000 (18:27 +0000)]
Add prototype for replaceMachineCodeForFunction().
llvm-svn: 9202
Misha Brukman [Fri, 17 Oct 2003 18:27:13 +0000 (18:27 +0000)]
Return the Module that we just materialized.
llvm-svn: 9201
Brian Gaeke [Fri, 17 Oct 2003 18:27:12 +0000 (18:27 +0000)]
Tidy up doxygen comment for getPointerToFunction().
Add prototypes for recompileAndRelinkFunction() and runJITOnFunction().
llvm-svn: 9200
Brian Gaeke [Fri, 17 Oct 2003 18:27:00 +0000 (18:27 +0000)]
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
Misha Brukman [Fri, 17 Oct 2003 18:26:51 +0000 (18:26 +0000)]
Return the Module being materialized to avoid always calling getModule().
llvm-svn: 9198
Brian Gaeke [Fri, 17 Oct 2003 18:26:45 +0000 (18:26 +0000)]
Add stub version of replaceMachineCodeForFunction. It will live here until
we have a better place for it to go.
llvm-svn: 9197
Brian Gaeke [Fri, 17 Oct 2003 18:09:10 +0000 (18:09 +0000)]
Remove extra blank line.
llvm-svn: 9196
Chris Lattner [Fri, 17 Oct 2003 18:03:54 +0000 (18:03 +0000)]
Do not crash on empty structures
llvm-svn: 9195
John Criswell [Fri, 17 Oct 2003 17:47:08 +0000 (17:47 +0000)]
Modified the Makefile so that the sample library is linked dynamically.
llvm-svn: 9194
Misha Brukman [Fri, 17 Oct 2003 17:28:21 +0000 (17:28 +0000)]
* Give credit where credit's due
* `Quote' names of projects
* Add emails to people's records
llvm-svn: 9193
Chris Lattner [Fri, 17 Oct 2003 05:20:51 +0000 (05:20 +0000)]
New testcase for C++ frontend crash
llvm-svn: 9192
Chris Lattner [Fri, 17 Oct 2003 05:11:44 +0000 (05:11 +0000)]
Tighten up handling of checks for shift instructions
llvm-svn: 9191
Alkis Evlogimenos [Fri, 17 Oct 2003 02:02:40 +0000 (02:02 +0000)]
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
Alkis Evlogimenos [Fri, 17 Oct 2003 00:50:38 +0000 (00:50 +0000)]
Someone forgot to commit an updated configure after adding tools/llvm-nm to configure.ac :-)
llvm-svn: 9189
Brian Gaeke [Thu, 16 Oct 2003 23:46:01 +0000 (23:46 +0000)]
Add debug variable.
llvm-svn: 9188
Brian Gaeke [Thu, 16 Oct 2003 23:45:05 +0000 (23:45 +0000)]
Fix typo in comment.
llvm-svn: 9187
Brian Gaeke [Thu, 16 Oct 2003 23:43:35 +0000 (23:43 +0000)]
This file has funny include guards and funny extra whitespace.
Make this file less funny.
llvm-svn: 9186
Brian Gaeke [Thu, 16 Oct 2003 23:39:10 +0000 (23:39 +0000)]
Document that llvm-nm works in pipe mode, thanks to the efforts of Chris.
llvm-svn: 9185
Brian Gaeke [Thu, 16 Oct 2003 23:33:38 +0000 (23:33 +0000)]
Fix a typo in a comment, and zap a blank line.
llvm-svn: 9184
Misha Brukman [Thu, 16 Oct 2003 21:19:54 +0000 (21:19 +0000)]
Add separator between different types of readers.
llvm-svn: 9183
Misha Brukman [Thu, 16 Oct 2003 21:19:34 +0000 (21:19 +0000)]
JIT.cpp:
* #include "llvm/ModuleProvider"
* alphabetize #includes
* omit extraneous parens in pointer expressions
VM.cpp:
* #include "llvm/ModuleProvider"
* alphabetize #includes
llvm-svn: 9182
Misha Brukman [Thu, 16 Oct 2003 21:18:05 +0000 (21:18 +0000)]
* 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
Misha Brukman [Thu, 16 Oct 2003 21:16:21 +0000 (21:16 +0000)]
If we move the constructors to the .cpp file, we can drop the #include
llvm-svn: 9180
John Criswell [Thu, 16 Oct 2003 20:38:16 +0000 (20:38 +0000)]
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
John Criswell [Thu, 16 Oct 2003 20:15:17 +0000 (20:15 +0000)]
Removed the -mode option.
Fixed some grammar, spelling, and punctuation.
llvm-svn: 9178
Chris Lattner [Thu, 16 Oct 2003 20:12:13 +0000 (20:12 +0000)]
Minor cleanups
llvm-svn: 9177
John Criswell [Thu, 16 Oct 2003 20:05:48 +0000 (20:05 +0000)]
Added documentation on the new -disable-inlining option.
llvm-svn: 9176
John Criswell [Thu, 16 Oct 2003 20:01:04 +0000 (20:01 +0000)]
I am not the only John Criswell.
:)
llvm-svn: 9175
Chris Lattner [Thu, 16 Oct 2003 19:58:17 +0000 (19:58 +0000)]
Give credit where credit is due
llvm-svn: 9174
John Criswell [Thu, 16 Oct 2003 19:53:53 +0000 (19:53 +0000)]
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
Chris Lattner [Thu, 16 Oct 2003 18:45:23 +0000 (18:45 +0000)]
Make llvm-nm work in "pipe mode"
llvm-svn: 9172
Chris Lattner [Thu, 16 Oct 2003 18:29:00 +0000 (18:29 +0000)]
Add support for 'weak' linkage.
llvm-svn: 9171
Chris Lattner [Thu, 16 Oct 2003 18:28:50 +0000 (18:28 +0000)]
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
Chris Lattner [Thu, 16 Oct 2003 18:27:24 +0000 (18:27 +0000)]
Geeze, what is with Brian and these ifdef's?
llvm-svn: 9169
Chris Lattner [Thu, 16 Oct 2003 18:27:04 +0000 (18:27 +0000)]
Add weak linking type
llvm-svn: 9168
Misha Brukman [Thu, 16 Oct 2003 18:14:43 +0000 (18:14 +0000)]
Automagically update website docs on commits.
llvm-svn: 9167
Misha Brukman [Thu, 16 Oct 2003 18:13:19 +0000 (18:13 +0000)]
Update the website automatically on documentation commit [in progress].
llvm-svn: 9166
Misha Brukman [Thu, 16 Oct 2003 18:10:45 +0000 (18:10 +0000)]
This should automatically update on the webpage.
llvm-svn: 9165
Brian Gaeke [Thu, 16 Oct 2003 18:05:09 +0000 (18:05 +0000)]
yikes, a copy-and-paste-o
llvm-svn: 9164
Brian Gaeke [Thu, 16 Oct 2003 18:04:40 +0000 (18:04 +0000)]
add llvm-nm entry.
llvm-svn: 9163
Brian Gaeke [Thu, 16 Oct 2003 18:03:24 +0000 (18:03 +0000)]
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
Chris Lattner [Thu, 16 Oct 2003 17:46:21 +0000 (17:46 +0000)]
Welcome llvm-nm to the family
llvm-svn: 9161
Chris Lattner [Thu, 16 Oct 2003 16:53:07 +0000 (16:53 +0000)]
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
Chris Lattner [Thu, 16 Oct 2003 16:53:04 +0000 (16:53 +0000)]
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
Chris Lattner [Thu, 16 Oct 2003 16:50:34 +0000 (16:50 +0000)]
Unfortunately, it looks like level raise is still needed :(
llvm-svn: 9158
Chris Lattner [Thu, 16 Oct 2003 16:49:12 +0000 (16:49 +0000)]
This code does not require random access use_lists
llvm-svn: 9156
Chris Lattner [Thu, 16 Oct 2003 16:48:53 +0000 (16:48 +0000)]
Eliminate using declaration
Rewrite code to work with use_lists what are either random access or bidirectional
llvm-svn: 9155
Misha Brukman [Thu, 16 Oct 2003 16:12:04 +0000 (16:12 +0000)]
Added an entry for `llvm-nm'.
llvm-svn: 9154
Brian Gaeke [Thu, 16 Oct 2003 04:43:15 +0000 (04:43 +0000)]
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
John Criswell [Thu, 16 Oct 2003 01:49:07 +0000 (01:49 +0000)]
Added autoconf support for the sample project.
llvm-svn: 9152
John Criswell [Thu, 16 Oct 2003 01:49:00 +0000 (01:49 +0000)]
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
John Criswell [Thu, 16 Oct 2003 01:45:35 +0000 (01:45 +0000)]
Adding autoconf support to the sample project.
llvm-svn: 9150
John Criswell [Thu, 16 Oct 2003 01:45:10 +0000 (01:45 +0000)]
Adding autoconf support for the sample project.
This should make setting up a new project much easier.
llvm-svn: 9149
John Criswell [Thu, 16 Oct 2003 01:44:20 +0000 (01:44 +0000)]
Adding autoconf support for the sample project.
llvm-svn: 9148
Chris Lattner [Wed, 15 Oct 2003 22:10:10 +0000 (22:10 +0000)]
Vector is my friend, do you like vector?
llvm-svn: 9147
Chris Lattner [Wed, 15 Oct 2003 22:09:57 +0000 (22:09 +0000)]
lalala
llvm-svn: 9146
Chris Lattner [Wed, 15 Oct 2003 22:09:46 +0000 (22:09 +0000)]
We'll need this soon as well
llvm-svn: 9145