Chris Lattner
5c843c7ace
Fix coredump for when an ID is used illegally outside a record
...
llvm-svn: 7411
2003-07-30 05:17:35 +00:00
Chris Lattner
8092d1b32c
Don't pollute the namespace with template arguments after they have been resolved
...
llvm-svn: 7410
2003-07-30 04:56:05 +00:00
Chris Lattner
e5967952c9
Implement TODO: disallow 'def's with template arguments.
...
llvm-svn: 7409
2003-07-30 04:31:17 +00:00
Chris Lattner
ef05094872
Allow specification of anonymous definitions
...
llvm-svn: 7408
2003-07-30 04:26:44 +00:00
Chris Lattner
5ef4c8804e
Allow passing lists through variables
...
llvm-svn: 7407
2003-07-30 04:16:52 +00:00
Chris Lattner
27b2f9e7c2
Implement resolution of variables to the value of the variable once it gets a value
...
llvm-svn: 7406
2003-07-30 04:05:07 +00:00
Chris Lattner
b964a87dfe
Don't crash if there is no Inst class in the tablegen file!
...
llvm-svn: 7402
2003-07-29 23:00:08 +00:00
Misha Brukman
bbfad09fa9
The RTLD_GLOBAL flag allows symbols to be globally accessible, which makes
...
resolution of symbols in the .so possible (currently assists debugging with
bugpoint).
llvm-svn: 7366
2003-07-28 19:19:58 +00:00
Chris Lattner
3ed1a8d26b
Add support for Set statements without {}'s. Now we can just say
...
set Foo = bar in
def blah: blahclass {}
llvm-svn: 7355
2003-07-28 03:49:40 +00:00
Chris Lattner
590c74e14d
Allow initializing variable initializers with variables
...
llvm-svn: 7354
2003-07-28 03:39:57 +00:00
Brian Gaeke
991f66b7e2
Include llvm/Support/Mangler.h first. Don't include <iostream>, <set>,
...
<string>, or llvm/Value.h. Move up the inclusion of llvm/Support/Mangler.h.
llvm-svn: 7321
2003-07-25 20:21:20 +00:00
Chris Lattner
89596df8dd
Use C++ headers, not C headers
...
llvm-svn: 7308
2003-07-25 17:32:51 +00:00
Brian Gaeke
d9979a5529
Cleanups:
...
Mangler.cpp: Constify parameter to makeNameProper, and use const_iterator.
Make Count an unsigned int, and use utostr().
Don't name parameters things that start with underscore.
Mangler.h: All of the above, and also: Add Emacs mode-line. Include <set>.
llvm-svn: 7301
2003-07-24 21:37:57 +00:00
Brian Gaeke
e5ae59ad05
Factor out name-mangling from X86/Printer, which is derived from CWriter,
...
into this new support class.
llvm-svn: 7300
2003-07-24 20:20:58 +00:00
Chris Lattner
6ad460b336
Simplify code by using ConstantInt::getRawValue instead of checking to see
...
whether the constant is signed or unsigned, then casting
llvm-svn: 7252
2003-07-23 15:22:26 +00:00
Misha Brukman
8a57ef8390
Added a DEBUG() guard to a debug information printout.
...
llvm-svn: 7203
2003-07-18 18:03:45 +00:00
Misha Brukman
d0f2196d2e
Fixed a bug: outputting name of variable instead of its value.
...
Also, placed DEBUG() guards around debug information so that the generated file
is much smaller and hence should be faster to preprocess/compile.
llvm-svn: 7180
2003-07-15 21:26:09 +00:00
Misha Brukman
414c95141f
This optimization greatly enhances efficiency of creating new instructions by
...
masking and shifting operands directly into their place in the instruction,
instead of the old-fashioned way of ORing in each bit separately.
llvm-svn: 7179
2003-07-15 21:00:32 +00:00
Misha Brukman
5de3e14206
The word separate' only has one
e'.
...
llvm-svn: 7173
2003-07-14 17:20:40 +00:00
Misha Brukman
74d17238cb
Fixed grammatical error.
...
llvm-svn: 7160
2003-07-10 21:38:28 +00:00
Misha Brukman
c12238543a
Lowercase versions of `occurrence' need to be spelled correctly, too.
...
llvm-svn: 7142
2003-07-10 17:05:26 +00:00
Misha Brukman
14194dcdae
Occurrence' has no
a' and the `r' is doubled.
...
llvm-svn: 7140
2003-07-10 16:49:51 +00:00
Misha Brukman
73f1bbeecd
Stop using the `Offset' variable, as we are cycling through the bits of a field
...
initializer and the loop index variable already carries the offset information
that we need.
llvm-svn: 7123
2003-07-07 22:30:44 +00:00
John Criswell
258dfc0319
Merged in autoconf branch. This provides configuration via the autoconf
...
system.
llvm-svn: 7014
2003-06-30 21:59:07 +00:00
Chris Lattner
4d3ee0f3b1
Add support for 'unsigned' command line arguments
...
llvm-svn: 6928
2003-06-28 15:47:20 +00:00
John Criswell
6fc4a480f3
Added code to the clean rule that deletes files placed in the source directory.
...
These files interfer with a second build attempt.
llvm-svn: 6927
2003-06-27 17:03:20 +00:00
Chris Lattner
ef97ca721a
Remove usage of sys/unistd.h
...
llvm-svn: 6788
2003-06-19 18:42:09 +00:00
Brian Gaeke
f35ca29abc
Put ifdefs around use of malloc.h/mallinfo, which isn't available on FreeBSD.
...
llvm-svn: 6750
2003-06-17 19:54:00 +00:00
Chris Lattner
b23ae4483e
Fix misspelling of ExtraSources, hopefully to unbreak the nightly tester
...
Remove evil rcs tag :)
llvm-svn: 6737
2003-06-17 14:30:21 +00:00
Chris Lattner
493103ea3b
Actually, change it to use explicit new/delete, which is more likely to be
...
optimized INTO an alloca
llvm-svn: 6727
2003-06-16 22:29:09 +00:00
Chris Lattner
9fa396e6c7
Remove usage of alloca
...
llvm-svn: 6726
2003-06-16 22:22:11 +00:00
Brian Gaeke
4681b27a92
Isolate machine-dependent use of <alloca.h> in "Support/Alloca.h",
...
so that we can easily change its use to be conditional on the result of
an autoconf test later.
llvm-svn: 6723
2003-06-16 21:54:01 +00:00
John Criswell
5d5d0787d1
Added assert.h so that it compiles under newer versions of GCC.
...
llvm-svn: 6683
2003-06-11 14:17:21 +00:00
John Criswell
7ac52038b0
Updated to the new Makefile.common.
...
Modified the test rule so that it can be added to the regular test rule
(I believe the term is double dependency?).
llvm-svn: 6681
2003-06-11 13:57:48 +00:00
Chris Lattner
51bbe7b282
Old versions of GCC doesn't have <ostream> :(
...
llvm-svn: 6661
2003-06-06 23:06:20 +00:00
Chris Lattner
68ee069591
Fix compilation problem with some versions of G++
...
llvm-svn: 6660
2003-06-06 22:13:01 +00:00
Chris Lattner
5e34712b08
Fix problem with perror
...
llvm-svn: 6659
2003-06-06 21:09:29 +00:00
Misha Brukman
545d95e475
All debug print statements are now output with the DEBUG() guard to make
...
output clean so that tests can automatically diff the output.
llvm-svn: 6643
2003-06-06 00:27:02 +00:00
Misha Brukman
de307f15d4
* Stop ignoring cc registers, since we actually use them in branches.
...
* Added comment as to why we are still ignoring predict and annul bits.
llvm-svn: 6636
2003-06-05 23:15:25 +00:00
Chris Lattner
b35f33f39e
Spiff up options a bit
...
llvm-svn: 6573
2003-06-03 05:07:28 +00:00
Chris Lattner
3d2a9dcc14
Add -o support for TableGen
...
I figure that misha has done a lot of things on my todo list, the least I
can do is reciprocate a bit. :)
llvm-svn: 6571
2003-06-03 05:04:42 +00:00
Chris Lattner
5531141028
Make tablegen use more structured command line options
...
llvm-svn: 6570
2003-06-03 04:56:29 +00:00
Misha Brukman
58aeba1c5f
Stop ignoring the `cc' field, we actually use it now (e.g. conditional move)
...
llvm-svn: 6555
2003-06-03 00:07:17 +00:00
Misha Brukman
62904a1538
getValueOp() now takes a MachineInstr as well as a MachineOperand.
...
llvm-svn: 6450
2003-05-30 20:32:01 +00:00
Misha Brukman
59ea121b52
Output the opcode name of the instruction being emitted to cerr.
...
llvm-svn: 6386
2003-05-28 18:29:10 +00:00
Misha Brukman
6c51fb5dd1
Cannot output `static' in generated cpp code: results in error. It's already
...
specified as a static member in class definition.
llvm-svn: 6370
2003-05-27 22:29:02 +00:00
Misha Brukman
170b9ffe76
* Now outputting a static function getBinaryCodeForInstr() (JIT-accessible)
...
* For debugging purposes:
+ output the predefined bit pattern of the instruction
* Fixed inefficiency: only load an operand from MachineInstr once
* Bug fix: did not advance bit index when seeing named bit-fields "annul", "cc"
and "predict"
* Added a catch-all for non-supported instructions at the end of switch stmt.
llvm-svn: 6368
2003-05-27 22:19:58 +00:00
Chris Lattner
6796f5a374
Make _sure_ we don't go into an infinite loop if a signal happens!
...
llvm-svn: 6351
2003-05-27 16:25:04 +00:00
Misha Brukman
25b8510b7e
Add ability to utilize the code emitter generator (CodeEmitterGen).
...
llvm-svn: 6322
2003-05-24 00:17:12 +00:00
Misha Brukman
be1457481b
First cut at the Code Generator using the TableGen methodology.
...
llvm-svn: 6321
2003-05-24 00:15:53 +00:00