Chris Lattner [Mon, 16 Aug 2004 05:38:02 +0000 (05:38 +0000)]
Fix a bug that caused the pass to go into infinite loops on trivial testcases.
This is fallout of the Bug 122 changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15811
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Aug 2004 05:09:58 +0000 (05:09 +0000)]
There is no need for a cast here
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15810
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Mon, 16 Aug 2004 05:06:43 +0000 (05:06 +0000)]
Update the current state of the world
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15809
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Mon, 16 Aug 2004 02:12:49 +0000 (02:12 +0000)]
Fix typo of the word 'implicit' I made resolving a CVS conflict. Whoops!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15808
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Mon, 16 Aug 2004 01:52:12 +0000 (01:52 +0000)]
Fix frame pointer handling:
Reserve R0 in store/load from stack slot for building >32k offsets from SP
or FP. This also requires we use R11 rather than R0 for holding the LR
value we want to save or restore. Also, tell the register allocator not
to use R31 (our FP) in functions that have a frame pointer. These changes
fix Burg.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15807
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Mon, 16 Aug 2004 01:50:22 +0000 (01:50 +0000)]
Fix mismatched adjust down/up of SP in functions that contain variable
sized allocas.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15806
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Aug 2004 01:10:21 +0000 (01:10 +0000)]
Use CodeGenRegister class to make reading in of register information more
systematic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15805
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Aug 2004 01:09:52 +0000 (01:09 +0000)]
Add initial support for register and register class representation.
Obviously this is not done.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15804
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Aug 2004 01:07:53 +0000 (01:07 +0000)]
Flags and TSFlags were (thankfully) never used, so remove them. But wait,
not so fast, add some fields for spill slot size and alignment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15803
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Aug 2004 01:07:04 +0000 (01:07 +0000)]
Add a special case for argc,argv
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15802
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Aug 2004 01:05:35 +0000 (01:05 +0000)]
Don't pass too many arguments into runFunction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15801
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Aug 2004 00:20:18 +0000 (00:20 +0000)]
Scrub all LLVM 1.3 stuff, changing over to 1.4. Add info about PR419,
which is now fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15800
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 16 Aug 2004 00:14:18 +0000 (00:14 +0000)]
Finally, add support for calling arbitrary non-varargs functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15799
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:53:06 +0000 (23:53 +0000)]
Handle all nullary functions, of any valid return type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15798
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:39:59 +0000 (23:39 +0000)]
Fine, go all of the way and check that the argument types are correct as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15797
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:34:48 +0000 (23:34 +0000)]
These only really work if returning int or void
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15796
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:31:57 +0000 (23:31 +0000)]
Switch to using the JIT now that it can directly call zeroarg functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15795
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:31:43 +0000 (23:31 +0000)]
Handle zero arg function case
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15794
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:29:50 +0000 (23:29 +0000)]
Simplify code a bit, print error message always instead of asserting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15793
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:21:54 +0000 (23:21 +0000)]
Simplify code, make it print the constructed module before it is run.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15792
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:07:40 +0000 (23:07 +0000)]
V8 never used the instrselectorgenerator
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15791
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:04:35 +0000 (23:04 +0000)]
isdummyclass goes away
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15790
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:04:13 +0000 (23:04 +0000)]
Remove awareness of isDummyClass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15789
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:02:34 +0000 (23:02 +0000)]
disable all of the pattern isel stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15788
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 23:02:17 +0000 (23:02 +0000)]
Disable the pattern isel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15787
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:54:31 +0000 (22:54 +0000)]
Include .td and .txt files in the greps. This will allow me to find symbols in
them, and also count them in the LOC of LLVM for the nightly tester.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15786
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:53:20 +0000 (22:53 +0000)]
Documentation like this doesn't belong here, and now we have the commandguide
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15785
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:23:09 +0000 (22:23 +0000)]
Reduce usage of MRegisterInfo::getRegClass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15784
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:19:38 +0000 (22:19 +0000)]
Add new TargetRegisterClass::contains method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15783
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:15:56 +0000 (22:15 +0000)]
Insertion methods now return void instead of #instrs inserted. Also, use
more powerful forms of BuildMI to concisify the code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15782
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:15:30 +0000 (22:15 +0000)]
Code insertion methods now return void instead of #instrs inserted
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15781
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:15:11 +0000 (22:15 +0000)]
Code insertion methods now return void instead of an int.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15780
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:14:31 +0000 (22:14 +0000)]
The insertion method returns void now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15779
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:14:19 +0000 (22:14 +0000)]
Implement a long overdue FIXME, by changing these methods to return void.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15778
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:03:57 +0000 (22:03 +0000)]
Nuke ifdef'd out code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15777
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:02:36 +0000 (22:02 +0000)]
Remove helper method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15776
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 22:02:22 +0000 (22:02 +0000)]
Stop using CreateStackObject(RegClass*)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15775
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 21:56:44 +0000 (21:56 +0000)]
These methods no longer take a TargetRegisterClass* operand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15774
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 21:55:29 +0000 (21:55 +0000)]
Eliminate the RegisterClass argument, since it can easily be derived from
the regno
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15773
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sun, 15 Aug 2004 09:18:55 +0000 (09:18 +0000)]
Make this compile on gc 3.4.1 (static_cast to non-const type was not
allowed).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15766
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 15 Aug 2004 08:19:46 +0000 (08:19 +0000)]
More Functionality:
- cleaned up lexical scanner
- added support for "lang.optN" configuration items
- added temporary file support (ala lib/System)
- corrected logic for deciding which phases to run
- consolidated the Action and ActionPattern classes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15765
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 15 Aug 2004 08:16:12 +0000 (08:16 +0000)]
Initial configuration files (to be installed) for ll (LLVM Assembly) and
st (Stacker) source files. These versions for testing/review only.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15764
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 15 Aug 2004 08:14:33 +0000 (08:14 +0000)]
Initial implementations of the ErrorCode and Path concepts for Linux.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15763
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 15 Aug 2004 08:13:01 +0000 (08:13 +0000)]
First version of a class to represent the notion of an operating system
path to a file or directory and some rudimentary operations on them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15762
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 15 Aug 2004 08:12:14 +0000 (08:12 +0000)]
First version of a class to represent operating system and lib/System
error codes in a platform independent way.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15761
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sun, 15 Aug 2004 06:43:10 +0000 (06:43 +0000)]
Add future optimization opportunity
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15760
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sun, 15 Aug 2004 06:42:28 +0000 (06:42 +0000)]
Fix float to int codepath by always allocating 8 bytes for the target of a double store; optimize cmplwi generation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15759
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 05:48:47 +0000 (05:48 +0000)]
Zimm16 is now dead. Its entry is not removed from the enum, to avoid having
to renumber everything. Similar elimination should be applied to other
operand enum values that are only used to format printing in the .s file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15755
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 05:46:14 +0000 (05:46 +0000)]
Convert all of the DForm_6* operations, which makes all of the Zimm16 users
dead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15754
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 05:37:00 +0000 (05:37 +0000)]
Add i1imm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15753
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 05:31:15 +0000 (05:31 +0000)]
Reenable the CCRC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15752
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 15 Aug 2004 05:20:16 +0000 (05:20 +0000)]
Convert the DForm_4 over to the asmprintergen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15751
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sun, 15 Aug 2004 00:31:02 +0000 (00:31 +0000)]
Remove dead code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15750
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 14 Aug 2004 23:27:29 +0000 (23:27 +0000)]
Print mflr using the asmwriter generator
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15749
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 14 Aug 2004 22:57:22 +0000 (22:57 +0000)]
Update to no longer take MF as an argument
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15748
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 14 Aug 2004 22:50:53 +0000 (22:50 +0000)]
Make the AsmWriter a first-class tblgen object. Allow targets to specify
name of the generated asmwriter class, and the name of the format string.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15747
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 14 Aug 2004 22:16:36 +0000 (22:16 +0000)]
Replace PowerPCPEI.cpp with target independant PrologEpilogInserter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15746
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 14 Aug 2004 22:13:58 +0000 (22:13 +0000)]
Add support for frame pointers, and large offsets from stack and frame pointers. Adopt elimination of MachineFunction& arg from eliminateFrameIndex.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15745
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Sat, 14 Aug 2004 22:13:33 +0000 (22:13 +0000)]
Use the `tools-only' target to avoid getting warnings about not having a CFE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15744
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 14 Aug 2004 22:12:20 +0000 (22:12 +0000)]
Add indexed forms of load doubleword and load word algebraic for 64 bit targets
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15743
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 14 Aug 2004 22:11:38 +0000 (22:11 +0000)]
Fix handling of FP constants with single precision, and loading of internal linkage function addresses
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15742
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 14 Aug 2004 22:09:10 +0000 (22:09 +0000)]
Add initial support for using the generated asm writer. Also, fix FP constant printing to always print 8 byte intializers. Move printing of LinkOnce stubs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15741
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 14 Aug 2004 22:06:38 +0000 (22:06 +0000)]
Add generation of asm writer from tablegen files to Makefile
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15740
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 14 Aug 2004 22:05:10 +0000 (22:05 +0000)]
Eliminate MachineFunction& argument from eliminateFrameIndex in x86 Target. Get MachineFunction from MachineInstruction's parent's parent
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15739
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 14 Aug 2004 22:03:29 +0000 (22:03 +0000)]
Eliminate MachineFunction& argument from eliminateFrameIndex in SparcV9 target
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15738
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 14 Aug 2004 22:01:38 +0000 (22:01 +0000)]
Eliminate MachineFunction& argument from eliminateFrameIndex in Skeleton target
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15737
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 14 Aug 2004 22:00:10 +0000 (22:00 +0000)]
Elminiate MachineFunction& argument from eliminateFrameIndex
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15736
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 14 Aug 2004 20:57:17 +0000 (20:57 +0000)]
Implement test/Regression/Transforms/GlobalConstifier/phi-select.llx
This allows more globals to be marked constant, particularly global arrays.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15735
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 14 Aug 2004 20:47:56 +0000 (20:47 +0000)]
New testcase that the constifier should handle
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15734
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 14 Aug 2004 20:44:09 +0000 (20:44 +0000)]
New basic testcase for the constifier
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15733
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 14 Aug 2004 09:37:15 +0000 (09:37 +0000)]
Converted to use flex for tokenizing input so we can use an easier to
understand recursive descent parser, we can easily handle more syntax
variety, and we can more easily change the configuration items accepted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15732
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 13 Aug 2004 20:25:54 +0000 (20:25 +0000)]
Fix header commentary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15729
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 13 Aug 2004 20:22:43 +0000 (20:22 +0000)]
Additional functionality. This version handles option parsing and parameter
subsitution correctly for at least .ll and .st files. There's still a long
way to go (i.e. this isn't worth of review yet).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15728
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 13 Aug 2004 20:21:22 +0000 (20:21 +0000)]
First version of a utility internal to llvmc that handles the parsing and
construction of configuration data for compiler front ends.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15727
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 13 Aug 2004 20:19:14 +0000 (20:19 +0000)]
Added description of usage of the getPosition() option on cl::opt and
cl::list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15726
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 13 Aug 2004 19:47:30 +0000 (19:47 +0000)]
Allow any cl::opt to use the method getPosition() to retrieve the option's
absolute position on the command line. Similarly allow any cl::list to
use the method getPosition(n) to retrieve the absolute position of the nth
option in the list. This provides support for two things: (a) options like
-l that are actually positional and their order of occurrence matters when
they are intermixed with positional arguments like "a.o"; and (b) options
like -x LANG which affect only the positional arguments that come after
the option. In both cases, knowing the absolute position of a given option
helps.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15725
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 13 Aug 2004 09:33:17 +0000 (09:33 +0000)]
Remove an unneeded header and forward declaration
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15722
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 13 Aug 2004 09:32:01 +0000 (09:32 +0000)]
Fix siod by switching BoolTy to byte rather than int until CFE changes for
Darwin. Also, change asm printer to output proper stubs for external
functions whose address is passed as an argument to aid in bugpointing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15721
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 13 Aug 2004 04:45:14 +0000 (04:45 +0000)]
Fix 177.mesa compilation, don't use floating point regs for base addresses!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15720
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 13 Aug 2004 03:56:49 +0000 (03:56 +0000)]
Fix llc crasher compiling siod by giving BuildMI the correct number of arguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15719
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Aug 2004 03:27:48 +0000 (03:27 +0000)]
Add another test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15718
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Aug 2004 03:27:07 +0000 (03:27 +0000)]
If we are extracting a block that has multiple successors that are the same
block (common in a switch), make sure to remove extra edges in successor
blocks. This fixes CodeExtractor/2004-08-12-BlockExtractPHI.ll and should
be pulled into LLVM 1.3 (though the regression test need not be, as that
would require pulling in the LoopExtract.cpp changes).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15717
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Aug 2004 03:17:39 +0000 (03:17 +0000)]
When we code extract some stuff, leave the codeRepl block in the place where
the extracted code was, instead of putting it at the end of the function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15716
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Aug 2004 03:08:54 +0000 (03:08 +0000)]
New testcase, which causes the block extractor to barf
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15715
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Aug 2004 03:05:17 +0000 (03:05 +0000)]
"extract" the block extractor pass from bugpoint (haha)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15714
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Aug 2004 03:03:44 +0000 (03:03 +0000)]
Add a pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15713
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Aug 2004 02:43:19 +0000 (02:43 +0000)]
Add value mapper support for select constant exprs. This should fix a bug
Nate ran into when bugpointing siod. This fix should go into LLVM 1.3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15712
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 13 Aug 2004 02:20:47 +0000 (02:20 +0000)]
Longs are in one register on PowerPC 64; use appropriate instructions to operate on them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15711
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 13 Aug 2004 02:19:26 +0000 (02:19 +0000)]
Add some more 64 bit instructions we need for the PowerPC-64 ISel to the tablegen files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15710
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 12 Aug 2004 20:16:08 +0000 (20:16 +0000)]
Wrap long lines and try to fill the 80 chars per line so that we don't have too
many short lines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15706
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 12 Aug 2004 19:58:43 +0000 (19:58 +0000)]
* Escape &, <, and >
* Wrap code in <tt> or for larger blocks, <div class="doc_text">
* Wrap lines at 80 cols
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15705
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Aug 2004 19:12:28 +0000 (19:12 +0000)]
Add description of packed type support.
Patch contributed by Brad Jones!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15704
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Aug 2004 19:06:24 +0000 (19:06 +0000)]
Add information on adding a derived type to LLVM, patch contributed by
Brad Jones!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15703
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Aug 2004 19:01:55 +0000 (19:01 +0000)]
Allow targets to specify particular stack slots that certain physregs must
be spilled into.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15702
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Aug 2004 19:01:14 +0000 (19:01 +0000)]
Split saveCallerSavedRegisters into two methods for clarity, and add comments.
Add support for targets that must spill certain physregs at certain locations.
Patch contributed by Nate Begeman, slightly hacked by me.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15701
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Aug 2004 18:37:15 +0000 (18:37 +0000)]
Remove dead methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15698
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Aug 2004 18:36:28 +0000 (18:36 +0000)]
Fix warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15697
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Aug 2004 18:29:05 +0000 (18:29 +0000)]
Instead of a virtual method call, lets try a direct constant reference
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15696
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Aug 2004 18:20:55 +0000 (18:20 +0000)]
Virtual method calls are overrated
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15695
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Aug 2004 18:20:41 +0000 (18:20 +0000)]
Virtual method calls are overrated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15694
91177308-0d34-0410-b5e6-
96231b3b80d8