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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Chris Lattner [Thu, 21 Nov 2002 16:19:42 +0000 (16:19 +0000)]
Rename the SetCC X86 instructions to reflect the fact that they are the
register versions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4800
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 21 Nov 2002 15:52:38 +0000 (15:52 +0000)]
Simplify setcc code a bit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4799
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 21 Nov 2002 02:00:20 +0000 (02:00 +0000)]
Support Registers of the form (B8+ rd) for example
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4798
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 21 Nov 2002 01:59:50 +0000 (01:59 +0000)]
Dont' set flags
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4797
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 21 Nov 2002 01:33:44 +0000 (01:33 +0000)]
Implement printing more, implement opcode output more
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4796
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 21 Nov 2002 01:33:28 +0000 (01:33 +0000)]
Huge diff do to reindeinting comments.
Basically just adds OpSize flags for instructions that need them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4795
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 21 Nov 2002 01:32:55 +0000 (01:32 +0000)]
Add new prefix flag
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4794
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 21 Nov 2002 00:30:01 +0000 (00:30 +0000)]
Print another class of instructions correctly, giving us: xorl EDX, EDX
for example.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4793
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 21 Nov 2002 00:25:56 +0000 (00:25 +0000)]
Booleans are types too. And they get stored in bytes. And InstructionSelection
doesn't assert fail. And everyone's happy. Yay!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4792
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 20 Nov 2002 22:30:02 +0000 (22:30 +0000)]
Checkin testcases for bugpoint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4791
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 20 Nov 2002 22:28:18 +0000 (22:28 +0000)]
Build bugpoint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4790
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 20 Nov 2002 22:28:10 +0000 (22:28 +0000)]
Initial checkin of bugpoint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4789
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 20 Nov 2002 20:47:41 +0000 (20:47 +0000)]
Initial checkin of Module cloning support stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4788
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 20 Nov 2002 20:22:58 +0000 (20:22 +0000)]
Cloning stuff doesn't modify the source module
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4787
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 20 Nov 2002 20:17:03 +0000 (20:17 +0000)]
X86 target builds fine now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4786
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 20 Nov 2002 19:32:43 +0000 (19:32 +0000)]
Fix symbol table problem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4785
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 20 Nov 2002 18:59:43 +0000 (18:59 +0000)]
Add definitions for function headers from MRegisterInfo.h:
Some functions are in X86RegisterInfo.cpp, others, because of the data they
need, are in X86RegisterClasses.cpp, which also defines some register classes:
byte, short, and int.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4784
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 20 Nov 2002 18:56:41 +0000 (18:56 +0000)]
Check not only for MO_VirtualRegister, but MO_MachineRegister as well when
printing out assembly. After all, we want the real thing too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4783
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 20 Nov 2002 18:55:27 +0000 (18:55 +0000)]
Initialize the SSARegMap.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4782
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 20 Nov 2002 18:54:53 +0000 (18:54 +0000)]
MRegisterInfo.h - Added prototypes for functions we need to map a register to
an appropriate TargetRegisterClass, also adds TargetRegisterClass definition.
TargetMachine.h - speling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4781
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 20 Nov 2002 18:37:37 +0000 (18:37 +0000)]
Don't build X86 target yet
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4780
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 20 Nov 2002 18:36:02 +0000 (18:36 +0000)]
- Eliminated the deferred symbol table stuff in Module & Function, it really
wasn't an optimization and it was causing lots of bugs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4779
91177308-0d34-0410-b5e6-
96231b3b80d8