1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-30 07:22:55 +01:00
Commit Graph

173 Commits

Author SHA1 Message Date
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