Commit Graph

6919 Commits

Author SHA1 Message Date
Chris Lattner
1d1adea493 Add file comment
Add register info emitter
Simplify code by using "high-level" methods.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7466 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 04:39:05 +00:00
Chris Lattner
3112326c88 Initial checkin of register info emitter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7465 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 04:38:38 +00:00
Chris Lattner
048c00db1c Simplify code to match new interfaces
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7464 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 04:38:18 +00:00
Chris Lattner
5c737ad4d6 Switch over to an exception handling model for "high-level" requests.
Add new getValueAsString method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7463 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 04:37:57 +00:00
Chris Lattner
cf1b585312 Minor cleanups
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7462 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 04:15:25 +00:00
Chris Lattner
ab47ae3381 Factor code out into a new getAllDerivedDefinitions method, which is generally useful
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7461 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 04:09:58 +00:00
Chris Lattner
7296fb0421 This method is long dead
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7460 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-01 03:48:42 +00:00
John Criswell
c44df87414 Removed the -only-static option as it is no longer required (and didn't work
with the newer version of libtool anyway).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7459 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 20:59:32 +00:00
John Criswell
82f4a5a00c Modified the use of libtool so that we don't compile every file twice.
This can be done using the disable-shared tag that comes with libtool.
This change also required changing how .o libraries are linked.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7458 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 20:58:51 +00:00
Chris Lattner
71336a9c14 Fix the JIT in the Nightly tester. This was not a fun bug to track down.
See the comments in the patch for details.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7457 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 19:38:34 +00:00
Chris Lattner
396aecd032 Trivial cleanups: no need to include header twice. Global variable is local to file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7456 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 19:31:21 +00:00
Chris Lattner
b08f3dfe50 Remove more obsolete comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7455 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 17:56:05 +00:00
Misha Brukman
f31dc9841c Changed pointer to the JIT code to its current location, under LLI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7454 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 17:50:35 +00:00
Chris Lattner
f6b7ff92d6 Unbreak the CBE output
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7453 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 17:47:24 +00:00
Brian Gaeke
002a50ac64 I think local symbols in X86 GAS have to start with .L, not just
.; so I have changed the basic block markers to start with .L.  I also
broke up a >80char line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7452 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 17:38:52 +00:00
John Criswell
54ac8b11a1 Changed the default location of OBJ_ROOT to follow these rules:
1. If USER is defined and localhome/$USER is a directory, set OBJ_ROOT
	   to /localhome/$USER
	2. Otherwise, set OBJ_ROOT to .
This should hopefully fix the nightly tester.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7451 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 16:45:37 +00:00
Chris Lattner
6058fd3589 Forget about KEEP_SYMBOLS, make sure to build into the temp directory, not into localhome
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7450 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 16:05:11 +00:00
John Criswell
506dad0664 Modified the code so that it generates (0) for setjmp() and abort() for
longjmp() (and does not include setjmp.h).
This is to fix some problems on Sparc while non-local jumps are still
unimplemented.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7449 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 15:11:08 +00:00
Tanya Lattner
be08bb399a Renamed trapping instruction function to be more consistent with other functions in the file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7448 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 05:08:02 +00:00
Tanya Lattner
ec127bb352 *** empty log message ***
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7447 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 05:06:09 +00:00
Chris Lattner
c9670ef17d More minor cleanups of the interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7446 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 04:43:49 +00:00
Chris Lattner
f745a20deb Rename createEmitter to run because eventually all tablegen backends will
be subclasses of a common interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7445 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 04:38:26 +00:00
Chris Lattner
14d7c59491 Add file comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7444 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 04:37:57 +00:00
Chris Lattner
aaa3939476 Tighten up interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7443 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 04:32:37 +00:00
Tanya Lattner
741bb0019d Added function to determine if an Instruction may trap.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7442 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-31 04:05:50 +00:00
Chris Lattner
0ad1361837 Add comments
Make the register classes optionally take code fragments for allocation_order_*


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7441 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 22:16:41 +00:00
Chris Lattner
e3a1d05448 Add support for code fragments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7440 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 22:15:58 +00:00
Chris Lattner
f05760de76 Initial support for the 'code' type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7439 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 21:47:42 +00:00
Misha Brukman
3b624625e7 Ignore intrinsic functions -- don't mangle their names or rewrite calls to them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7438 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 21:45:20 +00:00
Chris Lattner
942e7230e5 We no longer need to preprocess SparcV9.td before sending it through tablegen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7437 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 21:00:37 +00:00
Chris Lattner
7dff053540 Move err() to the lexer, implement file inclusion capabilities directly in tblgen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7436 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 20:56:47 +00:00
Chris Lattner
dfe9a70c66 Add test of file inclusion capability for bugpoint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7435 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 20:55:37 +00:00
Misha Brukman
be6bf5668c CodeGeneratorBug.cpp:
* Temporarily externing InputArgv to print it out for the benefit of LLI command
  needed to reproduce the result.
