Commit Graph

21789 Commits

Author SHA1 Message Date
Jeff Cohen 4e1515789e Fix VC++ compilation error.
llvm-svn: 25214
2006-01-11 16:21:23 +00:00
Chris Lattner a5287eac4f Patch #9 from Saem:
"Cut up the runPasses method into smaller pieces.  The small private
helpers should  be easier to deal with when code shuffling arising
from creating the new specialised batchers, not to mention, they're
much easier to understand.

I inlined them, in case function call overhead would be noticeable --
doubtful."

llvm-svn: 25213
2006-01-11 16:14:49 +00:00
Chris Lattner 41c7f4a9ce Use Evan's outflag stuff to implement V8cmpicc. This allows us to write a
pattern for SUBCCrr, and makes it trivial to add support for SUBCCri, eliminating
an instruction in the common "setcc X, imm" case.

llvm-svn: 25212
2006-01-11 07:49:38 +00:00
Chris Lattner caf4d92f85 Fix a bug in i32->f64 conversion lowering
llvm-svn: 25211
2006-01-11 07:27:40 +00:00
Chris Lattner d3839c74d6 Unbreak ret void :-/
llvm-svn: 25210
2006-01-11 07:15:43 +00:00
Chris Lattner 8e0bee11e3 Write this pattern in canonical form, allowing more patterns to match.
This implements Regression/CodeGen/SparcV8/xnor.ll

llvm-svn: 25209
2006-01-11 07:14:01 +00:00
Chris Lattner 7e60169a64 catch all forms of xnor
llvm-svn: 25208
2006-01-11 07:13:22 +00:00
Evan Cheng bc7a0f44bd * Add special entry code main() (to set x87 to 64-bit precision).
* Allow a register node as SelectAddr() base.
* ExternalSymbol -> TargetExternalSymbol as direct function callee.
* Use X86::ESP register rather than CopyFromReg(X86::ESP) as stack ptr for
  call parmater passing.

llvm-svn: 25207
2006-01-11 06:09:51 +00:00
Chris Lattner 21f0c31c43 Simple is good. CVS is for revision control, not file headers
llvm-svn: 25206
2006-01-11 05:39:45 +00:00
Chris Lattner 2b84e01ba0 Simple is good
llvm-svn: 25205
2006-01-11 05:38:55 +00:00
Chris Lattner cbfaea0340 Simple is good, CVS log is for history, not the silly credits block
llvm-svn: 25204
2006-01-11 05:38:15 +00:00
Chris Lattner 0770d8e326 Preserve and update ETForest. Patch by Daniel Berlin
llvm-svn: 25203
2006-01-11 05:11:13 +00:00
Chris Lattner cb36710ff9 Switch these to using ETForest instead of DominatorSet to compute itself.
Patch written by Daniel Berlin!

llvm-svn: 25202
2006-01-11 05:10:20 +00:00
Chris Lattner 48e4a2ebd8 Switch this to using ETForest instead of DominatorSet to compute itself.
Patch written by Daniel Berlin!

llvm-svn: 25201
2006-01-11 05:09:40 +00:00
Chris Lattner 88f34be87f Switch loopinfo to using ETForest instead of DominatorSet to compute itself.Patch by Daniel Berlin!
llvm-svn: 25200
2006-01-11 05:08:57 +00:00
Chris Lattner 9db9f8a902 Switch loopinfo to using ETForest instead of DominatorSet to compute itself.
Patch by Daniel Berlin!

llvm-svn: 25199
2006-01-11 05:08:29 +00:00
Duraid Madina 0302e62296 cleanup GETFD
llvm-svn: 25198
2006-01-11 03:50:40 +00:00
Andrew Lenharth 91eda00a7a this pattern was bogus
llvm-svn: 25197
2006-01-11 03:33:06 +00:00
Chris Lattner cefd38b2b5 Regenerate these files. FreeBSD apparently has issues with the version of
lex/bison Rob used.

llvm-svn: 25196
2006-01-11 02:07:51 +00:00
Duraid Madina c712fd6b4e this just might work
llvm-svn: 25195
2006-01-11 01:38:07 +00:00
Chris Lattner 3857f6d067 Emit an error instead of an assertion if trying to do bogus things in result patterns.
llvm-svn: 25194
2006-01-11 01:33:49 +00:00
Duraid Madina 0d5d08b26e add support for selecting bools
FIXME: this is commented out because it makes tblgen go a bit fruity
llvm-svn: 25193
2006-01-11 01:21:12 +00:00
Chris Lattner 7c551268d0 implement FP_REG_KILL insertion for the dag-dag instruction selector
llvm-svn: 25192
2006-01-11 01:15:34 +00:00
Chris Lattner 29852a58b0 Fit into 80 cols
llvm-svn: 25191
2006-01-11 00:46:55 +00:00
Evan Cheng 339edad775 SSE cmov support.
llvm-svn: 25190
2006-01-11 00:33:36 +00:00
Evan Cheng efaf5c56fd * fp to sint patterns.
* fiadd, fisub, etc.

