oota-llvm.git
21 years agoInitial checkin of Unresolved function fault handler
Chris Lattner [Wed, 4 Dec 2002 05:05:26 +0000 (05:05 +0000)]
Initial checkin of Unresolved function fault handler

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4900 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoImplement lazy resolution of function calls
Chris Lattner [Wed, 4 Dec 2002 04:47:34 +0000 (04:47 +0000)]
Implement lazy resolution of function calls

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4899 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoThis should fix the bug seen with some registers not being allocated
Misha Brukman [Tue, 3 Dec 2002 23:15:19 +0000 (23:15 +0000)]
This should fix the bug seen with some registers not being allocated
correctly: skipping instructions by incorrectly incrementing the pointer.

Also adds support for building a reg-to-regclass map, and splits the function
for saving register to stack into two, one suitable for virtual registers
(which also assigns it a physical register) and one for simply storing back
physical registers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4898 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded support for callee- and caller-save registers.
Misha Brukman [Tue, 3 Dec 2002 23:11:21 +0000 (23:11 +0000)]
Added support for callee- and caller-save registers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4897 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRegisterInfo now supports handing out caller- and callee-save registers, as
Misha Brukman [Tue, 3 Dec 2002 23:09:53 +0000 (23:09 +0000)]
RegisterInfo now supports handing out caller- and callee-save registers, as
well as building a map from a physical register to its register class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4896 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix broken ret opcode, grr...
Chris Lattner [Tue, 3 Dec 2002 22:50:02 +0000 (22:50 +0000)]
Fix broken ret opcode, grr...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4895 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitial checkin of virtual machine implementation.
Chris Lattner [Tue, 3 Dec 2002 22:48:59 +0000 (22:48 +0000)]
Initial checkin of virtual machine implementation.
We can now run very trivial test cases

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4894 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoCheckin debug implementation of MCE
Chris Lattner [Tue, 3 Dec 2002 20:56:42 +0000 (20:56 +0000)]
Checkin debug implementation of MCE

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4893 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd virtual dtor, expose a debug impl
Chris Lattner [Tue, 3 Dec 2002 20:56:20 +0000 (20:56 +0000)]
Add virtual dtor, expose a debug impl

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4892 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix instsel for calls
Chris Lattner [Tue, 3 Dec 2002 20:30:12 +0000 (20:30 +0000)]
Fix instsel for calls

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4891 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoTestcase for call instruction
Chris Lattner [Tue, 3 Dec 2002 20:30:03 +0000 (20:30 +0000)]
Testcase for call instruction

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4890 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoStandard hello-world test
Chris Lattner [Tue, 3 Dec 2002 20:25:43 +0000 (20:25 +0000)]
Standard hello-world test

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4889 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd code that can be used for debugging
Chris Lattner [Tue, 3 Dec 2002 20:01:04 +0000 (20:01 +0000)]
Add code that can be used for debugging

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4888 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDisable timing of bytecode loader
Chris Lattner [Tue, 3 Dec 2002 19:42:26 +0000 (19:42 +0000)]
Disable timing of bytecode loader

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4887 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSimplify code
Chris Lattner [Tue, 3 Dec 2002 19:40:16 +0000 (19:40 +0000)]
Simplify code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4886 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix big bug introduced with symbol table changes
Chris Lattner [Tue, 3 Dec 2002 18:32:30 +0000 (18:32 +0000)]
Fix big bug introduced with symbol table changes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4885 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix the build
Chris Lattner [Tue, 3 Dec 2002 18:15:59 +0000 (18:15 +0000)]
Fix the build

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4884 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agobrg
Brian Gaeke [Tue, 3 Dec 2002 07:36:03 +0000 (07:36 +0000)]
brg