* Print out the list of functions currently being tested
* ListReducer now returns a bool if there was a failure, so test for it

ListReducer.h:
* Handle the case where there is no problem by returning true if failure is
  found. Also correctly handles the case when there is only 1 pass/function.

Miscompilation.cpp:
* ListReducer now returns a bool if there was a failure, so test for it


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7434 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 20:15:56 +00:00
Misha Brukman
9d679cbc6c * Moved InputArgv out of anonymous scope to be extern'd in another file.
* Added DEBUG() statements to print out parameters passed to executing programs
* Actually ADD parameters to a program running via the JIT (using vector<char*>)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7433 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 20:15:44 +00:00
Chris Lattner
e623fe3d0a Minor reorganization, move ParseFile to the lexer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7432 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 19:55:10 +00:00
Chris Lattner
90523906fa Make tablegen take an input filename to parse if one is specified, otherwise
use stdin.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7431 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 19:48:02 +00:00
Chris Lattner
35c7444e52 Initial tests for tblgen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7430 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 19:40:00 +00:00
Chris Lattner
d33b8db415 Directly support C style comments in tblgen, but allow them to actually nest
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7429 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 19:39:36 +00:00
Chris Lattner
61972242f3 Fix a bug that brian reported
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7428 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 19:04:37 +00:00
Misha Brukman
800e6e216a Moved definition of InputArgv into ExecutionDriver.cpp -- it is only used there.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7427 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 17:59:23 +00:00
Misha Brukman
7835c85227 Use a vector<char*> instead of char*[] so that we can add arbitrary number of
parameters, such as command-line arguments that the executing program gets via
bugpoint.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7423 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 17:44:15 +00:00
Chris Lattner
c1869e85de Add variable to capture arguments that should be passed to the user program
This is unused so far.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7422 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 17:36:07 +00:00
Chris Lattner
9cf3d47702 Add support for "named positional arguments"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7421 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 17:34:02 +00:00
Misha Brukman
5d5bc7b90c Revert change: default architecture is never set, it is guessed from input
bytecode file. This means that LLC on X86 will compile to Sparc assembly given a
64-bit input bytecode file...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7419 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 15:29:55 +00:00
Vikram S. Adve
db68577691 When emitting a constant, check for ConstantExpr before
ordinary (primitive) types since ConstantExprs may be of primitive type!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7418 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 12:54:47 +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
Chris Lattner
7a3dd8651f Conform to the new interface for describing target registers... even though
it's currently not used.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7416 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 05:51:34 +00:00
Chris Lattner
7c28952e7a Add all of the necessary classes to describe the contents of the MRegister.h implementation
for a target.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7415 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 05:50:12 +00:00
Chris Lattner
b4d3f46ba2 Only regenerate the .inc file if IT has changed, not just if the .td files
have changed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7414 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 05:49:17 +00:00
Chris Lattner
7db1fa9802 Use target specific interface instead of forcing it to be target-generic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7413 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-30 05:33:48 +00:00