Chris Lattner
57cae81b5e
start building the instruction dest pattern correctly. Change the xform
...
functions to preserve the Record for the xform instead of making it into a
function name.
llvm-svn: 23361
2005-09-14 22:55:26 +00:00
Chris Lattner
a6a0d51065
catch unnamed inputs
...
llvm-svn: 23360
2005-09-14 22:06:36 +00:00
Chris Lattner
f749a0ef7c
check that there are no unexpected operands
...
llvm-svn: 23359
2005-09-14 21:59:34 +00:00
Chris Lattner
9c196b02fa
force all instruction operands to be named.
...
llvm-svn: 23358
2005-09-14 21:13:50 +00:00
Chris Lattner
c19f24f3d7
Check that operands have unique names. REJECT instructions with broken operand
...
lists: only don't parse them if they are entirely missing (sparcv9).
llvm-svn: 23355
2005-09-14 21:05:02 +00:00
Chris Lattner
3cbcb9f5d6
fix a broke range check
...
llvm-svn: 23354
2005-09-14 21:04:12 +00:00
Chris Lattner
a5ba887c02
Parse significantly more of the instruction pattern, now collecting and
...
verifying information about the operands.
llvm-svn: 23353
2005-09-14 20:53:42 +00:00
Chris Lattner
901ddab7b1
Verify that set destinations occur first in the instruction operand list.
...
llvm-svn: 23351
2005-09-14 18:19:25 +00:00
Chris Lattner
76f1dae1af
add an accessor
...
llvm-svn: 23349
2005-09-14 18:02:53 +00:00
Chris Lattner
72cfebc71b
remove some code that isn't ready for prime time
...
llvm-svn: 23346
2005-09-14 06:03:10 +00:00
Chris Lattner
c4ae94aa32
Switch to a slightly more structured representation for instructions
...
llvm-svn: 23345
2005-09-14 04:03:16 +00:00
Chris Lattner
77cc161bd5
Add some more checking/verification code
...
llvm-svn: 23344
2005-09-14 02:11:12 +00:00
Chris Lattner
9ab561788e
start parsing instructions into patterns, start doing many more checks of
...
'set's.
llvm-svn: 23343
2005-09-14 00:09:24 +00:00
Chris Lattner
e2591652a2
don't emit the namespace inside the class!
...
llvm-svn: 23341
2005-09-13 22:05:02 +00:00
Chris Lattner
1da656efd4
Emit code suitable for emission into the ISel class, allowing us to use/define
...
methods.
llvm-svn: 23340
2005-09-13 22:03:37 +00:00
Chris Lattner
9bb7fff501
continue xform function parsing
...
llvm-svn: 23338
2005-09-13 21:59:15 +00:00
Chris Lattner
abc740453c
Start parsing node transformation information
...
llvm-svn: 23337
2005-09-13 21:51:00 +00:00
Chris Lattner
0dd99c9aaf
Add a new Record::getValueAsCode method to mirror the other getValueAs*
...
methods. Use it to simplify some code.
llvm-svn: 23336
2005-09-13 21:44:28 +00:00
Chris Lattner
4e59482982
completely eliminate TreePattern::PatternType
...
llvm-svn: 23335
2005-09-13 21:20:49 +00:00
Chris Lattner
773456a944
Regenerate
...
llvm-svn: 23311
2005-09-12 05:30:06 +00:00
Chris Lattner
8b34f3d20d
Rearrange two rules, which apparently makes some versions of bison happier.
...
llvm-svn: 23310
2005-09-12 05:29:43 +00:00
Jeff Cohen
7e6b5c60fc
Fix miscellaneous Visual Studio build problems.
...
llvm-svn: 23307
2005-09-10 02:00:02 +00:00
Chris Lattner
ada7ac14a1
add an accessor to provide more checking
...
llvm-svn: 23289
2005-09-09 01:15:01 +00:00
Chris Lattner
2490f8f606
use new accessors to simplify code. Add checking to make sure top-level instr
...
definitions are void
llvm-svn: 23288
2005-09-09 01:11:44 +00:00
Chris Lattner
2b656c6102
add some accessors
...
llvm-svn: 23287
2005-09-09 01:11:17 +00:00
Chris Lattner
334e21eb98
Fix incorrect comment
...
llvm-svn: 23285
2005-09-08 23:26:30 +00:00
Chris Lattner
a6d21c974c
Implement a complete type inference system for dag patterns, based on the
...
constraints defined in the DAG node definitions in the .td files. This
allows us to infer (and check!) the types for all nodes in the current
ppc .td file. For example, instead of:
Inst pattern EQV: (set GPRC:i32:$rT, (xor (xor GPRC:i32:$rA, GPRC:i32:$rB), (imm)<<Predicate_immAllOnes>>))
we now fully infer:
Inst pattern EQV: (set:void GPRC:i32:$rT, (xor:i32 (xor:i32 GPRC:i32:$rA, GPRC:i32:$rB), (imm:i32)<<Predicate_immAllOnes>>))
from: (set GPRC:$rT, (not (xor GPRC:$rA, GPRC:$rB)))
llvm-svn: 23284
2005-09-08 23:22:48 +00:00
Chris Lattner
e2fb8f3a77
Compute the value types that are natively supported by a target.
...
llvm-svn: 23282
2005-09-08 21:43:21 +00:00
Chris Lattner
152a72de2c
Parse information about type constraints on SDNodes
...
llvm-svn: 23281
2005-09-08 21:27:15 +00:00
Chris Lattner
ef07fffe37
use node info in the one place we currently use it
...
llvm-svn: 23280
2005-09-08 21:04:46 +00:00
Chris Lattner
d9930002aa
start parsing SDNode info records
...
llvm-svn: 23279
2005-09-08 21:03:01 +00:00
Chris Lattner
515c19f56d
Fix indentation
...
llvm-svn: 23276
2005-09-08 19:47:28 +00:00
Chris Lattner
b07d2cc2eb
regenerate
...
llvm-svn: 23275
2005-09-08 18:48:47 +00:00
Chris Lattner
df9876cdb7
Add support for automatically created anonymous definitions.
...
This implements Regression/TableGen/AnonDefinitionOnDemand.td
llvm-svn: 23274
2005-09-08 18:48:23 +00:00
Chris Lattner
9e7e8d43e8
regenerate
...
llvm-svn: 23271
2005-09-08 18:22:57 +00:00
Chris Lattner
2e3ed074d8
Tabs to spaces.
...
llvm-svn: 23270
2005-09-08 18:22:35 +00:00
Chris Lattner
03637c7200
Keep names even when inlining. This allows us to realize that ADDI is:
...
(set GPRC:i32:$rD, (add GPRC:i32:$rA, (imm)<<Predicate_immSExt16>>:$imm))
not:
(set GPRC:i32:$rD, (add GPRC:i32:$rA, (imm)<<Predicate_immSExt16>>))
(we keep the ":$imm")
llvm-svn: 23269
2005-09-08 17:45:12 +00:00
Chris Lattner
65c98b6441
Initial cut of the dag isel generator. This is still very much a work in
...
progress. It correctly parses instructions and pattern fragments and glues
together pattern fragments into instructions.
The only code it generates currently is some boilerplate code for things
like the EntryNode.
llvm-svn: 23261
2005-09-07 23:44:43 +00:00
Chris Lattner
b529b1bdbd
Rename a class. These files are being migrated to the new isel and I want to
...
reuse the names
llvm-svn: 23252
2005-09-06 22:51:34 +00:00
Chris Lattner
f12074e8f6
regenerate
...
llvm-svn: 23249
2005-09-06 21:23:27 +00:00
Chris Lattner
5cd3a27513
Tighten up the specification to allow TableGen/nested-comment.td to pass
...
(fixing a bug where / in a /* */ comment would cause it to not close).
llvm-svn: 23248
2005-09-06 21:23:09 +00:00
Chris Lattner
12c57505bf
Add an option and stuff implementation of a dag isel emitter
...
llvm-svn: 23236
2005-09-03 01:14:03 +00:00
Reid Spencer
46a7fdeb66
Implement PR614:
...
These changes modify the makefiles so that the output of flex and bison are
placed in the SRC directory, not the OBJ directory. It is intended that they
be checked in as any other LLVM source so that platforms without convenient
access to flex/bison can be compiled. From now on, if you change a .y or
.l file you *must* also commit the generated .cpp and .h files.
llvm-svn: 23115
2005-08-27 18:50:39 +00:00
Chris Lattner
497c012e54
spell this right
...
llvm-svn: 23099
2005-08-26 20:55:40 +00:00
Chris Lattner
6c4ea26961
spell this variable right
...
llvm-svn: 23095
2005-08-26 20:42:52 +00:00
Chris Lattner
b474a0ab06
Expose a new flag to TargetInstrInfo
...
llvm-svn: 23094
2005-08-26 20:40:46 +00:00
Chris Lattner
17f0f9beae
add a marker at the end of the instruction enum list
...
llvm-svn: 23090
2005-08-26 20:17:00 +00:00
Chris Lattner
9ceee53f9a
Emit this:
...
static const TargetOperandInfo OperandInfo6[] = { { &PPC32::CRRCRegClass }, { 0 }, };
instead of this:
static const TargetOperandInfo OperandInfo6[] = { { PPC32::CRRCRegisterClass }, { 0 }, };
For operand information, which does not require dynamic (startup-time)
initialization.
llvm-svn: 22931
2005-08-19 20:29:14 +00:00
Chris Lattner
916e016ac1
Expose the derived register classes to the public header, allowing them
...
to be accessed.
llvm-svn: 22930
2005-08-19 20:23:42 +00:00
Chris Lattner
20c1c4cf07
Split register class "Methods" into MethodProtos and MethodBodies
...
llvm-svn: 22928
2005-08-19 19:12:51 +00:00
Chris Lattner
cef54bfd28
Refactor to use Target.getRegisterClasses consistently, which provides
...
anonymous regclass definition renaming.
Change the generated code to emit register classes as properly namespace
qualified entities like everything else.
expose the actual class definition as an object, though this isn't quite
usable yet.
llvm-svn: 22920
2005-08-19 18:47:59 +00:00
Chris Lattner
077a4e87c4
Emit real operand info for instructions. This currently works but is bad
...
in one way: the generated tables require dynamic initialization for the
register classes. This will be fixed in a future patch.
llvm-svn: 22919
2005-08-19 18:46:26 +00:00
Chris Lattner
341308dc6b
Read the namespace field from register classes
...
llvm-svn: 22918
2005-08-19 18:45:20 +00:00
Chris Lattner
bf7633b73b
add a setName method to record
...
llvm-svn: 22912
2005-08-19 17:58:49 +00:00
Chris Lattner
1344e9cf9c
Add a setName method to Record.
...
llvm-svn: 22911
2005-08-19 17:58:11 +00:00
Chris Lattner
36f99a1374
For now, just emit empty operand info structures.
...
llvm-svn: 22910
2005-08-19 16:57:28 +00:00
Chris Lattner
5ac318c67b
Fix a problem jeffc noticed
...
llvm-svn: 22903
2005-08-19 06:16:04 +00:00
Chris Lattner
1685432a06
The code emitter generator only supports targets with 32-bit instruction
...
words. There is no way for one of these targets to have a > 32-bit immediate!
llvm-svn: 22897
2005-08-19 01:04:33 +00:00
Chris Lattner
7ab998463c
now that all of the targets are clean w.r.t. the number of operands for each
...
instruction defined, actually emit this to the InstrInfoDescriptor, which
allows an assert in the machineinstrbuilder to do some checking for us,
and is required by the dag->dag emitter
llvm-svn: 22895
2005-08-19 00:59:49 +00:00
Chris Lattner
d03fa09ce7
Figure out how many operands each instruction has, keep track of whether
...
or not it's variable.
llvm-svn: 22885
2005-08-18 23:38:41 +00:00
Chris Lattner
1f718aa8b5
revert this change, which causes breakage, temporarily
...
llvm-svn: 22880
2005-08-18 22:12:31 +00:00
Chris Lattner
b312f4d374
When emitting implicit use/def lists, only emit each unique list once. Though
...
LLVM is able to merge identical static const globals, GCC isn't, and this caused
some bloat in the generated data. This has a marginal effect on PPC, shrinking
the implicit sets from 10->4, but shrinks X86 from 179 to 23, a much bigger
reduction.
This should speed up the register allocator as well by reducing the dcache
footprint for this static data.
llvm-svn: 22879
2005-08-18 21:36:47 +00:00
Chris Lattner
d3814ff064
Fill in the numOperands field of the TargetInstrDescriptor struct from the
...
.td file.
llvm-svn: 22873
2005-08-18 19:45:37 +00:00
Chris Lattner
26a5b85cf6
make is the standard name, not gmake
...
llvm-svn: 22573
2005-08-02 00:10:52 +00:00
Jeff Cohen
bd51ec7461
Eliminate all remaining tabs and trailing spaces.
...
llvm-svn: 22523
2005-07-27 06:12:32 +00:00
Chris Lattner
bee317e9b0
Fix PR595: These error messages should not be looking at CGI.Name, they
...
should be looking at CGI.TheDef->getName().
llvm-svn: 22445
2005-07-15 22:43:04 +00:00
Nate Begeman
c871411c9d
Add support for a TODO; instructions in .td files can now have arguments
...
printed as part of the opcode. This allows something like
cmp${cc}ss in the x86 backed to be printed as cmpltss, cmpless, etc.
depending on what the value of $cc is.
llvm-svn: 22439
2005-07-14 22:50:30 +00:00
Misha Brukman
e83aaca645
* Add ability to specify the target LLVM will compile for via configure
...
* Minor whitespace cleanups
llvm-svn: 22197
2005-06-06 19:17:05 +00:00
Misha Brukman
86ecb42fa0
Add a -cvstag option for testing specific branches, such as release candidates
...
llvm-svn: 22176
2005-05-26 16:28:55 +00:00
Andrew Lenharth
175fba725a
now with a legend, and multiple lines work.
...
llvm-svn: 22153
2005-05-20 17:50:51 +00:00
Andrew Lenharth
e02c06e19c
OK, the simple scheme for the db plus a couple of cgi scripts that
...
do the dynamic plotting of stuff. Still being tested, but makes graphs
llvm-svn: 22152
2005-05-20 17:33:42 +00:00
Reid Spencer
a34374d5b2
It would help if the headings were sorted properly.
...
llvm-svn: 22096
2005-05-16 19:33:21 +00:00
Reid Spencer
3b97b81bd9
Fix a brain blunder in the HTML output.
...
llvm-svn: 22094
2005-05-16 18:52:57 +00:00
Reid Spencer
7142fb87e8
Sometimes tab completion is *not* your friend. Added the wrong file, by
...
accident so now I'm correcting it. The script is userloc.pl not userloc.html
llvm-svn: 22093
2005-05-16 18:30:38 +00:00
Reid Spencer
f9ac6c04d8
Add a script to generate information about the number of lines of code a
...
user has checked in (not necessarily authored) based on cvs annotate.
llvm-svn: 22091
2005-05-16 18:26:47 +00:00
Chris Lattner
3436cabb50
add support for fastcc and friends
...
llvm-svn: 21979
2005-05-13 20:40:52 +00:00
Misha Brukman
0db845cfb4
* Fix wording of the warning
...
* Add autoindent, smartindent, and smarttab options to the file
llvm-svn: 21905
2005-05-12 21:41:48 +00:00
Chris Lattner
f68bbda9d4
Hilight tail
...
llvm-svn: 21726
2005-05-06 06:07:34 +00:00
Andrew Lenharth
546799537e
import fix and plot multiple lines at once
...
llvm-svn: 21596
2005-04-27 17:32:41 +00:00
Andrew Lenharth
6f0a7297ed
Generate a gnuplot script for any program and any test (like llc or gcc)
...
llvm-svn: 21593
2005-04-27 16:41:50 +00:00
Andrew Lenharth
4cb11c1c66
So you want to import nightly tester data into a data base? Have we got the perl script for you
...
llvm-svn: 21592
2005-04-27 16:03:01 +00:00
Andrew Lenharth
20489f8c6e
fix for parse, and a start at db import. Using CVS as scp :)
...
llvm-svn: 21591
2005-04-27 14:57:26 +00:00
Andrew Lenharth
58a23e6e90
A first step towards being able to do more interesting things with the nightly tester data. Moreinteresting things will come soon, so tune in
...
llvm-svn: 21584
2005-04-27 02:13:20 +00:00
Misha Brukman
307bcc5132
elisp code to help with LLVM code standards compliance
...
llvm-svn: 21497
2005-04-24 17:09:19 +00:00
Misha Brukman
a08005297f
.vimrc file to aid in LLVM coding standards conformance
...
llvm-svn: 21496
2005-04-24 17:05:04 +00:00
Jeff Cohen
4d31aeb9df
Eliminate tabs and trailing spaces
...
llvm-svn: 21441
2005-04-22 04:13:13 +00:00
Misha Brukman
960a8d47d7
Remove trailing whitespace
...
llvm-svn: 21428
2005-04-22 00:00:37 +00:00
Chris Lattner
070188a856
ignore generated files
...
llvm-svn: 21362
2005-04-19 15:34:36 +00:00
Chris Lattner
0c97ef0c04
fix bogus warning
...
llvm-svn: 21361
2005-04-19 15:32:30 +00:00
Chris Lattner
c2f7fcfbba
Major change to tblgen: instead of resolving values every time a class is
...
finished up, only resolve fully when the def is defined. This allows things
to be changed and all uses to be propagated through. This implements
TableGen/LazyChange.td and fixes TemplateArgRename.td in the process.
None of the .td files used in LLVM backends are changed at all by this
patch.
llvm-svn: 21344
2005-04-19 03:36:21 +00:00
Chris Lattner
57b0bbfcbd
implementing shifting of literal integers
...
llvm-svn: 21336
2005-04-19 01:17:35 +00:00
Chris Lattner
414d27b765
Add initial lexer and parser support for shifting values. Every use of this
...
will lead to it being rejected though.
llvm-svn: 21335
2005-04-19 01:11:03 +00:00
Chris Lattner
50a8d2ea43
spiff up the nightly tester output one more notch
...
llvm-svn: 20650
2005-03-17 16:07:45 +00:00
Chris Lattner
282fa1268c
Print out who commits and what files were modified at the bottom of the test summary log sent to llvm-commits.
...
llvm-svn: 20641
2005-03-16 17:09:53 +00:00
Chris Lattner
fd8d2d1ed8
Fix computation of compiled objects, contributed by Vladimir Merzliakov!
...
llvm-svn: 20564
2005-03-11 20:17:04 +00:00
Misha Brukman
bbdb89c379
Replace tabs with spaces, separate function arguments with a space
...
llvm-svn: 20538
2005-03-10 16:32:33 +00:00
Chris Lattner
8002b63fc4
Improve formatting of the sent mail for the dj test results.
...
llvm-svn: 20537
2005-03-10 16:26:50 +00:00
Chris Lattner
ce285e1b78
Include local time on the web page for start/end times.
...
llvm-svn: 20150
2005-02-13 16:08:30 +00:00
Chris Lattner
41332dd74e
This method takes sys::Path objects now.
...
llvm-svn: 19773
2005-01-23 03:32:16 +00:00
Chris Lattner
1eec94fd8b
Drop dead #include
...
llvm-svn: 19768
2005-01-23 03:16:56 +00:00
Chris Lattner
6e90e6f640
The meat of this utility has been moved to FileUtilities, where it can be
...
used by other tools.
llvm-svn: 19767
2005-01-23 03:15:47 +00:00
Chris Lattner
fb921a5722
Minor fix.
...
llvm-svn: 19761
2005-01-22 20:59:38 +00:00
Chris Lattner
078cda0bb3
This is the final big of factoring. This shares cases in suboperand
...
differences, which means that identical instructions (after stripping off
the first literal string) do not run any different code at all. On the X86,
this turns this code:
switch (MI->getOpcode()) {
case X86::ADC32mi: printOperand(MI, 4, MVT::i32); break;
case X86::ADC32mi8: printOperand(MI, 4, MVT::i8); break;
case X86::ADC32mr: printOperand(MI, 4, MVT::i32); break;
case X86::ADD32mi: printOperand(MI, 4, MVT::i32); break;
case X86::ADD32mi8: printOperand(MI, 4, MVT::i8); break;
case X86::ADD32mr: printOperand(MI, 4, MVT::i32); break;
case X86::AND32mi: printOperand(MI, 4, MVT::i32); break;
case X86::AND32mi8: printOperand(MI, 4, MVT::i8); break;
case X86::AND32mr: printOperand(MI, 4, MVT::i32); break;
case X86::CMP32mi: printOperand(MI, 4, MVT::i32); break;
case X86::CMP32mr: printOperand(MI, 4, MVT::i32); break;
case X86::MOV32mi: printOperand(MI, 4, MVT::i32); break;
case X86::MOV32mr: printOperand(MI, 4, MVT::i32); break;
case X86::OR32mi: printOperand(MI, 4, MVT::i32); break;
case X86::OR32mi8: printOperand(MI, 4, MVT::i8); break;
case X86::OR32mr: printOperand(MI, 4, MVT::i32); break;
case X86::ROL32mi: printOperand(MI, 4, MVT::i8); break;
case X86::ROR32mi: printOperand(MI, 4, MVT::i8); break;
case X86::SAR32mi: printOperand(MI, 4, MVT::i8); break;
case X86::SBB32mi: printOperand(MI, 4, MVT::i32); break;
case X86::SBB32mi8: printOperand(MI, 4, MVT::i8); break;
case X86::SBB32mr: printOperand(MI, 4, MVT::i32); break;
case X86::SHL32mi: printOperand(MI, 4, MVT::i8); break;
case X86::SHLD32mrCL: printOperand(MI, 4, MVT::i32); break;
case X86::SHR32mi: printOperand(MI, 4, MVT::i8); break;
case X86::SHRD32mrCL: printOperand(MI, 4, MVT::i32); break;
case X86::SUB32mi: printOperand(MI, 4, MVT::i32); break;
case X86::SUB32mi8: printOperand(MI, 4, MVT::i8); break;
case X86::SUB32mr: printOperand(MI, 4, MVT::i32); break;
case X86::TEST32mi: printOperand(MI, 4, MVT::i32); break;
case X86::TEST32mr: printOperand(MI, 4, MVT::i32); break;
case X86::TEST8mi: printOperand(MI, 4, MVT::i8); break;
case X86::XCHG32mr: printOperand(MI, 4, MVT::i32); break;
case X86::XOR32mi: printOperand(MI, 4, MVT::i32); break;
case X86::XOR32mi8: printOperand(MI, 4, MVT::i8); break;
case X86::XOR32mr: printOperand(MI, 4, MVT::i32); break;
}
into this:
switch (MI->getOpcode()) {
case X86::ADC32mi:
case X86::ADC32mr:
case X86::ADD32mi:
case X86::ADD32mr:
case X86::AND32mi:
case X86::AND32mr:
case X86::CMP32mi:
case X86::CMP32mr:
case X86::MOV32mi:
case X86::MOV32mr:
case X86::OR32mi:
case X86::OR32mr:
case X86::SBB32mi:
case X86::SBB32mr:
case X86::SHLD32mrCL:
case X86::SHRD32mrCL:
case X86::SUB32mi:
case X86::SUB32mr:
case X86::TEST32mi:
case X86::TEST32mr:
case X86::XCHG32mr:
case X86::XOR32mi:
case X86::XOR32mr: printOperand(MI, 4, MVT::i32); break;
case X86::ADC32mi8:
case X86::ADD32mi8:
case X86::AND32mi8:
case X86::OR32mi8:
case X86::ROL32mi:
case X86::ROR32mi:
case X86::SAR32mi:
case X86::SBB32mi8:
case X86::SHL32mi:
case X86::SHR32mi:
case X86::SUB32mi8:
case X86::TEST8mi:
case X86::XOR32mi8: printOperand(MI, 4, MVT::i8); break;
}
After this, the generated asmwriters look pretty much as though they were
generated by hand. This shrinks the X86 asmwriter.inc files from 55101->39669
and 55429->39551 bytes each, and PPC from 16766->12859 bytes.
llvm-svn: 19760
2005-01-22 20:31:17 +00:00
Chris Lattner
eee6c31449
Implement *even more* factoring. In particular, if all of the instruction
...
strings starts out with a constant string, we emit the string first, using
a table lookup (instead of a switch statement).
Because this is usually the opcode portion of the asm string, the differences
between the instructions have now been greatly reduced. This allows many
more case statements to be grouped together.
This patch also allows instruction cases to be grouped together when the
instruction patterns are exactly identical (common after the opcode string
has been ripped off), and when the differing operand is a MachineInstr
operand that needs to be formatted.
The end result of this is a mean and lean generated AsmPrinter!
llvm-svn: 19759
2005-01-22 19:22:23 +00:00
Chris Lattner
f78580dcec
Refactor code for numbering instructions into CodeGenTarget.
...
llvm-svn: 19758
2005-01-22 18:58:51 +00:00
Jeff Cohen
50c819634d
Fix VC++ compilation error
...
llvm-svn: 19757
2005-01-22 18:50:10 +00:00
Chris Lattner
a030a47a51
Implement factoring of instruction pattern strings. In particular, instead of
...
emitting code like this:
case PPC::ADD: O << "add "; printOperand(MI, 0, MVT::i64); O << ", "; prin
tOperand(MI, 1, MVT::i64); O << ", "; printOperand(MI, 2, MVT::i64); O << '\n
'; break;
case PPC::ADDC: O << "addc "; printOperand(MI, 0, MVT::i64); O << ", "; pr
intOperand(MI, 1, MVT::i64); O << ", "; printOperand(MI, 2, MVT::i64); O << '
\n'; break;
case PPC::ADDE: O << "adde "; printOperand(MI, 0, MVT::i64); O << ", "; pr
intOperand(MI, 1, MVT::i64); O << ", "; printOperand(MI, 2, MVT::i64); O << '
\n'; break;
...
Emit code like this:
case PPC::ADD:
case PPC::ADDC:
case PPC::ADDE:
...
switch (MI->getOpcode()) {
case PPC::ADD: O << "add "; break;
case PPC::ADDC: O << "addc "; break;
case PPC::ADDE: O << "adde "; break;
...
}
printOperand(MI, 0, MVT::i64);
O << ", ";
printOperand(MI, 1, MVT::i64);
O << ", ";
printOperand(MI, 2, MVT::i64);
O << "\n";
break;
This shrinks the PPC asm writer from 24785->15205 bytes (even though the new
asmwriter has much more whitespace than the old one), and the X86 printers shrink
quite a bit too. The important implication of this is that GCC no longer hits swap
when building the PPC backend in optimized mode. Thus this fixes PR448.
-Chris
llvm-svn: 19755
2005-01-22 18:38:13 +00:00
Chris Lattner
3e855b097c
Fix the ::: problem
...
llvm-svn: 19754
2005-01-22 18:18:59 +00:00
Chris Lattner
cc09d8ac1e
Minor refactoring, no functionality change.
...
llvm-svn: 19753
2005-01-22 17:40:38 +00:00
Chris Lattner
67cbd23ad5
Seperate asmstring parsing from emission. This allows the code to be simpler
...
and more understandable. It also allows us to do simple things like fold
consequtive literal strings together. For example, instead of emitting this
for the X86 backend:
O << "adc" << "l" << " ";
we now generate this:
O << "adcl ";
*whoa* :)
This shrinks the X86 asmwriters from 62729->58267 and 65176->58644 bytes
for the intel/att asm writers respectively.
llvm-svn: 19749
2005-01-22 17:32:42 +00:00
Andrew Lenharth
e3d81200bc
make double-dollar properly escape asmstrings
...
llvm-svn: 19740
2005-01-22 00:35:22 +00:00
Reid Spencer
daa2e6471e
Fix the path from ../lib/Debug to ../Debug/lib per changes to Makefiles.
...
llvm-svn: 19550
2005-01-14 16:32:39 +00:00
Reid Spencer
7be21b0d7d
Update the documentation about -enable-llcbeta vs. -enable-linscan
...
llvm-svn: 19530
2005-01-13 18:02:40 +00:00
Misha Brukman
a7ec30e0eb
Use and print out BuildStatus, we don't always have build errors.
...
llvm-svn: 19497
2005-01-12 03:31:38 +00:00
Misha Brukman
55d06a9c3f
No need to repeat the word build' since it's under
Build status'
...
llvm-svn: 19481
2005-01-11 19:51:24 +00:00
Misha Brukman
54a70a75eb
We don't always have build errors, so call it status', not
error'
...
llvm-svn: 19479
2005-01-11 18:27:16 +00:00
Chris Lattner
e4b0ac5acf
rename linscan -> LLCBETA as it should be
...
llvm-svn: 19401
2005-01-08 21:03:58 +00:00
Reid Spencer
141c4ec759
1. Make sure that "dot" can be found in the path
...
2. Fix a bug where the lib directory specified also had to be cwd
3. Weight the output so archive->archive edges are shorter
4. Generate two different graphs: one for libraries, one for objects.
5. Adjust the properties of the graphs till it looks nice.
llvm-svn: 19293
2005-01-05 17:29:29 +00:00
Chris Lattner
2aef5783b0
Expose isConvertibleToThreeAddress and isCommutable bits to the code generator.
...
llvm-svn: 19243
2005-01-02 02:29:04 +00:00
Reid Spencer
f44b349462
* Don't include weak definitions as a definition
...
* Make subordinate libraries presented with a vertical list instead of all
listed on a single line.
llvm-svn: 19196
2004-12-30 23:13:12 +00:00
Reid Spencer
5de7573398
A Perl script to generate an HTML definition list containing the LLVM
...
library dependencies, for documentation purposes.
llvm-svn: 19194
2004-12-30 23:07:56 +00:00
Reid Spencer
fe474e71ef
Revert the last patch so that the LLVMGCCDIR environment variable is
...
still viable and will make use of the resurrected --with-llvmgccdir
configure option.
llvm-svn: 19143
2004-12-26 05:21:13 +00:00
Reid Spencer
e5411bf738
Remove references to LLVMGCCDIR because it was only used to provide a
...
value for the --with-llvmgccdir configure option which is no longer
supported.
llvm-svn: 19135
2004-12-24 06:32:54 +00:00
Tanya Lattner
ed34d9366e
Always print out DejagnuTest results to stdout so that it gets emailed to the nightly test manager. Eventually Dejagnu should be merged into the added/removed tests.
...
llvm-svn: 19023
2004-12-17 20:58:34 +00:00
Chris Lattner
d7e8358c58
Portability fix, thanks to Markus F.X.J. Oberhumer.
...
llvm-svn: 18977
2004-12-16 04:56:34 +00:00
Chris Lattner
c8857eb215
Use user time, not wall time, for optimizer time.
...
llvm-svn: 18941
2004-12-14 22:42:59 +00:00
Reid Spencer
4e8a324a40
For PR351:
...
* Change use of ReadFileIntoAddressSpace to sys::MappedFile use.
* Shorten a line > 80 chars.
llvm-svn: 18896
2004-12-13 17:41:13 +00:00
Reid Spencer
65974695fd
For PR351: libLLVMSupport now depends on libLLVMSystem
...
llvm-svn: 18893
2004-12-13 17:02:08 +00:00
Test Commit
f95e33c4c8
Test commit
...
llvm-svn: 18687
2004-12-09 05:46:48 +00:00
Reid Spencer
7b0596782a
For PR387:
...
Make this compile without warning when -Woverloaded-virtual is used.
llvm-svn: 18588
2004-12-06 23:42:37 +00:00
Reid Spencer
bb8d75ca0f
Revert previous changes to remove -enable-linscan and the *BETA columns of
...
the nightly test. These are still needed for iterative linear scan testing.
llvm-svn: 18577
2004-12-06 20:14:45 +00:00
Reid Spencer
0134e27850
Rather than break all the nightly test invocations, permit -enable-linscan
...
option to be specified, but do nothing with it.
llvm-svn: 18575
2004-12-06 18:33:54 +00:00
Reid Spencer
1327410a71
Remove LLC-BETA and linear scan options as they are no longer reported.
...
llvm-svn: 18574
2004-12-06 18:29:14 +00:00
Reid Spencer
5c0c2c389c
Print out something useful instead of a blank table when the external tests
...
are skipped by user option.
llvm-svn: 18501
2004-12-04 22:18:28 +00:00
Chris Lattner
0c9dd7ba26
Move the dejagnu section to immediately before the 'trends' section.
...
llvm-svn: 18497
2004-12-04 20:18:21 +00:00
Chris Lattner
c391048073
Remove last remnants of qmtest stuff
...
llvm-svn: 18496
2004-12-04 19:57:27 +00:00
Tanya Lattner
8a397e7e4b
Run dejagnu by default.
...
llvm-svn: 18490
2004-12-04 06:35:14 +00:00
Tanya Lattner
9d00e8bdde
Removed QMTest functions. The nightly tester no longer runs qmtest. It now runs dejagnu by default and you must turn it off using -nodejagnu.
...
llvm-svn: 18489
2004-12-04 06:25:50 +00:00
John Criswell
674fb598cd
Removed QMTests as I will be zapping them soon.
...
I've done some testing, and this seems to work, but if people who use
the nightly tester regularly could spot check these changes, I'd be
appreciative.
llvm-svn: 18464
2004-12-03 21:56:30 +00:00
Reid Spencer
3574df3c99
Make sure the timing output is also sent to the log file for dejagnu, not
...
the log file of the NightlyTest.pl script.
llvm-svn: 18158
2004-11-23 16:23:50 +00:00
Chris Lattner
6a4d621558
Change formats, as suggested by Duraid
...
llvm-svn: 18150
2004-11-23 06:51:14 +00:00
Tanya Lattner
6d21db3098
Moved dejagnu log link to the template.
...
llvm-svn: 18111
2004-11-22 18:36:12 +00:00
Tanya Lattner
4b6c640ae2
Changed to catch stderror of dejagnu and fixed missing quote.
...
llvm-svn: 18105
2004-11-22 17:16:01 +00:00
Tanya Lattner
3781e5d5e0
Made dejagnu option lower case.
...
llvm-svn: 18075
2004-11-21 00:10:12 +00:00
Tanya Lattner
9ee9ff4ea2
Added the ability to run Dejagnu tests.
...
llvm-svn: 18074
2004-11-21 00:02:40 +00:00
Reid Spencer
bbdeb2181d
Fix usage of changed function prototype
...
llvm-svn: 17798
2004-11-14 22:30:54 +00:00
Misha Brukman
72122e4a8f
* Add support for f2c and the -f2c switch to enable Fortran benchmarks
...
* Remove spurious spaces between variable names and `=' (they're not lined up
anyway and there's no hope of doing that)
llvm-svn: 17611
2004-11-08 03:28:27 +00:00
Chris Lattner
e1474644b5
Adjust to printing user+system times instead of wall times. Run the olden
...
numbers in 'stable' mode so that the numbers are more stable.
llvm-svn: 17525
2004-11-06 21:35:40 +00:00
Chris Lattner
499e1b16a7
Quiet VC++ warnings
...
llvm-svn: 17484
2004-11-05 04:50:59 +00:00
Vikram S. Adve
1f9970e468
Fix patterns to match only one-char words.
...
llvm-svn: 17365
2004-10-30 23:11:26 +00:00
Reid Spencer
acb1305e99
Internalize variable names to prevent recursive assignment. Cleanup docs.
...
llvm-svn: 17359
2004-10-30 09:19:36 +00:00
Vikram S. Adve
5ce9c3cdb0
Print P and [AR] files on update.
...
llvm-svn: 17337
2004-10-29 17:43:19 +00:00
Reid Spencer
865218db21
Fix the dependency of lex.o on gram.tab.h
...
llvm-svn: 17320
2004-10-28 16:48:13 +00:00
Reid Spencer
d3f7233495
Change Library Names Not To Conflict With Others When Installed
...
llvm-svn: 17286
2004-10-27 23:18:45 +00:00
Chris Lattner
dd0094e4ed
Convert 'struct' to 'class' in various places to adhere to the coding standards
...
and work better with VC++. Patch contributed by Morten Ofstad!
llvm-svn: 17281
2004-10-27 16:14:51 +00:00
Reid Spencer
2f74ad1e36
Add EXTRA_DIST for additional files to be distributed.
...
llvm-svn: 17233
2004-10-26 03:12:11 +00:00
Reid Spencer
b459222ce0
New Makefile Features:
...
* "dist" target now builds tar.gz, tar.bz2, and zip files suitable for
distribution. "dist" can only be run from $(BUILD_OBJ_ROOT) and implies
a "check".
* made the preconditions not do a recursive make and ensured that they are
executed sequentially.
* made the messages output by the makefile be prefixed with "llvm" and the
make level (e.g. llvm[1]: ) in the same way that make does so that the
messages are uniform and more readable.
* Fixed the tags target so that tags depends on TAGS which contains the
rules to build a file named TAGS
* Implemented the EXTRA_DIST feature in a few directories to make sure it
works.
llvm-svn: 17210
2004-10-25 08:27:37 +00:00
Chris Lattner
0566f4f4ce
Make VC happier, patch contributed by Morten Ofstad
...
llvm-svn: 17179
2004-10-23 04:58:50 +00:00
Reid Spencer
101bcc348a
Remove double colon rule for gram.tab.h so it doesn't conflict with the
...
auto-generated dependency rule.
llvm-svn: 17171
2004-10-22 23:05:46 +00:00
Reid Spencer
5574857063
We're not doing automake any more
...
llvm-svn: 17168
2004-10-22 21:02:23 +00:00
Reid Spencer
019621a1ea
Adjust to changes in Makefile.rules
...
llvm-svn: 17167
2004-10-22 21:02:08 +00:00
Reid Spencer
e48ba34fd4
We won't use automake
...
llvm-svn: 17155
2004-10-22 03:35:04 +00:00
Reid Spencer
ce514b1c2c
Initial automake generated Makefile template
...
llvm-svn: 17136
2004-10-18 23:55:41 +00:00
Chris Lattner
51278a2460
Add support for undef and unreachable
...
llvm-svn: 17059
2004-10-16 18:24:35 +00:00
Misha Brukman
4e252ebfa0
* Factor out (into new fn) a loop emitting operand shifts into the instruction
...
* Reverse instruction bit components for a LittleEndian-style encoding
* Fix some comments and spacing
llvm-svn: 16975
2004-10-14 05:53:01 +00:00
Misha Brukman
a87a2029e4
* Add option to read isLittleEndianEncoding for InstrInfo classes
...
* Doxygen-ify some function comments
llvm-svn: 16974
2004-10-14 05:50:43 +00:00
Chris Lattner
8dd656b17b
Patch to make VS happier, thanks to Morten Ofstad for pointing this out.
...
llvm-svn: 16956
2004-10-13 15:25:46 +00:00
Reid Spencer
1b27f66b76
Updates for changes in Makefile rules.
...
llvm-svn: 16951
2004-10-13 11:48:50 +00:00
Chris Lattner
dc7da6c655
Don't emit the method into the llvm namespace, let the #includer decide where it goes
...
llvm-svn: 16934
2004-10-12 16:21:18 +00:00
Reid Spencer
94c273a868
Initial version of automake Makefile.am file.
...
llvm-svn: 16888
2004-10-10 22:07:57 +00:00
Reid Spencer
7d9cba7a0f
Initial version of automake Makefile.am file.
...
llvm-svn: 16885
2004-10-10 20:43:57 +00:00
Reid Spencer
edbe8cdaec
Remove unused variable.
...
llvm-svn: 16844
2004-10-08 18:01:31 +00:00
Reid Spencer
fd0d9e2637
Make it so that positional parameters can have spaces in them.
...
llvm-svn: 16843
2004-10-08 17:59:29 +00:00
Misha Brukman
7fee34176a
Properly `quote' names, and don't forget to add the ending quote!
...
llvm-svn: 16838
2004-10-08 14:59:05 +00:00
Misha Brukman
eb2d1b952b
Fix usage description typo
...
llvm-svn: 16831
2004-10-08 01:11:15 +00:00
Misha Brukman
dab56b7775
Make comment header span the entire line
...
llvm-svn: 16830
2004-10-08 01:10:52 +00:00
Reid Spencer
e53aa77b7a
Make these scripts work on SunOS too.
...
llvm-svn: 16805
2004-10-07 16:03:21 +00:00
Chris Lattner
de7199b94f
Correctly parse variant notation
...
llvm-svn: 16637
2004-10-03 20:19:02 +00:00
Chris Lattner
9a649a5c05
Add initial support for variants. This just parses the new format, no
...
functionality is added
llvm-svn: 16636
2004-10-03 19:34:31 +00:00
Misha Brukman
bf7a239716
#include DataTypes.h to compile on MinGW, patch by Henrik Bach.
...
llvm-svn: 16616
2004-09-30 18:27:39 +00:00
Misha Brukman
71196a4005
* Add `deplibs' keyword for specifying a list of dependent libraries
...
* Convert tabs to spaces
llvm-svn: 16558
2004-09-28 21:46:18 +00:00
Misha Brukman
4cfc2f589e
Add `deplibs' keyword for specifying a list of dependent libraries
...
llvm-svn: 16557
2004-09-28 21:45:54 +00:00
Nate Begeman
bbf7945b61
Add support for the isLoad and isStore flags, needed by the instruction scheduler
...
llvm-svn: 16554
2004-09-28 21:01:45 +00:00
Chris Lattner
7a941d7691
Turn the hasDelaySlot flag into the M_DELAY_SLOT_FLAG
...
llvm-svn: 16553
2004-09-28 18:38:01 +00:00
Brian Gaeke
c07c76aa75
Touch output files before reading or writing them, so that they are
...
always guaranteed to exist. This fixes PR444. Thanks to Alkis
for reporting the bug and testing the patch.
AddRecord used to return a big list, but that return value was never
used. So now it doesn't return anything.
Create the WebDir if it does not exist.
Fix a typo in a comment.
llvm-svn: 16541
2004-09-28 16:04:00 +00:00
Reid Spencer
d34acf9203
Documentation upgrade.
...
llvm-svn: 16445
2004-09-20 08:09:36 +00:00
Reid Spencer
1b666f9b79
Finish the documentation.
...
llvm-svn: 16444
2004-09-20 08:04:13 +00:00
Reid Spencer
7e9bb8eeda
Tighten up the specification of what counts as a code file. The previous
...
specification was too liberal in some areas and missing things in others.
This specification is based on the actual extensions found in the source
tree.
llvm-svn: 16443
2004-09-20 08:00:09 +00:00
Reid Spencer
95d5c8f3c3
Base the implementation on the llvmdo script so that we only have to
...
maintain the logic for "what counts as a source file" in one place.
llvm-svn: 16442
2004-09-20 07:22:23 +00:00
Reid Spencer
eee6d1dc15
Fixed to actually work correctly and be the basis for other tools by
...
allowing the set of directories searched to be specified either by the
LLVMDO_DIRS env var or by the -dirs "dirs..." command line option.
llvm-svn: 16441
2004-09-20 07:21:19 +00:00
Chris Lattner
dbba476620
Don't count .lo files :)
...
llvm-svn: 16439
2004-09-20 05:01:04 +00:00
Chris Lattner
30c93a192b
Don't include libtool "object" files
...
llvm-svn: 16391
2004-09-18 04:40:46 +00:00
Chris Lattner
aee36bb527
Revamp the Register class, and allow the use of the RegisterGroup class to
...
specify aliases directly in register definitions.
Patch contributed by Jason Eckhardt!
llvm-svn: 16330
2004-09-14 04:17:02 +00:00
Reid Spencer
2a0a49cd9a
Modify the lines of code counting mechanism to use the new "countloc.sh"
...
utility. This avoids some problems with long line lengths and counting the
wrong things.
llvm-svn: 16200
2004-09-06 19:32:55 +00:00
Reid Spencer
a75532222d
Added a tool to more accurately count the lines of code. The previous
...
utility, getsrcs.sh suffered from two problems: (1) it generated command
lines too long for some platforms and (2) it searched the projects diretory
which now contains the llvm-test module (in nightly tester) but we don't
want to include the test code in our LOC calculation. This script should
be maintained as LLVM adds new top level directories that contain source
code.
llvm-svn: 16199
2004-09-06 19:06:27 +00:00
Reid Spencer
3965f340ad
Remove double paren use in system() function so that the command line can
...
be correctly interpreted by non-bash shells.
llvm-svn: 16194
2004-09-05 20:57:22 +00:00
Reid Spencer
c860ce9c5c
Make the NightlyTest run tests out of projects/llvm-test instead of
...
llvm/test/Programs
llvm-svn: 16181
2004-09-05 07:58:10 +00:00
Reid Spencer
d5b1443205
Clean up some "clean:" targets so they use $(VERB) and don't print anything
...
by default, like every other "clean" target in LLVM.
llvm-svn: 16161
2004-09-03 23:19:53 +00:00
Reid Spencer
7f1b5ae07e
Make tblgen's exception handling a little more robust by printing the
...
program name and also catching ...
llvm-svn: 16160
2004-09-03 23:17:54 +00:00
Reid Spencer
c4abcbefb1
Changes For Bug 352
...
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137
2004-09-01 22:55:40 +00:00
Reid Spencer
a6733ed360
Link with LLVMsystem.a for operating system independence.
...
llvm-svn: 16094
2004-08-29 19:31:19 +00:00
Reid Spencer
7ddb3950e4
RemoveFileOnErrorSignal is now in the llvm::sys namespace. Adjust
...
accordingly.
llvm-svn: 16093
2004-08-29 19:30:41 +00:00
Reid Spencer
15f8a54365
Add the examples directory to these scripts.
...
llvm-svn: 16030
2004-08-24 17:42:33 +00:00
Chris Lattner
e35741184e
Alignment is now in bits.
...
llvm-svn: 15976
2004-08-21 20:15:25 +00:00
Chris Lattner
e88b8e3471
Make alignment be in bits, just like size is
...
llvm-svn: 15969
2004-08-21 20:00:36 +00:00
Chris Lattner
d4ec8aeb62
Infer the spillsize/alignment of a register based on the register classes
...
it is embedded into.
llvm-svn: 15966
2004-08-21 19:42:03 +00:00
Chris Lattner
75ca702833
Support "Methods" in register classes in CodgeGenRegisterClass
...
llvm-svn: 15965
2004-08-21 19:21:21 +00:00
Chris Lattner
c33c1c8dca
Start parsing register classes into a more structured form
...
llvm-svn: 15961
2004-08-21 04:05:00 +00:00
Chris Lattner
820f674293
Read in declared reg sizes
...
llvm-svn: 15960
2004-08-21 02:24:57 +00:00
Chris Lattner
89ebd84bc2
Do not #include files into the llvm namespace
...
llvm-svn: 15849
2004-08-17 03:08:28 +00:00
Chris Lattner
892fc12546
Use CodeGenRegister class to make reading in of register information more
...
systematic.
llvm-svn: 15805
2004-08-16 01:10:21 +00:00
Chris Lattner
c07542698b
Add initial support for register and register class representation.
...
Obviously this is not done.
llvm-svn: 15804
2004-08-16 01:09:52 +00:00
Chris Lattner
7a514bf631
Remove awareness of isDummyClass
...
llvm-svn: 15789
2004-08-15 23:04:13 +00:00
Chris Lattner
7748ec618b
Include .td and .txt files in the greps. This will allow me to find symbols in
...
them, and also count them in the LOC of LLVM for the nightly tester.
llvm-svn: 15786
2004-08-15 22:54:31 +00:00
Chris Lattner
d7240cdb18
Make the AsmWriter a first-class tblgen object. Allow targets to specify
...
name of the generated asmwriter class, and the name of the format string.
llvm-svn: 15747
2004-08-14 22:50:53 +00:00
Chris Lattner
a86411806a
Fix minor bug in previous checkin
...
llvm-svn: 15649
2004-08-11 04:08:36 +00:00
Chris Lattner
0f301f495b
change how we invoke the printer. Instead of passing in the MO directly,
...
pass in the MI, operand number, and the type of the operand.
llvm-svn: 15645
2004-08-11 02:23:23 +00:00
Chris Lattner
a88aec6972
Start parsing more information from the Operand information
...
llvm-svn: 15644
2004-08-11 02:22:39 +00:00
Chris Lattner
c8ac0bf803
Remove special case hacks
...
llvm-svn: 15643
2004-08-11 01:53:58 +00:00
Misha Brukman
1087080432
Deleted commented-out code as we now get namespace directly, add comments
...
llvm-svn: 15627
2004-08-10 20:54:58 +00:00
Misha Brukman
1aa8b19a07
Use the target name instead of hard-coding SparcV9.
...
llvm-svn: 15616
2004-08-10 18:31:01 +00:00
Chris Lattner
660bc91ec4
This was a good idea, but until this does not break the build of
...
lib/Target/Sparc, we should not use it.
llvm-svn: 15603
2004-08-10 15:05:18 +00:00
Misha Brukman
7a352cede0
Use the current target name instead of a ClassPrefix.
...
llvm-svn: 15585
2004-08-09 19:10:43 +00:00
Misha Brukman
ad01c0dbae
* Use Classname and ClassPrefix instead of hard-coded V9 values
...
* Simplify code and shorten lines by not recomputing values
llvm-svn: 15582
2004-08-09 17:47:45 +00:00
Brian Gaeke
f6c2637825
Split out -disable-codegen into -disable-llc and -disable-jit.
...
llvm-svn: 15530
2004-08-05 19:54:59 +00:00
Misha Brukman
3a15182b6c
* Added documentation in the file header
...
* Shorten assert() text to make it fit within 80 cols
llvm-svn: 15508
2004-08-04 22:07:54 +00:00
Chris Lattner
d308e8dbd8
Be picky
...
llvm-svn: 15400
2004-08-01 08:55:34 +00:00
Chris Lattner
ae25608f8b
Instructions no longer need to have names.
...
llvm-svn: 15399
2004-08-01 08:38:17 +00:00
Chris Lattner
0dd4abcce9
Add support for asm printing machine instructions that have operands.
...
llvm-svn: 15391
2004-08-01 07:43:02 +00:00
Chris Lattner
350b76be29
Parse the operand list of the instruction. We currently support register and immediate operands.
...
llvm-svn: 15390
2004-08-01 07:42:39 +00:00
Chris Lattner
a983ac4661
Initial cut at an asm writer emitter. So far, this only handles emission of
...
instructions, and only instructions that take no operands at that!
llvm-svn: 15386
2004-08-01 05:59:33 +00:00
Chris Lattner
09d6e317a8
Add, and start using, the CodeGenInstruction class. This class represents
...
an instance of the Instruction tablegen class.
llvm-svn: 15385
2004-08-01 05:04:00 +00:00
Chris Lattner
07525455a6
Rename CodeGenWrappers.(cpp|h) -> CodeGenTarget.(cpp|h)
...
llvm-svn: 15382
2004-08-01 04:04:35 +00:00
Chris Lattner
2e8beb316b
Finegrainify namespacification
...
llvm-svn: 15381
2004-08-01 03:55:39 +00:00
Chris Lattner
5c5c16ec21
Support new flag
...
llvm-svn: 15355
2004-07-31 02:07:26 +00:00
Chris Lattner
5bf43883a6
Fix the nightly tester to default to using gnuplot in /usr/bin
...
llvm-svn: 15287
2004-07-27 18:41:49 +00:00
Chris Lattner
5a6ff22b3c
Ugh, the upgrade of zion brought in GCC 3.3.2, our arch nemesis.
...
llvm-svn: 15269
2004-07-27 08:29:06 +00:00
Chris Lattner
33187c4026
Implement test/Regression/TableGen/ListSlices.td
...
llvm-svn: 15249
2004-07-27 01:01:21 +00:00
Chris Lattner
8dcbaf2f98
Add initial support for list slices. This currently allows you to do stuff
...
like this:
def B {
list<int> X = [10, 20, 30, 4, 1, 1231, 20] [2-4,2,2,0-6];
}
... which isn't particularly useful, but more is to come.
llvm-svn: 15247
2004-07-26 23:21:34 +00:00
Reid Spencer
bf4651aa66
A utility to run an arbitrary program on each of the LLVM source files.
...
This is like llvmgrep but instead of running grep, it runs the command
given by the first argument. For example, to find the top ten files with
the most lines in llvm, you could:
utils/llvmdo wc -l | sort -nb | tail
Or, to find any source files with the wrong permissions, you could:
utils/llvmdo ls -l | grep -v rw-r--r--
Hopefully, you get the idea.
llvm-svn: 15246
2004-07-26 22:52:44 +00:00
Chris Lattner
5fce7ec5ed
Change column name
...
llvm-svn: 15129
2004-07-23 06:50:18 +00:00
Chris Lattner
1e21b8c96f
Remove some abandoned code that was never finished. If needed in the future
...
it can be ressurected from CVS.
llvm-svn: 15113
2004-07-22 21:32:38 +00:00
Chris Lattner
ae91cc3002
Passing integer 0 in for a pointer value doesn't work on IA64. Fix this
...
by using a new macro.
llvm-svn: 14863
2004-07-16 00:02:21 +00:00
Chris Lattner
817b562565
Make tblgen not try to be smart. This is better handled in makefiles if
...
at all. Patch contributed by Vladimir Prus!
llvm-svn: 14784
2004-07-13 06:11:46 +00:00
Reid Spencer
a97870c0ff
Fix some thinkos in the script (error handling, proper argument handling).
...
llvm-svn: 14676
2004-07-07 21:19:01 +00:00
Reid Spencer
e63894ba81
Change the "rotate by 90" xtics specification to just "rotate" which is
...
equivalent. The "by <angle>" syntax is not acceptable for all output
devices. Apparently the Sparc and x86 output devices (no color) don't
accept this, but should accept the plain "rotate".
llvm-svn: 14645
2004-07-06 17:04:09 +00:00
Reid Spencer
d8b190bcf0
Caused the labels on the small plots to be drawn vertically instead of
...
horizontally so they no longer overlap.
This eye-strain-lessening patch contributed by Vladimir Merzliakov. Thanks!
llvm-svn: 14632
2004-07-05 19:09:32 +00:00
Chris Lattner
136709e492
Fix relative links for nightly testers not hosted on llvm.cs.
...
Patch contributed by Vladimir Merzliakov!
llvm-svn: 14419
2004-06-25 20:57:19 +00:00
Brian Gaeke
51af85964a
Don't try to run qmtests if we fail to build the tree. The qmtests (at
...
least, on macosx) will spiral out of control instead of failing gracefully.
llvm-svn: 14396
2004-06-25 07:25:28 +00:00
Reid Spencer
3c6901d00e
Move the tests for readability of the template and gnuplot files so they
...
occur AFTER the source is checked out. This ensures that if either of the
-gnuplotscript or -templatefile options are not given, that they get picked
up from the checkout directory and don't abort the test unnecessarily.
llvm-svn: 14346
2004-06-23 14:07:12 +00:00