Add support for cast ... to bool in visitCastInst (it's a start, anyways...)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4883 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSplit the machine code emitter completely out of the printer
Chris Lattner [Tue, 3 Dec 2002 06:34:06 +0000 (06:34 +0000)]
Split the machine code emitter completely out of the printer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4882 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFinal tweak to printer
Chris Lattner [Tue, 3 Dec 2002 06:33:30 +0000 (06:33 +0000)]
Final tweak to printer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4881 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoImplement trivially simple debugger for MachineCodeEmitter interface
Chris Lattner [Tue, 3 Dec 2002 06:09:26 +0000 (06:09 +0000)]
Implement trivially simple debugger for MachineCodeEmitter interface

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4880 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoContinue implementing field initializers
Chris Lattner [Tue, 3 Dec 2002 06:00:33 +0000 (06:00 +0000)]
Continue implementing field initializers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4879 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDon't delete temporary files
Chris Lattner [Tue, 3 Dec 2002 06:00:11 +0000 (06:00 +0000)]
Don't delete temporary files

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4878 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago* Move information about Implicit Defs/Uses into X86InstrInfo.def.
Chris Lattner [Tue, 3 Dec 2002 05:42:53 +0000 (05:42 +0000)]
* Move information about Implicit Defs/Uses into X86InstrInfo.def.
* Expose information about implicit defs/uses of register through the
  MachineInstrInfo.h file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4877 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitialize implicit uses/defs fields for sparc backend to empty list
Chris Lattner [Tue, 3 Dec 2002 05:41:54 +0000 (05:41 +0000)]
Initialize implicit uses/defs fields for sparc backend to empty list

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4876 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd entries to track information about implicit uses and definitions of
Chris Lattner [Tue, 3 Dec 2002 05:41:32 +0000 (05:41 +0000)]
Add entries to track information about implicit uses and definitions of
the instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4875 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agobrg
Brian Gaeke [Tue, 3 Dec 2002 00:51:09 +0000 (00:51 +0000)]
brg

X86Implicit.cpp, X86Implicit.h: New files.
InstSelectSimple.cpp: Add some clarifications in visitCallInst comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4874 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMore support
Chris Lattner [Mon, 2 Dec 2002 21:56:28 +0000 (21:56 +0000)]
More support

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4873 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMore support for machine code emission: raw instructions
Chris Lattner [Mon, 2 Dec 2002 21:56:18 +0000 (21:56 +0000)]
More support for machine code emission: raw instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4872 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoExpose explicit type
Chris Lattner [Mon, 2 Dec 2002 21:50:41 +0000 (21:50 +0000)]
Expose explicit type

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4871 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoStart implementing MachineCodeEmitter
Chris Lattner [Mon, 2 Dec 2002 21:44:34 +0000 (21:44 +0000)]
Start implementing MachineCodeEmitter

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4870 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoStart adding to the meat of MachineCodeEmitter
Chris Lattner [Mon, 2 Dec 2002 21:44:13 +0000 (21:44 +0000)]
Start adding to the meat of MachineCodeEmitter

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4869 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoEliminate OtherFrm
Chris Lattner [Mon, 2 Dec 2002 21:40:58 +0000 (21:40 +0000)]
Eliminate OtherFrm

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4868 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove comment
Chris Lattner [Mon, 2 Dec 2002 21:40:46 +0000 (21:40 +0000)]
Remove comment
Remove handling of OtherFrm

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4867 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitial support for machine code emission
Chris Lattner [Mon, 2 Dec 2002 21:24:12 +0000 (21:24 +0000)]
Initial support for machine code emission

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4866 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd initial support for machine code emission
Chris Lattner [Mon, 2 Dec 2002 21:22:04 +0000 (21:22 +0000)]
Add initial support for machine code emission

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4865 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitial version of MachineCodeEmitter interface: empty
Chris Lattner [Mon, 2 Dec 2002 21:21:36 +0000 (21:21 +0000)]
Initial version of MachineCodeEmitter interface: empty

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4864 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoThe hopefully final version of addPassesToEmitMachineCode which does not
Chris Lattner [Mon, 2 Dec 2002 21:15:42 +0000 (21:15 +0000)]
The hopefully final version of addPassesToEmitMachineCode which does not
have any question about ownership

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4863 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoIgnore generated files gram.tab.c and gram.tab.h
Misha Brukman [Mon, 2 Dec 2002 21:15:37 +0000 (21:15 +0000)]
Ignore generated files gram.tab.c and gram.tab.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4862 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoIgnore generated files Lexer.cpp and llvmAsmParser.*
Misha Brukman [Mon, 2 Dec 2002 21:14:54 +0000 (21:14 +0000)]
Ignore generated files Lexer.cpp and llvmAsmParser.*

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4861 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoIgnore generated files FileLexer.* and FileParser.*
Misha Brukman [Mon, 2 Dec 2002 21:13:59 +0000 (21:13 +0000)]
Ignore generated files FileLexer.* and FileParser.*

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4860 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd comment about ownership semantics
Chris Lattner [Mon, 2 Dec 2002 21:13:45 +0000 (21:13 +0000)]
Add comment about ownership semantics

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4859 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago* Abstracted out stack space allocation into its own function
Misha Brukman [Mon, 2 Dec 2002 21:11:58 +0000 (21:11 +0000)]
* Abstracted out stack space allocation into its own function
* Added saving of register values to the stack

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4858 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix order of operands on a store from reg to [reg+offset].
Misha Brukman [Mon, 2 Dec 2002 21:10:35 +0000 (21:10 +0000)]
Fix order of operands on a store from reg to [reg+offset].

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4857 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd stub to emit machine code for JIT
Chris Lattner [Mon, 2 Dec 2002 21:00:50 +0000 (21:00 +0000)]
Add stub to emit machine code for JIT

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4856 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoContinued support for field intitializers
Chris Lattner [Mon, 2 Dec 2002 17:53:54 +0000 (17:53 +0000)]
Continued support for field intitializers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4855 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoContinued support for field initializer
Chris Lattner [Mon, 2 Dec 2002 17:44:35 +0000 (17:44 +0000)]
Continued support for field initializer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4854 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoContinued support for Field Initializer
Chris Lattner [Mon, 2 Dec 2002 17:43:58 +0000 (17:43 +0000)]
Continued support for Field Initializer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4853 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdjustments due to new FieldInit stuff
Chris Lattner [Mon, 2 Dec 2002 17:43:43 +0000 (17:43 +0000)]
Adjustments due to new FieldInit stuff

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4852 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd comments, factor out common code
Chris Lattner [Mon, 2 Dec 2002 16:57:01 +0000 (16:57 +0000)]
Add comments, factor out common code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4851 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support for field exprs
Chris Lattner [Mon, 2 Dec 2002 16:43:43 +0000 (16:43 +0000)]
Add support for field exprs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4850 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago* Move BitsInit::resolveReferences up with the rest of BitsInit code
Chris Lattner [Mon, 2 Dec 2002 16:43:30 +0000 (16:43 +0000)]
* Move BitsInit::resolveReferences up with the rest of BitsInit code
* Initial support for field expressions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4849 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitial support for Field Expressions
Chris Lattner [Mon, 2 Dec 2002 16:42:52 +0000 (16:42 +0000)]
Initial support for Field Expressions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4848 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd correct dependency
Chris Lattner [Mon, 2 Dec 2002 16:31:46 +0000 (16:31 +0000)]
Add correct dependency

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4847 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSplit up targets
Chris Lattner [Mon, 2 Dec 2002 16:13:42 +0000 (16:13 +0000)]
Split up targets

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4846 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd comments
Chris Lattner [Mon, 2 Dec 2002 16:13:23 +0000 (16:13 +0000)]
Add comments

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4845 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMake sure to build lib/Support before the utilities, then use the new
Chris Lattner [Mon, 2 Dec 2002 01:23:26 +0000 (01:23 +0000)]
Make sure to build lib/Support before the utilities, then use the new
makefile in utils to build the utilities

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4844 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitial checkin of TableGen utility
Chris Lattner [Mon, 2 Dec 2002 01:23:04 +0000 (01:23 +0000)]
Initial checkin of TableGen utility

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4843 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd makefile to build subdirs
Chris Lattner [Mon, 2 Dec 2002 01:21:34 +0000 (01:21 +0000)]
Add makefile to build subdirs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4842 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd rawfrm flags
Chris Lattner [Sun, 1 Dec 2002 23:25:59 +0000 (23:25 +0000)]
Add rawfrm flags

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4841 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDon't add implicit regs
Chris Lattner [Sun, 1 Dec 2002 23:24:58 +0000 (23:24 +0000)]
Don't add implicit regs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4840 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agobrg
Brian Gaeke [Sat, 30 Nov 2002 11:57:28 +0000 (11:57 +0000)]
brg

InstSelectSimple.cpp: Refactor out conversion of byte, short -> int
  from visitReturnInst() to new method, promote32().
 Use it in both visitReturnInst() and visitCallInst().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4839 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agobrg
Brian Gaeke [Fri, 29 Nov 2002 12:01:58 +0000 (12:01 +0000)]
brg

InstSelectSimple.cpp: First draft of visitCallInst method, handling
 int/float args.
X86InstrInfo.def: Add entries for CALL with 32-bit pc relative arg, and
 PUSH with 32-bit reg arg.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4838 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSeveral fixes:
Vikram S. Adve [Wed, 27 Nov 2002 17:46:38 +0000 (17:46 +0000)]
Several fixes:
(1) Applied patch from Casey to implement iterator::operator= correctly:
    it should use a pointer, not a reference.
(2) Added operators == and !=, and method all().
(3) Important bug fix: excess bits need to be ignored in operations
    like ==, count(), and all().  We do this by ensuring excess bits
    in the last bitset are always 0.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4837 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix logical error in TD pass: we should clear Mod/Ref bits of each caller
Vikram S. Adve [Wed, 27 Nov 2002 17:41:13 +0000 (17:41 +0000)]
Fix logical error in TD pass: we should clear Mod/Ref bits of each caller
before inlining their graphs into a function.  To support this,
added flags to CloneFlags to strip/keep Mod/Ref bits.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4836 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded flags to CloneFlags to strip/keep Mod/Ref bits when cloning a graph.
Vikram S. Adve [Wed, 27 Nov 2002 17:39:37 +0000 (17:39 +0000)]
Added flags to CloneFlags to strip/keep Mod/Ref bits when cloning a graph.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4835 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNo longer need local graph to find call sites.
Vikram S. Adve [Wed, 27 Nov 2002 17:38:56 +0000 (17:38 +0000)]
No longer need local graph to find call sites.
Also some major fixes within IPModRef.cpp.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4834 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago(1) Bug fix that was causing nodes with dangling references to be freed.
Vikram S. Adve [Wed, 27 Nov 2002 17:37:46 +0000 (17:37 +0000)]
(1) Bug fix that was causing nodes with dangling references to be freed.
    We run removeDeadNodes() on the TD graph up front before using it.
(2) Major enhancement to printing of results: now we list the actual objects
    that are mod/ref instead of just printing the bit vectors.
Also an important bug fix in TDDataStructures pass (no change here):
clear Mod/Ref bits of callers before inlining into a function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4833 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agobrg
Brian Gaeke [Tue, 26 Nov 2002 10:43:30 +0000 (10:43 +0000)]
brg

InstSelectSimple.cpp: Add some comments that say what I'm going to do for
 calls and casts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4832 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoKeep global nodes in each DS Graph (by forcing them to be marked live).
Vikram S. Adve [Mon, 25 Nov 2002 18:21:25 +0000 (18:21 +0000)]
Keep global nodes in each DS Graph (by forcing them to be marked live).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4831 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoOops. Got the MOVrm and MOVmr mixed up. Fixed. We can now print out
Misha Brukman [Fri, 22 Nov 2002 23:15:27 +0000 (23:15 +0000)]
Oops. Got the MOVrm and MOVmr mixed up. Fixed. We can now print out
instructions correctly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4830 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoEnable the register allocator pass.
Misha Brukman [Fri, 22 Nov 2002 22:45:07 +0000 (22:45 +0000)]
Enable the register allocator pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4829 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoA simple (spilling) register allocator.
Misha Brukman [Fri, 22 Nov 2002 22:44:32 +0000 (22:44 +0000)]
A simple (spilling) register allocator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4828 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded methods to read/write values to stack in .h, fixed implementation in
Misha Brukman [Fri, 22 Nov 2002 22:43:47 +0000 (22:43 +0000)]
Added methods to read/write values to stack in .h, fixed implementation in
.cpp to return the iterator correctly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4827 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded -*- C++ -*- mode to the comments.
Misha Brukman [Fri, 22 Nov 2002 22:42:50 +0000 (22:42 +0000)]
Added -*- C++ -*- mode to the comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4826 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd a simple way to add memory locations of format [reg+offset]
Misha Brukman [Fri, 22 Nov 2002 22:42:12 +0000 (22:42 +0000)]
Add a simple way to add memory locations of format [reg+offset]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4825 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded virtual functions for storing and retrieving values from the stack.
Misha Brukman [Fri, 22 Nov 2002 22:41:23 +0000 (22:41 +0000)]
Added virtual functions for storing and retrieving values from the stack.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4824 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInstead of checking op.getType() against MO_VirtualRegister and
Misha Brukman [Fri, 22 Nov 2002 22:40:52 +0000 (22:40 +0000)]
Instead of checking op.getType() against MO_VirtualRegister and
MO_MachineRegister, we no longer distinguish Virtual vs. Machine registers
externally, they're ALL registers, all equal.

Registers are only differentiated whether they are >=
MRegisterInfo::FirstVirtual or not.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4823 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSet SSARegMap to NULL after deleting it.
Misha Brukman [Fri, 22 Nov 2002 22:32:15 +0000 (22:32 +0000)]
Set SSARegMap to NULL after deleting it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4822 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agolib/Target/X86/InstSelectSimple.cpp: Add visitCallInst, visitCastInst.
Brian Gaeke [Fri, 22 Nov 2002 11:07:01 +0000 (11:07 +0000)]
lib/Target/X86/InstSelectSimple.cpp: Add visitCallInst, visitCastInst.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4821 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMake testcase more interesting
Chris Lattner [Thu, 21 Nov 2002 23:30:08 +0000 (23:30 +0000)]
Make testcase more interesting

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4820 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoHandle cmp Reg, 0 correctly
Chris Lattner [Thu, 21 Nov 2002 23:30:00 +0000 (23:30 +0000)]
Handle cmp Reg, 0 correctly

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4819 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoPrinting support for more stuff
Chris Lattner [Thu, 21 Nov 2002 22:49:46 +0000 (22:49 +0000)]
Printing support for more stuff

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4818 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDon't add implicit operands
Chris Lattner [Thu, 21 Nov 2002 22:49:20 +0000 (22:49 +0000)]
Don't add implicit operands

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4817 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix off by one bug
Chris Lattner [Thu, 21 Nov 2002 22:48:15 +0000 (22:48 +0000)]
Fix off by one bug

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4816 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd fixme
Chris Lattner [Thu, 21 Nov 2002 22:48:01 +0000 (22:48 +0000)]
Add fixme

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4815 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMinor code cleanups
Chris Lattner [Thu, 21 Nov 2002 21:04:50 +0000 (21:04 +0000)]
Minor code cleanups

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4814 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoImplement printing of store instructions
Chris Lattner [Thu, 21 Nov 2002 21:03:39 +0000 (21:03 +0000)]
Implement printing of store instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4813 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoThe big change here is to handle printing/emission of X86II::MRMSrcMem
Chris Lattner [Thu, 21 Nov 2002 20:44:15 +0000 (20:44 +0000)]
The big change here is to handle printing/emission of X86II::MRMSrcMem
instructions.  Right now the only users are load instructions, and Misha's
spill code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4812 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove implicit information from instruction selector
Chris Lattner [Thu, 21 Nov 2002 18:54:29 +0000 (18:54 +0000)]
Remove implicit information from instruction selector

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4811 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd printing information for MUL and DIV
Chris Lattner [Thu, 21 Nov 2002 18:54:14 +0000 (18:54 +0000)]
Add printing information for MUL and DIV

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4810 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix a bug that prevented compilation of multiple functions
Chris Lattner [Thu, 21 Nov 2002 17:26:58 +0000 (17:26 +0000)]
Fix a bug that prevented compilation of multiple functions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4809 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMove test
Chris Lattner [Thu, 21 Nov 2002 17:20:32 +0000 (17:20 +0000)]
Move test

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4808 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoShuffle testcases around
Chris Lattner [Thu, 21 Nov 2002 17:20:12 +0000 (17:20 +0000)]
Shuffle testcases around

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4807 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcase
Chris Lattner [Thu, 21 Nov 2002 17:18:37 +0000 (17:18 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4806 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove opcode information for instructions that are completely defined now
Chris Lattner [Thu, 21 Nov 2002 17:12:55 +0000 (17:12 +0000)]
Remove opcode information for instructions that are completely defined now

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4805 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd printing support for sahf & setcc
Chris Lattner [Thu, 21 Nov 2002 17:10:57 +0000 (17:10 +0000)]
Add printing support for sahf & setcc

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4804 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd printing support for /0 /1 type instructions
Chris Lattner [Thu, 21 Nov 2002 17:09:01 +0000 (17:09 +0000)]
Add printing support for /0 /1 type instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4803 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support for /0 /1, etc type instructions
Chris Lattner [Thu, 21 Nov 2002 17:08:49 +0000 (17:08 +0000)]
Add support for /0 /1, etc type instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4802 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoUser defined operators are not supposed to live beyond the lifetime of the
Chris Lattner [Thu, 21 Nov 2002 16:54:22 +0000 (16:54 +0000)]
User defined operators are not supposed to live beyond the lifetime of the
pass.  Detect and flag them.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4801 91177308-0d34-0410-b5e6-96231b3b80d8