Chris Lattner
cba4e65559
Use the C++, more portable, deleter
...
llvm-svn: 7483
2003-08-01 20:29:18 +00:00
Chris Lattner
a1e4389087
New file
...
llvm-svn: 7482
2003-08-01 20:28:55 +00:00
Chris Lattner
55c9211b80
Make sure to delete the output file if there is an error
...
llvm-svn: 7481
2003-08-01 19:21:43 +00:00
Chris Lattner
346760c6cb
Move #include from a header to here
...
llvm-svn: 7480
2003-08-01 19:16:29 +00:00
Chris Lattner
2e42e72132
This file doesn't need this include
...
llvm-svn: 7479
2003-08-01 19:16:18 +00:00
Chris Lattner
d2ef0a77d5
Don't emit modules with lots of cruft hanging off of them.
...
llvm-svn: 7478
2003-08-01 16:14:33 +00:00
Chris Lattner
ef04e86804
Parameterize the performFinalCleanups a bit
...
llvm-svn: 7477
2003-08-01 16:13:49 +00:00
Vikram S. Adve
eda4d9cb09
Add all arithmetic operators to ConstantExprToString().
...
Note that some generated operators (like &, | or ^) may
not be supported by the assembler -- but if they've got
this far, it's better to generate them and let the assembler decide.
llvm-svn: 7476
2003-08-01 15:55:53 +00:00
Vikram S. Adve
b68bd55363
*Both* operands of divide need sign-extension before divide (if smaller
...
than machine register size), not just the second operand.
llvm-svn: 7475
2003-08-01 15:54:38 +00:00
Vikram S. Adve
4576ae1530
Put back the separate pass to decompose multi-dimensional references
...
since it is *necessary* for correct code generation. Only optional
transformations belong in the PreOpts pass (which needs to be renamed
from PreSelection to PreOpts).
llvm-svn: 7474
2003-08-01 15:53:24 +00:00
Chris Lattner
a25a717a5e
add support for emitting register classes
...
llvm-svn: 7473
2003-08-01 06:27:59 +00:00
Chris Lattner
6320cb3946
Add new getValueAsListInit and getValueAsInt methods
...
llvm-svn: 7472
2003-08-01 06:15:10 +00:00
Chris Lattner
5d390a3dcf
Add the ability to emit register file enums
...
llvm-svn: 7471
2003-08-01 05:59:20 +00:00
Chris Lattner
c4d544ddd6
Fix the way field bit references are resolved, also allow resolution of field references overall!
...
llvm-svn: 7470
2003-08-01 05:58:58 +00:00
Chris Lattner
d96b821c8a
encode size information into each ValueType
...
Add new RegisterInfo class
llvm-svn: 7469
2003-08-01 05:18:03 +00:00
Chris Lattner
97eebed243
Dead code elimination
...
llvm-svn: 7468
2003-08-01 04:47:20 +00:00
Chris Lattner
0177241fa7
Add new getValueAsBitsInit 'high-level' method
...
llvm-svn: 7467
2003-08-01 04:46:24 +00:00
Chris Lattner
fca9789b2c
Add file comment
...
Add register info emitter
Simplify code by using "high-level" methods.
llvm-svn: 7466
2003-08-01 04:39:05 +00:00
Chris Lattner
601f250872
Initial checkin of register info emitter
...
llvm-svn: 7465
2003-08-01 04:38:38 +00:00
Chris Lattner
0fe4e3f82a
Simplify code to match new interfaces
...
llvm-svn: 7464
2003-08-01 04:38:18 +00:00
Chris Lattner
135e8e0151
Switch over to an exception handling model for "high-level" requests.
...
Add new getValueAsString method.
llvm-svn: 7463
2003-08-01 04:37:57 +00:00
Chris Lattner
e83294921c
Minor cleanups
...
llvm-svn: 7462
2003-08-01 04:15:25 +00:00
Chris Lattner
440f33e964
Factor code out into a new getAllDerivedDefinitions method, which is generally useful
...
llvm-svn: 7461
2003-08-01 04:09:58 +00:00
Chris Lattner
8dce81478f
This method is long dead
...
llvm-svn: 7460
2003-08-01 03:48:42 +00:00
John Criswell
8bf3d9e393
Removed the -only-static option as it is no longer required (and didn't work
...
with the newer version of libtool anyway).
llvm-svn: 7459
2003-07-31 20:59:32 +00:00
John Criswell
e5f28ccd36
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.
llvm-svn: 7458
2003-07-31 20:58:51 +00:00
Chris Lattner
5d1a43bb60
Fix the JIT in the Nightly tester. This was not a fun bug to track down.
...
See the comments in the patch for details.
llvm-svn: 7457
2003-07-31 19:38:34 +00:00
Chris Lattner
12defed07e
Trivial cleanups: no need to include header twice. Global variable is local to file
...
llvm-svn: 7456
2003-07-31 19:31:21 +00:00
Chris Lattner
79a56ff370
Remove more obsolete comments
...
llvm-svn: 7455
2003-07-31 17:56:05 +00:00
Misha Brukman
f451b1f332
Changed pointer to the JIT code to its current location, under LLI.
...
llvm-svn: 7454
2003-07-31 17:50:35 +00:00
Chris Lattner
93dacfb0bd
Unbreak the CBE output
...
llvm-svn: 7453
2003-07-31 17:47:24 +00:00
Brian Gaeke
4449b3c963
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.
llvm-svn: 7452
2003-07-31 17:38:52 +00:00
John Criswell
697dd6e48e
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.
llvm-svn: 7451
2003-07-31 16:45:37 +00:00
Chris Lattner
21b4d8ee69
Forget about KEEP_SYMBOLS, make sure to build into the temp directory, not into localhome
...
llvm-svn: 7450
2003-07-31 16:05:11 +00:00
John Criswell
9610326d63
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.
llvm-svn: 7449
2003-07-31 15:11:08 +00:00
Tanya Lattner
f3da6ac76f
Renamed trapping instruction function to be more consistent with other functions in the file.
...
llvm-svn: 7448
2003-07-31 05:08:02 +00:00
Tanya Lattner
26f6e3b353
*** empty log message ***
...
llvm-svn: 7447
2003-07-31 05:06:09 +00:00
Chris Lattner
227005d189
More minor cleanups of the interface
...
llvm-svn: 7446
2003-07-31 04:43:49 +00:00
Chris Lattner
1283b2a07c
Rename createEmitter to run because eventually all tablegen backends will
...
be subclasses of a common interface.
llvm-svn: 7445
2003-07-31 04:38:26 +00:00
Chris Lattner
50a3c83896
Add file comment
...
llvm-svn: 7444
2003-07-31 04:37:57 +00:00
Chris Lattner
2ec4944d3a
Tighten up interface
...
llvm-svn: 7443
2003-07-31 04:32:37 +00:00
Tanya Lattner
8c2ac118ce
Added function to determine if an Instruction may trap.
...
llvm-svn: 7442
2003-07-31 04:05:50 +00:00
Chris Lattner
d1b7716c86
Add comments
...
Make the register classes optionally take code fragments for allocation_order_*
llvm-svn: 7441
2003-07-30 22:16:41 +00:00
Chris Lattner
291b42e5ad
Add support for code fragments
...
llvm-svn: 7440
2003-07-30 22:15:58 +00:00
Chris Lattner
36def4610b
Initial support for the 'code' type.
...
llvm-svn: 7439
2003-07-30 21:47:42 +00:00
Misha Brukman
e9565593a6
Ignore intrinsic functions -- don't mangle their names or rewrite calls to them.
...
llvm-svn: 7438
2003-07-30 21:45:20 +00:00
Chris Lattner
51504820c7
We no longer need to preprocess SparcV9.td before sending it through tablegen
...
llvm-svn: 7437
2003-07-30 21:00:37 +00:00
Chris Lattner
57e07e2448
Move err() to the lexer, implement file inclusion capabilities directly in tblgen
...
llvm-svn: 7436
2003-07-30 20:56:47 +00:00
Chris Lattner
063010fc6c
Add test of file inclusion capability for bugpoint
...
llvm-svn: 7435
2003-07-30 20:55:37 +00:00
Misha Brukman
3c2462bb76
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
llvm-svn: 7434
2003-07-30 20:15:56 +00:00