llvm-svn: 25189
2006-01-10 22:22:02 +00:00
Evan Cheng 73a1ad975e FP_TO_INT*_IN_MEM and x87 FP Select support.
llvm-svn: 25188
2006-01-10 20:26:56 +00:00
Robert Bocchino de7f1c9a63 Added constant folding support for the extractelement operation.
llvm-svn: 25187
2006-01-10 20:03:46 +00:00
Chris Lattner 13d1474d43 new testcase for extractelement instruction
llvm-svn: 25186
2006-01-10 20:00:20 +00:00
Chris Lattner 0fb2ae7d17 silence a bogus warning
llvm-svn: 25185
2006-01-10 19:45:18 +00:00
Chris Lattner fb5f46541c silence a warning
llvm-svn: 25184
2006-01-10 19:43:26 +00:00
Robert Bocchino 7e97a6dc59 Expanded the documentation for constant expressions to cover select
and extractelement.

llvm-svn: 25183
2006-01-10 19:31:34 +00:00
Andrew Lenharth 599e73f21c Int immediate loading fix
llvm-svn: 25182
2006-01-10 19:12:47 +00:00
Robert Bocchino 230044839d Added support for the extractelement operation.
llvm-svn: 25181
2006-01-10 19:05:34 +00:00
Robert Bocchino bd518d153b Added lower packed support for the extractelement operation.
llvm-svn: 25180
2006-01-10 19:05:05 +00:00
Robert Bocchino 2c966e7617 Added selection DAG support for the extractelement operation.
llvm-svn: 25179
2006-01-10 19:04:57 +00:00
Robert Bocchino bec39ee4e5 Added bytecode support for the extractelement operation.
llvm-svn: 25178
2006-01-10 19:04:39 +00:00
Robert Bocchino aa1cf5440e Added lexer and parser support for the extractelement operation.
llvm-svn: 25177
2006-01-10 19:04:32 +00:00
Robert Bocchino 4dc697098e Added an instruction and constant expression for the extractelement
operation.

llvm-svn: 25176
2006-01-10 19:04:13 +00:00
Reid Spencer 25780d5eac For PR411:
First step in refactoring the SymbolTable is to split it into two classes,
one for a symbol table of types and one for a symbol table of Values.

llvm-svn: 25175
2006-01-10 09:51:48 +00:00
Reid Spencer 0a4e8c7be8 Make ValueSymbolTable (temporarily) a friend of Value so it can mod the
Name of Value instances.

llvm-svn: 25174
2006-01-10 09:45:57 +00:00
Chris Lattner b05fce676f Minor cleanup, no functionality change for current targets
llvm-svn: 25173
2006-01-10 05:41:59 +00:00
Duraid Madina 014e8ee806 heh, 'sif it'd be a legalizer bug.
llvm-svn: 25172
2006-01-10 05:26:01 +00:00
Duraid Madina e977a93bd5 support functions that return bool (this "should" work but doesn't,
*maybe* due to a legalizer bug.)

llvm-svn: 25171
2006-01-10 05:08:25 +00:00
Reid Spencer cfc60f3484 Remove unused inclusion of SymbolTable.h
llvm-svn: 25170
2006-01-10 03:48:34 +00:00
Reid Spencer 5995c57574 For PR521:
With these patches we implement the ability for the Linker library to
keep track of which libraries were actually bytecode files (not archives)
and cause their users to remove such files from the list of libraries to
pass to the native linker.

llvm-svn: 25169
2006-01-10 03:14:40 +00:00
Reid Spencer 8097c0a0d9 Be a little more explanatory in a comment.
llvm-svn: 25168
2006-01-10 03:12:29 +00:00
Nate Begeman 477933cfbd Remove a comment that no longer applies.
llvm-svn: 25167
2006-01-10 00:15:59 +00:00
Chris Lattner 347ed8a581 Give PPCISD:: nodes legible names in dumps.
llvm-svn: 25166
2006-01-09 23:52:17 +00:00
Chris Lattner 90ba544826 Fix an exponential function in libcall insertion to not be exponential. :)
llvm-svn: 25165
2006-01-09 23:21:49 +00:00