Jim Laskey [Wed, 4 Jan 2006 22:28:25 +0000 (22:28 +0000)]
Applied some recommend changes from sabre. The dominate one beginning "let the
pass manager do it's thing." Fixes crash when compiling -g files and suppresses
dwarf statements if no debug info is present.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25100
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Wed, 4 Jan 2006 17:21:23 +0000 (17:21 +0000)]
Be consistent in using class vs struct to make VC++ happy. And as it contains
methods, virtual method even, class wins.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25098
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Wed, 4 Jan 2006 17:19:48 +0000 (17:19 +0000)]
Teach Visual Studio about new file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25097
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 15:04:11 +0000 (15:04 +0000)]
Add unique id to debug location for debug label use (work in progress.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25096
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 14:30:12 +0000 (14:30 +0000)]
Add check for debug presence.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25095
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 14:29:26 +0000 (14:29 +0000)]
Add flag for debug presence.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25094
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 13:52:30 +0000 (13:52 +0000)]
Tie dwarf generation to darwin assembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25093
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 13:46:37 +0000 (13:46 +0000)]
1. Make MachineDebugInfo a pass.
2. Add label uniquing code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25092
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 13:44:43 +0000 (13:44 +0000)]
Move MachineDebugInfo to module level location.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25091
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 13:43:56 +0000 (13:43 +0000)]
Moving MachineDebugInfo to module level location.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25090
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 13:42:59 +0000 (13:42 +0000)]
Change how MachineDebugInfo is fetched.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25089
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 13:42:02 +0000 (13:42 +0000)]
Adding MachineDebugInfo as a immutable pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25088
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 13:37:32 +0000 (13:37 +0000)]
Adding new files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25087
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 4 Jan 2006 13:36:38 +0000 (13:36 +0000)]
Extending MachineDebugInfo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25086
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 07:47:13 +0000 (07:47 +0000)]
Patch #6's in Saem's refactor-the-passmanager patch series. From him:
This sanitises the world, blows away the specialisations and adds
traits per passmanager type -- seemed most natural.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25085
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 07:29:33 +0000 (07:29 +0000)]
add a comment that I should have written a long time ago
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25084
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 07:12:21 +0000 (07:12 +0000)]
Add support for targets (like Alpha) that have terminator instructions which
use virtual registers. We now allow the first instruction in a block of
terminators to use virtual registers, and update phi elimination to correctly
update livevar when eliminating phi's. This fixes a problem on a testcase
Andrew sent me.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25083
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Wed, 4 Jan 2006 06:51:22 +0000 (06:51 +0000)]
Update list of supported bisons.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25082
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 06:47:48 +0000 (06:47 +0000)]
Add an assertion, update DefInst even though no one uses it (dangling pointers
don't help anyone)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25081
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 05:40:30 +0000 (05:40 +0000)]
Add a LiveVariables::VarInfo::dump method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25080
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 05:39:51 +0000 (05:39 +0000)]
add a dump method to help debugging
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25079
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 05:02:04 +0000 (05:02 +0000)]
Saem's patch #5 of the passmanager refactoring
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25078
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 04:36:11 +0000 (04:36 +0000)]
patch #4 in Saem's passmanager refactoring.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25077
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Wed, 4 Jan 2006 03:23:30 +0000 (03:23 +0000)]
Replace fix with one less disruptive to the original code.
Also note that GCC 4.1 also correctly flags the syntax error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25076
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Wed, 4 Jan 2006 03:15:19 +0000 (03:15 +0000)]
Tblgen was generating syntactically illegal C++ code like:
SDOperand Tmp0,Tmp1,Tmp2,Tmp3,;
GCC has a bug (24907) in which is fails to catch this, but VC++ correctly
notes its illegality, so tblgen must be taught to only generate legal C++.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25075
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 02:20:54 +0000 (02:20 +0000)]
implement constant folding of ==/!= on constant packed, simplify some code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25074
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 02:15:02 +0000 (02:15 +0000)]
implement constant folding for the element-wise binary operations
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25073
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 02:03:29 +0000 (02:03 +0000)]
don't crash when trying to constant fold packed expressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25072
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 01:01:04 +0000 (01:01 +0000)]
Fix an assertion to allow constant folding of packed values
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25071
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 00:32:01 +0000 (00:32 +0000)]
Remove obsolete comment, make things look a bit nicer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25070
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 4 Jan 2006 00:25:00 +0000 (00:25 +0000)]
reduce stack usage of the recursive SelectCode function by out-lining each
case of the switch statement into its own method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25069
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 3 Jan 2006 22:55:16 +0000 (22:55 +0000)]
Remove my previous ugly hack that tries to reduce the stack space usage
of SelectCode to make way for a better solution.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25068
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 3 Jan 2006 19:13:17 +0000 (19:13 +0000)]
Pull inline methods out of the pass class definition to make it easier to
read the code.
Do not internalize debugger anchors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25067
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 3 Jan 2006 17:52:18 +0000 (17:52 +0000)]
silence some warnings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25066
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Tue, 3 Jan 2006 14:42:06 +0000 (14:42 +0000)]
Happy New Year, LLVM.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25065
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 3 Jan 2006 07:41:37 +0000 (07:41 +0000)]
Change a variable from being an iterator to a raw MachineInstr*, to make
GDB use tolerable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25064
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 3 Jan 2006 07:05:17 +0000 (07:05 +0000)]
Finally commit Saem's 'patch #3' to refactor the pass manager
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25063
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 3 Jan 2006 06:05:22 +0000 (06:05 +0000)]
Make the -print-alias-sets pass work for printing out something other than
the default aa impl results.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25062
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 3 Jan 2006 06:04:48 +0000 (06:04 +0000)]
update usage of -print-alias-sets
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25061
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Mon, 2 Jan 2006 21:15:53 +0000 (21:15 +0000)]
typeo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25060
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 1 Jan 2006 22:20:31 +0000 (22:20 +0000)]
Remove a 'using namespace std'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25059
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sun, 1 Jan 2006 22:16:43 +0000 (22:16 +0000)]
Add support for brcond
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25058
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sun, 1 Jan 2006 22:16:14 +0000 (22:16 +0000)]
Move brcond over and fix some imm patterns. This may be the last change before changing the default alpha isel.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25057
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sun, 1 Jan 2006 22:14:31 +0000 (22:14 +0000)]
Change this regression so andi is not a valid codegen of it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25056
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sun, 1 Jan 2006 22:13:54 +0000 (22:13 +0000)]
clean this function up some
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25055
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 1 Jan 2006 21:59:22 +0000 (21:59 +0000)]
Add a section about using namespaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25054
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 30 Dec 2005 20:00:46 +0000 (20:00 +0000)]
Patch #1 of Saem Ghani's Pass Manager refactoring. From the man:
"All this should do is create what will eventually be the specialised
passmanagers. Currently, the templates are inheriting them, once the
template specialisations' methods have been absorbed, patches
submitted method by method. I'll nuke the specialisations and have
the new objects inherit directly from passmanagert, and sanitise the
world of all references to templates.
"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25053
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Fri, 30 Dec 2005 16:41:48 +0000 (16:41 +0000)]
HP-UX DVDs are crunchy and good to eat
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25052
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Fri, 30 Dec 2005 14:56:37 +0000 (14:56 +0000)]
almost got the HP-UX tester up.. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25051
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 30 Dec 2005 09:07:29 +0000 (09:07 +0000)]
Revert removal of std:: prefixes and addtion of "using namespace std;".
This violates the LLVM coding standards.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25050
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Fri, 30 Dec 2005 02:50:44 +0000 (02:50 +0000)]
don't need this anymore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25049
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Fri, 30 Dec 2005 02:47:21 +0000 (02:47 +0000)]
delete file portably
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25048
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Fri, 30 Dec 2005 02:30:02 +0000 (02:30 +0000)]
improve constant loading. Still sucks, but oh well
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25047
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 30 Dec 2005 00:12:56 +0000 (00:12 +0000)]
Add support for generating v4i32 altivec code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25046
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 30 Dec 2005 00:11:07 +0000 (00:11 +0000)]
Remove a fixme
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25045
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 30 Dec 2005 00:10:38 +0000 (00:10 +0000)]
Make sure to pass the offset into the new node, so that we don't silently
drop it on the floor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25044
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 30 Dec 2005 00:09:56 +0000 (00:09 +0000)]
add support for generating v4i32 code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25043
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 29 Dec 2005 21:13:45 +0000 (21:13 +0000)]
General cleanup:
1. Don't mix C++ and C standard I/O, convert to C++ iostreams
2. Wrap long lines
3. use the std namespace to simplify/shorten the code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25042
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Thu, 29 Dec 2005 05:59:19 +0000 (05:59 +0000)]
purity++
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25041
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Thu, 29 Dec 2005 01:06:12 +0000 (01:06 +0000)]
let us get some do what I meant not what I said stuff checked in. You would think the alpha backend would be 64bit clean
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25040
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Thu, 29 Dec 2005 00:50:08 +0000 (00:50 +0000)]
Fix up immediate handling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25039
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Wed, 28 Dec 2005 06:58:12 +0000 (06:58 +0000)]
ditto
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25038
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Wed, 28 Dec 2005 06:56:09 +0000 (06:56 +0000)]
more compliance stufff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25037
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Wed, 28 Dec 2005 06:47:33 +0000 (06:47 +0000)]
be more polite in public headers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25036
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Wed, 28 Dec 2005 06:29:38 +0000 (06:29 +0000)]
undo yuletide naughtyness(tm)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25035
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Wed, 28 Dec 2005 06:29:02 +0000 (06:29 +0000)]
add these so I can be less naughty
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25034
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Wed, 28 Dec 2005 05:56:36 +0000 (05:56 +0000)]
behold my standards-compliant humps!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25033
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Wed, 28 Dec 2005 05:48:55 +0000 (05:48 +0000)]
WAKEY WAKEY
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25032
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Wed, 28 Dec 2005 04:55:42 +0000 (04:55 +0000)]
HB is *the* code janitor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25031
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Wed, 28 Dec 2005 02:44:35 +0000 (02:44 +0000)]
mixed-STL programs are big and nasty :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25030
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Tue, 27 Dec 2005 10:56:22 +0000 (10:56 +0000)]
This gets most of the backends building with HP HappyC++.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25029
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Tue, 27 Dec 2005 10:40:34 +0000 (10:40 +0000)]
yet more C++ standards-compliance stuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25028
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Tue, 27 Dec 2005 10:17:03 +0000 (10:17 +0000)]
nasty paste-o, calls passing more than 8 arguments along were having
args >8 put into the wrong place
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25027
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Tue, 27 Dec 2005 06:25:50 +0000 (06:25 +0000)]
Restore some happiness to the JIT
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25026
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Tue, 27 Dec 2005 03:53:58 +0000 (03:53 +0000)]
Fix alpha regressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25025
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 27 Dec 2005 03:02:18 +0000 (03:02 +0000)]
Fix a problem duraid pointed out to me compiling kc++ with -enable-x86-fastcc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25024
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 14:31:26 +0000 (14:31 +0000)]
more C++ daintiness
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25023
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 14:23:22 +0000 (14:23 +0000)]
I bet pinski knows why g++ accepts this stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25022
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 13:48:44 +0000 (13:48 +0000)]
getting there...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25021
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 13:34:00 +0000 (13:34 +0000)]
more standards compliance (damn, I can't wait for unordered_set (tee hee)
and unordered_map to make it into the standard)
Hurry up, JTC1 SC22 WG21 Library Working Group!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25020
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 10:34:38 +0000 (10:34 +0000)]
I laugh at your dual-core G5s! Fear my precompiled headers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25019
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 10:24:15 +0000 (10:24 +0000)]
dum de dum
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25018
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 26 Dec 2005 09:11:45 +0000 (09:11 +0000)]
Added field noResults to Instruction.
Currently tblgen cannot tell which operands in the operand list are results so
it assumes the first one is a result. This is bad. Ideally we would fix this
by separating results from inputs, e.g. (res R32:$dst),
(ops R32:$src1, R32:$src2). But that's a more distruptive change. Adding
'let noResults = 1' is the workaround to tell tblgen that the instruction does
not produces a result. It works for now since tblgen does not support
instructions which produce multiple results.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25017
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 08:36:53 +0000 (08:36 +0000)]
i love xmas!!!! *;D*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25016
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 08:35:06 +0000 (08:35 +0000)]
more HP-UX cleanliness
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25015
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 05:08:55 +0000 (05:08 +0000)]
more standards-compliance stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25014
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 05:00:25 +0000 (05:00 +0000)]
HP aCC chokes on this, but it's not required anyway: according to
the bzip2 homepage, only ancient (gcc 2.7.x ?) versions of GCC
require this? It certainly isn't needed for the current bzip2
sources.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25013
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Mon, 26 Dec 2005 04:56:16 +0000 (04:56 +0000)]
MERRY CHRISTMAS EVERYONE!!! (what better way to spend christmas than
to try building LLVM on HP-UX! (the Right Way seems to be to tear out
the ancient STL that HP ship and use http://incubator.apache.org/stdcxx/ )
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25012
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sun, 25 Dec 2005 17:36:48 +0000 (17:36 +0000)]
add br pattern, unify JSR and BSR ISel instrs, and add BSR support for DAG
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25011
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Sun, 25 Dec 2005 14:09:08 +0000 (14:09 +0000)]
unbreak calls, a few more tests should run. Tomorrow: bugpoint!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25010
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Sun, 25 Dec 2005 14:07:01 +0000 (14:07 +0000)]
we don't feed our call instructions extra operands
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25009
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sun, 25 Dec 2005 01:34:27 +0000 (01:34 +0000)]
All that just to lower div and rem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25008
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sun, 25 Dec 2005 01:07:37 +0000 (01:07 +0000)]
allow custom lowering to return null for legal results
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25007
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sat, 24 Dec 2005 23:42:32 +0000 (23:42 +0000)]
Support Custom lowering of a few more operations.
Alpha needs to custom lower *DIV and *REM
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25006
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sat, 24 Dec 2005 23:36:59 +0000 (23:36 +0000)]
support targetexternalsym
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25005
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 24 Dec 2005 09:48:35 +0000 (09:48 +0000)]
Let the helper functions know about X86::FR32RegClass and X86::FR64RegClass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25004
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sat, 24 Dec 2005 08:29:32 +0000 (08:29 +0000)]
All addressing modes are now exposed. The only remaining relocated forms
are for function prologue.
TODO: move external symbols over to using RelLit.
: have a pattern that matches constpool|globaladdr
: have a pattern that matches (add x imm) -> x, imm or (...) -> ..., 0
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25003
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sat, 24 Dec 2005 07:34:33 +0000 (07:34 +0000)]
Unify the patterns for loads and stores. Now offset addressing should be
supported. This almost completes memory operations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25002
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sat, 24 Dec 2005 05:36:33 +0000 (05:36 +0000)]
Let's see if we can break things.
Lower GOT relative addresses to Lo and HI.
Update both ISels to select them when they can.
Saves instructions here and there.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25001
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Sat, 24 Dec 2005 03:41:56 +0000 (03:41 +0000)]
move loads and stores over. Smart addr selection comming
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25000
91177308-0d34-0410-b5e6-
96231b3b80d8