Commit Graph

16946 Commits

Author SHA1 Message Date
Chris Lattner 8ea875fb05 Fix handling of dead PHI nodes.
llvm-svn: 19349
2005-01-07 21:34:19 +00:00
Chris Lattner f025d6788c Fix a bug legalizing calls
llvm-svn: 19348
2005-01-07 21:34:13 +00:00
Chris Lattner 44b30c9abb modernize and clean up this test.
llvm-svn: 19347
2005-01-07 21:15:58 +00:00
Chris Lattner 473825ccec After legalizing a DAG, delete dead nodes to save space.
llvm-svn: 19346
2005-01-07 21:09:37 +00:00
Chris Lattner 9c667933c1 Implement RemoveDeadNodes
llvm-svn: 19345
2005-01-07 21:09:16 +00:00
Chris Lattner 49811fcab6 Add a new SelectionDAG::RemoveDeadNodes method
llvm-svn: 19344
2005-01-07 21:08:55 +00:00
Jeff Cohen 86bbb1c56b Fix include. Too easy to make mistakes like this on Windows :(
llvm-svn: 19343
2005-01-07 19:21:49 +00:00
Chris Lattner 6edb4d7b71 Remove the open projects page from the docs directory.
llvm-svn: 19342
2005-01-07 18:57:33 +00:00
Misha Brukman a9ade831b6 Capitalize Bugpoint.
llvm-svn: 19341
2005-01-07 17:00:44 +00:00
Jeff Cohen 39c14e7bca Get new SelectionDAG stuff building with Visual Studio.
llvm-svn: 19340
2005-01-07 15:52:36 +00:00
Chris Lattner ec3fe7c4a8 Teach legalize how to handle condbranches
llvm-svn: 19339
2005-01-07 08:19:42 +00:00
Chris Lattner 001467a08c Add a testcase I forgot to commit earlier.
llvm-svn: 19338
2005-01-07 07:56:08 +00:00
Chris Lattner 1ef74d6135 X86 BE requires SelectionDAG
llvm-svn: 19337
2005-01-07 07:51:25 +00:00
Chris Lattner 28ce94ce85 X86 JIT requires the selection dag library.
llvm-svn: 19336
2005-01-07 07:51:11 +00:00
Chris Lattner ca4ca5520b Allow the selection-dag based selector to be diabled with -disable-pattern-isel.
For now, this is the default, as the current selector is missing some big pieces.
To enable the new selector, pass -disable-pattern-isel=false to llc or lli.

llvm-svn: 19335
2005-01-07 07:50:50 +00:00
Chris Lattner 88c8a23891 Reimplementation of the X86 pattern isel. This is still missing many large
pieces, but can already do amazing things in some cases.

llvm-svn: 19334
2005-01-07 07:49:41 +00:00
Chris Lattner ce413c8c9f This file is now dead.
llvm-svn: 19333
2005-01-07 07:49:05 +00:00
Chris Lattner ff9e21c8d3 Add a new prototype
llvm-svn: 19332
2005-01-07 07:48:33 +00:00
Chris Lattner 7a60d91953 Initial implementation of the SelectionDAGISel class. This contains most
of the code for lowering from LLVM code to a SelectionDAG.

llvm-svn: 19331
2005-01-07 07:47:53 +00:00
Chris Lattner f8ba6987a4 This file is obsolete
llvm-svn: 19330
2005-01-07 07:47:23 +00:00
Chris Lattner dc75059005 Initial implementation of the DAG legalization. This still has a long way
to go, but it does work for some non-trivial cases now.

llvm-svn: 19329
2005-01-07 07:47:09 +00:00
Jeff Cohen 510fa4bbf8 But not the identation of THAT line
llvm-svn: 19328
2005-01-07 07:46:40 +00:00
Chris Lattner 061a1ea9e3 Complete rewrite of the SelectionDAG class.
llvm-svn: 19327
2005-01-07 07:46:32 +00:00
Chris Lattner 56cc54f416 Common base class for SelectionDAG-based instruction selectors.
llvm-svn: 19326
2005-01-07 07:46:03 +00:00
Chris Lattner 78551084ef Initial implementation of the nodes in a SelectionDAG.
llvm-svn: 19325
2005-01-07 07:45:27 +00:00
Chris Lattner 3a4d1b2721 First draft of new Target interface
llvm-svn: 19324
2005-01-07 07:44:53 +00:00
Chris Lattner 09b37583a4 First draft of a new Target interface
llvm-svn: 19323
2005-01-07 07:44:22 +00:00
Jeff Cohen 70e3e10aa4 Correct indentation levels
llvm-svn: 19322
2005-01-07 07:44:02 +00:00
Chris Lattner 07b522d106 Add convenience method.
llvm-svn: 19321
2005-01-07 07:40:32 +00:00
Misha Brukman 417ca179a9 Convert tabs to spaces
llvm-svn: 19320
2005-01-07 07:05:34 +00:00
Jeff Cohen 9a7ac16214 Add missing createXxxPass functions
llvm-svn: 19319
2005-01-07 06:57:28 +00:00
Jeff Cohen d97ad08ef8 Remove bogus project folder
llvm-svn: 19318
2005-01-07 06:54:58 +00:00
Misha Brukman 28e210a8f2 Fix spelling.
llvm-svn: 19317
2005-01-07 06:45:07 +00:00
Jeff Cohen e48bd7fcd4 Update list of passes
llvm-svn: 19316
2005-01-07 06:12:41 +00:00
Jeff Cohen 844410b48e Add missing include
llvm-svn: 19315
2005-01-07 05:42:13 +00:00
Jeff Cohen e15ae04fb3 Fix return type
llvm-svn: 19314
2005-01-07 05:41:39 +00:00
Chris Lattner ae15482076 Codegen -1 and -0.0 more efficiently. This implements CodeGen/X86/negatize_zero.ll
llvm-svn: 19313
2005-01-06 21:19:16 +00:00
Chris Lattner 9eef99ef43 New testcase
llvm-svn: 19312
2005-01-06 21:18:53 +00:00
Chris Lattner cd4003e228 No need to pessimize current code for future possibilities.
llvm-svn: 19311
2005-01-06 16:26:38 +00:00
Jeff Cohen 72f8f4cc3d Get the #ifdef right on LinkAllPasses.h.
llvm-svn: 19310
2005-01-06 07:01:08 +00:00
Jeff Cohen 13932fb27f Fix minor mistakes
llvm-svn: 19309
2005-01-06 06:29:42 +00:00
Jeff Cohen 11dca28b79 Get rid of those pesky tabs...
llvm-svn: 19308
2005-01-06 06:06:35 +00:00
Jeff Cohen 00d5508496 Add project opt to Visual Studio.
llvm-svn: 19307
2005-01-06 06:02:53 +00:00
Jeff Cohen eca0d0f2da Put createLoopUnswitchPass() into proper namespace
llvm-svn: 19306
2005-01-06 05:47:18 +00:00
Jeff Cohen 27595a4aec Add missing include
llvm-svn: 19305
2005-01-06 05:46:44 +00:00
Jeff Cohen 56d649f574 Fix incorrect return type.
llvm-svn: 19304
2005-01-06 05:45:45 +00:00
Jeff Cohen b56965be08 Fix CBE code so that it compiles with VC++.
llvm-svn: 19303
2005-01-06 04:21:49 +00:00
Chris Lattner 2812f0880b Add required #include
llvm-svn: 19302
2005-01-06 03:25:27 +00:00
Chris Lattner a930a9ab5e Add a useful method
llvm-svn: 19301
2005-01-06 03:23:59 +00:00
Chris Lattner 770c354f7d Add a list end sentinal
llvm-svn: 19299
2005-01-05 22:14:14 +00:00