Chris Lattner [Sat, 2 Nov 2002 00:13:20 +0000 (00:13 +0000)]
Stop representing scalars as explicit nodes in the graph. Now the only
nodes in the graph are memory objects, which is very nice. This also greatly
reduces the size and memory footprint for DSGraphs. For example, the local
DSGraph for llu went from 65 to 13 nodes with this change. As a side bonus,
dot seems to lay out the graphs slightly better too. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4488
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Nov 2002 00:11:12 +0000 (00:11 +0000)]
* Eliminate Scalar node type (renumber other node types)
* Allow DSNodeHandle::mergeWith to work if a node handle isn't pointing to a node yet
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4487
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Hildenbrandt [Fri, 1 Nov 2002 17:37:09 +0000 (17:37 +0000)]
Fixed bug in Regression/CBackend/2002-10-30-FunctionPointerAlloca.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4486
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 1 Nov 2002 17:34:23 +0000 (17:34 +0000)]
Fix comments, steens is context sensitive, we just haven't implemented
mod/ref apis yet
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4485
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 1 Nov 2002 17:29:35 +0000 (17:29 +0000)]
Add a testcase cee should eventually pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4484
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Fri, 1 Nov 2002 16:49:10 +0000 (16:49 +0000)]
Use absolute path name for "analyze" since we are changing directories.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4483
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 1 Nov 2002 16:46:05 +0000 (16:46 +0000)]
New iostream definitions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4482
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 1 Nov 2002 04:49:06 +0000 (04:49 +0000)]
Make sure to include name information if we have it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4481
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 1 Nov 2002 03:16:45 +0000 (03:16 +0000)]
Fix burg build problem.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4480
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 23:24:00 +0000 (23:24 +0000)]
Add a fixme
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4479
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 31 Oct 2002 23:05:22 +0000 (23:05 +0000)]
A new test case that tries to generate all the different possible shift
opcodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4478
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 31 Oct 2002 23:03:59 +0000 (23:03 +0000)]
InstSelectSimple.cpp: Include llvm/iOther.h for ShiftInst.
Add ISel::visitShiftInst() to instruction select shift instructions.
Add a comment in visitAdd about how to do 64 bit adds.
X86InstrInfo.def: Add register-to-register move opcodes and shift opcodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4477
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 22:41:15 +0000 (22:41 +0000)]
* Minor optimization: when merging nodes, merge the smaller one into the
larger one.
* Handle the case where we are merging two nodes of different size better.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4476
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 21:24:10 +0000 (21:24 +0000)]
Eliminate some unneccesary #includes and forward decls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4475
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Hildenbrandt [Thu, 31 Oct 2002 18:23:09 +0000 (18:23 +0000)]
CBE doesn't alloc correctly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4474
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 17:16:18 +0000 (17:16 +0000)]
Reassociate pass now works
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4473
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 17:13:11 +0000 (17:13 +0000)]
Reassociate now works
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4472
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 17:12:59 +0000 (17:12 +0000)]
Fixes to the reassociate pass to make it respect dominance properties
Huge thanks go to Casey Carter for writing this fix, reassociate is now
reoperational!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4471
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 17:09:06 +0000 (17:09 +0000)]
Fix nasty bug in ::isNeg()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4470
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Thu, 31 Oct 2002 15:34:48 +0000 (15:34 +0000)]
Restore support for indirect function calls (which briefly wasn't working
after I removed annotations on MachineInstr for the CallDescriptor).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4469
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Thu, 31 Oct 2002 15:32:24 +0000 (15:32 +0000)]
Do not print "NEW FILES AND DIRECTORIES" unless requested separately
because this is usually such a long list that it makes the output
useless anyway.
Disable checking exit status until we can find something more precise.
The exit status is too coarse-grain to be useful.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4468
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 06:52:26 +0000 (06:52 +0000)]
Remove dead code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4467
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 31 Oct 2002 06:34:18 +0000 (06:34 +0000)]
Refactored DSGraph.h:
* DSGraph.h contains DSGraph
* DSNode.h contains DSNode (soon UDSNode and MDSNode)
* DSSupport.h contains DSCallsite, DSTypeRec, and DSNodeHandler
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4466
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 05:45:02 +0000 (05:45 +0000)]
This fixes all kinds of problems with array handling. There are still bugs to
be fixed, but we are getting much closer now.
* Make DSNode::TypeRec a full fledged DSTypeRec type.
* Add methods used to update and access the typerecords elements
* Add methods to query if and to cause a node to be completely folded
* DSGraph construction doesn't use the allocation type for anything at all,
now nodes get their type information based on how they are used.
* Fixed a bug with global value handling introduced in the last checkin
* GEP support is now much better, arrays are handled correctly. The array
flag is now updated in type records. There are still cases that are not
handled yet (we do not detect pessimizations), but getting much closer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4465
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 05:38:19 +0000 (05:38 +0000)]
New testcases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4464
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 04:59:02 +0000 (04:59 +0000)]
Tell cvs to ignore *.dot and *.ps files in this directory
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4463
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 04:48:32 +0000 (04:48 +0000)]
New testcase for the possible array merging scenarios
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4462
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 04:24:23 +0000 (04:24 +0000)]
Can simplify code now with the isCommutative() method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4461
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 04:20:07 +0000 (04:20 +0000)]
Use new isCommutative interface, which gives us SetEQ and SetNE for free.
Thanks fly out to Casey Carter for this fix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4460
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 04:14:01 +0000 (04:14 +0000)]
New isAssociative/isCommutative inspection methods, graciously contributed by
Casey Carter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4459
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 02:50:27 +0000 (02:50 +0000)]
Statistic class should return const reference to *this, not a reference to
the data type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4458
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 02:44:36 +0000 (02:44 +0000)]
BreakCriticalEdges should update dominance frontier information as well as
other dominance stuff. Patch contributed by Casey Carter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4457
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 02:39:48 +0000 (02:39 +0000)]
Add interface to update domfrontier info, thanks to Casey Carter for impl
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4456
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 31 Oct 2002 01:25:13 +0000 (01:25 +0000)]
New testcases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4455
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 21:47:57 +0000 (21:47 +0000)]
Fix two problems:
* Load Implementation can cause unaligned memory accesses, which caused
problems for sparc.
* cast from pointer to pointer would zero the upper 32 bits of the pointer
which obviously causes problems on 64 bit hosts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4454
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Wed, 30 Oct 2002 20:38:49 +0000 (20:38 +0000)]
Bug fix: need to initialize new CallArgsDescriptor pointer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4453
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Wed, 30 Oct 2002 20:38:16 +0000 (20:38 +0000)]
Bug fix in setting an implicit ref.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4452
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Wed, 30 Oct 2002 20:16:38 +0000 (20:16 +0000)]
In getID(), don't call getValidSymbolName to mangle external names!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4451
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 06:04:46 +0000 (06:04 +0000)]
Add lots more info
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4450
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 30 Oct 2002 02:18:29 +0000 (02:18 +0000)]
Return 0 instead of 1 for correct execution. Makes automated testing happy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4449
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 02:03:59 +0000 (02:03 +0000)]
Make the testcase MORE complex
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4448
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 02:02:37 +0000 (02:02 +0000)]
Remove fixme
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4447
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 01:55:38 +0000 (01:55 +0000)]
Add special code to make printing SSA form machine instructions nicer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4446
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 01:54:42 +0000 (01:54 +0000)]
Name the first basic block
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4445
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 01:49:01 +0000 (01:49 +0000)]
Make sure to set the destination register correctly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4444
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 01:48:41 +0000 (01:48 +0000)]
Allow BuildMI that helps automate construction of SSA information
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4443
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 01:15:31 +0000 (01:15 +0000)]
Set the destination register field based on the target specific flags
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4442
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 01:09:34 +0000 (01:09 +0000)]
Add flag to specify when no value is produced by an instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4441
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 01:07:12 +0000 (01:07 +0000)]
Sparc backend doesn't use target specific flags yet
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4440
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 01:06:53 +0000 (01:06 +0000)]
* Add new "Target Specific Flags" field to instruction descriptor
* Rename iclass to Flags
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4439
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 00:58:19 +0000 (00:58 +0000)]
Use MRegisterInfo, if available, to print symbolic register names
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4438
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 00:56:18 +0000 (00:56 +0000)]
Implement the new optional getRegisterInfo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4437
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 00:53:02 +0000 (00:53 +0000)]
Add new optional getRegisterInfo to TargetMachine
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4436
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 00:48:05 +0000 (00:48 +0000)]
Implement structured machine code printing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4435
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 00:47:49 +0000 (00:47 +0000)]
Print machine code after instruction selection
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4434
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 00:47:40 +0000 (00:47 +0000)]
Make sure to pass the LLVM basic block in
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4433
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 00:46:48 +0000 (00:46 +0000)]
Add support for structured printing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4432
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 30 Oct 2002 00:46:31 +0000 (00:46 +0000)]
Improve comments, add methods for structured printing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4431
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 23:41:11 +0000 (23:41 +0000)]
Jello now builds
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4430
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 23:40:58 +0000 (23:40 +0000)]
Construct annotation, to make sure it's attached to function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4429
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 23:40:30 +0000 (23:40 +0000)]
Add method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4428
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 23:40:03 +0000 (23:40 +0000)]
Make argsize calculation stuff optional, so that Targets without FrameInfo
objects yet don't die
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4427
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 23:19:00 +0000 (23:19 +0000)]
Implement autoinserting ctor
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4426
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 23:18:43 +0000 (23:18 +0000)]
Rename annotation id
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4425
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 23:18:23 +0000 (23:18 +0000)]
Add capability to have machine instruction autoinsert when it is created
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4424
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Tue, 29 Oct 2002 23:06:16 +0000 (23:06 +0000)]
Fix spelling of `propagate'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4423
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Tue, 29 Oct 2002 22:55:11 +0000 (22:55 +0000)]
Fixed spelling of `propagation'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4422
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 22:37:54 +0000 (22:37 +0000)]
Convert backend to use passes, implement X86TargetMachine
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4421
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 22:01:44 +0000 (22:01 +0000)]
These are no longer virtual methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4420
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 22:01:26 +0000 (22:01 +0000)]
Eliminate virtual methods that are sparc specific
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4419
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 21:48:33 +0000 (21:48 +0000)]
* Privatize the TargetName
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4418
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 21:48:17 +0000 (21:48 +0000)]
* Privatize the TargetName
* Move optSizeForSubWordData to TargetData
* Remove unused fields
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4417
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 21:47:50 +0000 (21:47 +0000)]
Implement findOptimalStorageSize a bit more generally
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4416
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 21:12:46 +0000 (21:12 +0000)]
Allow TargetMachine to refuse static code gen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4415
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 21:06:58 +0000 (21:06 +0000)]
Convert jello to use PassManager
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4414
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 21:05:24 +0000 (21:05 +0000)]
Rename X86InstructionInfo to X86InstrInfo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4413
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:51:29 +0000 (20:51 +0000)]
Rename Sparc.h to TargetMachineImpls.h. Add hook for X86 target
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4412
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:51:10 +0000 (20:51 +0000)]
Add hook for JIT compiler
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4411
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:48:56 +0000 (20:48 +0000)]
Minor renaming
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4410
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:48:09 +0000 (20:48 +0000)]
Rename Sparc.h TargetMachineImpls.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4409
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:47:46 +0000 (20:47 +0000)]
Remove unneccesary #includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4408
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:47:26 +0000 (20:47 +0000)]
Rename Sparc.h to TargetMachineImpls.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4407
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:45:04 +0000 (20:45 +0000)]
* Remove explicit strcmp calls
* Rename Sparc.h to TargetMachineImpls.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4406
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:44:18 +0000 (20:44 +0000)]
Move to TargetMachineImpls.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4405
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:29:34 +0000 (20:29 +0000)]
Reenable X86 backend, even though it doesn't do much, at least it compiles
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4404
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:10:58 +0000 (20:10 +0000)]
Merge with sparc backend
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4403
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:10:19 +0000 (20:10 +0000)]
Merge to MachineInstrInfo.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4402
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:07:50 +0000 (20:07 +0000)]
X86 merge complete, eliminate dead code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4401
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 20:07:16 +0000 (20:07 +0000)]
X86 merge is complete, eliminate unused code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4400
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Tue, 29 Oct 2002 19:41:18 +0000 (19:41 +0000)]
Remove separate vector of implicit refs from MachineInstr, and
instead record them as extra operands in the operands[] vector.
Also, move CallArgsDescriptor into this class instead of making it an
annotation on the machine instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4399
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Tue, 29 Oct 2002 19:38:46 +0000 (19:38 +0000)]
Move CallArgsDescriptor into this class instead of making it an
annotation on the machine instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4398
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Tue, 29 Oct 2002 19:37:31 +0000 (19:37 +0000)]
Bug fix: align size for dynamic allocas according to stack pointer
alignment restrictions. This is incomplete for one case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4397
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 17:43:55 +0000 (17:43 +0000)]
Switch to generating machineinstr's instead of MInstructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4396
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 17:43:38 +0000 (17:43 +0000)]
Be compatible with sparc backend
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4395
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 17:43:19 +0000 (17:43 +0000)]
Implement MachineInstrInfo interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4394
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 17:42:40 +0000 (17:42 +0000)]
Switch to different flag set
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4393
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 17:40:30 +0000 (17:40 +0000)]
Move TargetInstrDescriptors extern to the one .cpp file that refers to it:
MachineInstr.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4392
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 17:37:48 +0000 (17:37 +0000)]
Move TargetInstrDescriptors to MachineInstrInfo.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4391
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 17:35:41 +0000 (17:35 +0000)]
*** empty log message ***
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4390
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 29 Oct 2002 17:35:39 +0000 (17:35 +0000)]
Use higher level methods, don't use TargetInstrDescriptors directly!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4389
91177308-0d34-0410-b5e6-
96231b3b80d8