summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
...
* Have FastISel skip the multiply by 1 for getelementptr on i8*.Dan Gohman2008-08-211-4/+2
| | | | llvm-svn: 55129
* Allow inline asm nodes with empty bodies inside JIT.Anton Korobeynikov2008-08-211-2/+6
| | | | | | | This unbreaks explicit reg vars inside JIT, which are implemented in such hacky way :) llvm-svn: 55128
* Switch from an O(n) method to an O(1) method for changing non-constantChris Lattner2008-08-211-4/+5
| | | | | | operands. llvm-svn: 55127
* getelementptr doesn't work on x86-64 yet, because itDan Gohman2008-08-211-1/+0
| | | | | | has MOV64ri32 and no plain MOV64ri. llvm-svn: 55126
* MVT::getMVT uses iPTR for pointer types, while we need the actualDan Gohman2008-08-212-10/+13
| | | | | | | intptr_t type in this case. FastISel can now select simple getelementptr instructions. llvm-svn: 55125
* Simplify SelectRoot's interface, and factor out some common codeDan Gohman2008-08-2110-11/+11
| | | | | | from all targets. llvm-svn: 55124
* Elements in DeadNodeSet are checked for use_empty() before theyDan Gohman2008-08-211-1/+0
| | | | | | | are actually deleted, so it's not necessary to remove re-used nodes from the set. llvm-svn: 55123
* SelectionDAGISel::SelectRootInit does not need to be virtual.Dan Gohman2008-08-211-1/+1
| | | | llvm-svn: 55122
* Make HandleSDNode::getValue return an SDValue instead ofDan Gohman2008-08-211-1/+1
| | | | | | the full SDUse, which isn't needed. llvm-svn: 55121
* Don't silently ignore errors when opening output streams.Dan Gohman2008-08-212-4/+12
| | | | llvm-svn: 55120
* Clean up whitespace.Bill Wendling2008-08-211-5/+7
| | | | llvm-svn: 55117
* remove redundant includeChris Lattner2008-08-211-1/+0
| | | | llvm-svn: 55116
* Fix the build with gcc 4.3 as the host, patch by Zhongxing Xu!Chris Lattner2008-08-211-0/+1
| | | | llvm-svn: 55115
* Implement operator<< in terms of basic types rather than [u]int*_t, which is ↵Owen Anderson2008-08-211-7/+35
| | | | | | better for portability. There might be some way to factor this all with metaprogramming magic, but I'm not sure how offhand. llvm-svn: 55114
* Revert r54876 r54877 r54906 and r54907. Evan found that these caused a 20%Nick Lewycky2008-08-212-69/+24
| | | | | | slowdown in bzip2. llvm-svn: 55113
* unbreak the CBE on treeadd an many others.Chris Lattner2008-08-211-2/+2
| | | | llvm-svn: 55112
* Fix build on GCC 4.3.Nick Lewycky2008-08-211-0/+1
| | | | llvm-svn: 55110
* Remove size_t operator; this unbreaks the build on Linux. Committing on Eli Friedman2008-08-211-5/+1
| | | | | | | | the suggestion of resistor. If this breaks some other platform, please go ahead and back this out. llvm-svn: 55106
* recommit bcreader, handling packed structs correctly. ApparentlyChris Lattner2008-08-212-13/+133
| | | | | | people want fast *and* correct. Sheesh. llvm-svn: 55102
* Revert 55090, regressions in:Daniel Dunbar2008-08-212-132/+13
| | | | | | | | - Postgres - llvm-test/SingleSource/UnitTests/{2006-01-23-InitializedBitField, 2004-11-28-GlobalBoolLayout, 2003-05-02-DependentPHI} llvm-svn: 55100
* Basic fast-isel support for instructions with constant int operands.Dan Gohman2008-08-214-37/+136
| | | | llvm-svn: 55099
* Type of first GEP operand is always the same as the target pointer type.Evan Cheng2008-08-211-7/+5
| | | | llvm-svn: 55097
* Remove the code that limited FastISel to certain fixed signatures.Dan Gohman2008-08-211-19/+5
| | | | llvm-svn: 55096
* Improve the doxygen comment for SelectInstructions::SelectInstructions.Dan Gohman2008-08-211-2/+3
| | | | llvm-svn: 55094
* Begin making more use of the FastISelEmitter class.Dan Gohman2008-08-213-28/+30
| | | | llvm-svn: 55093
* Use raw_ostream throughout the AsmPrinter.Owen Anderson2008-08-2166-180/+448
| | | | llvm-svn: 55092
* Fix an N^2 issue handling constant resolution due to RAUW in large arraysChris Lattner2008-08-212-13/+132
| | | | | | | this speeds up the bcreader from 6.67s to 0.12s on a testcase Daniel provided. rdar://6158117 llvm-svn: 55090
* Fix unused variable warnings.Dan Gohman2008-08-201-3/+3
| | | | llvm-svn: 55089
* Silence a compiler warning.Evan Cheng2008-08-201-1/+2
| | | | llvm-svn: 55087
* First cut, un-optimized (and untested) fast isel lowering of GetElementPtrInst.Evan Cheng2008-08-203-5/+136
| | | | llvm-svn: 55085
* Add a new ConstantExpr::getWithOperands that takes any array of operands Chris Lattner2008-08-202-5/+8
| | | | | | instead of requiring an std::vector. llvm-svn: 55084
* Remove an obsolete todo comment.Dan Gohman2008-08-201-2/+0
| | | | llvm-svn: 55080
* Factor the code for determining the target-specific instructionDan Gohman2008-08-204-18/+22
| | | | | | namespace out of the isel emitters and into common code. llvm-svn: 55079
* Move the handling of ANY_EXTEND, SIGN_EXTEND_INREG, and TRUNCATEDan Gohman2008-08-203-138/+159
| | | | | | | | | | | | | out of X86ISelDAGToDAG.cpp C++ code and into tablegen code. Among other things, using tablegen for these things makes them friendlier to FastISel. Tablegen can handle the case of i8 subregs on x86-32, but currently the C++ code for that case uses MVT::Flag in a tricky way, and it happens to schedule better in some cases. So for now, leave the C++ code in place to handle the i8 case on x86-32. llvm-svn: 55078
* Simplify the BuildMI calls even more.Dan Gohman2008-08-201-6/+3
| | | | llvm-svn: 55077
* Simplify FastISel's constructor argument list, make the FastISelDan Gohman2008-08-208-40/+33
| | | | | | | | class hold a MachineRegisterInfo member, and make the MachineBasicBlock be passed in to SelectInstructions rather than the FastISel constructor. llvm-svn: 55076
* Dump the instruction that foiled ISel even when -debug is not used.Dan Gohman2008-08-201-1/+3
| | | | llvm-svn: 55075
* Don't hoist instructions that define a physical register.Bill Wendling2008-08-201-1/+8
| | | | llvm-svn: 55074
* Make more use of the BuildMI API.Dan Gohman2008-08-201-8/+2
| | | | llvm-svn: 55072
* Minor code reorganization.Dan Gohman2008-08-201-3/+3
| | | | llvm-svn: 55071
* Minor whitespace cleanup.Dan Gohman2008-08-201-1/+1
| | | | llvm-svn: 55070
* Fix 80 column violation.Dan Gohman2008-08-201-1/+2
| | | | llvm-svn: 55069
* Kill off SimpleBBISel, it's replaced by FastISel.Evan Cheng2008-08-203-78/+1
| | | | llvm-svn: 55067
* Move the fast-path (<=i64) cases of various APInt methods inlineChris Lattner2008-08-202-170/+199
| | | | | | | and the slow-path cases out of line. This speeds up instcombine a bit in real world cases. Patch contributed by m-s. llvm-svn: 55063
* Disable DAGCombine's alignment inference in "fast" codegen mode.Dan Gohman2008-08-203-10/+13
| | | | llvm-svn: 55059
* Change the FoldingSetNodeID usage for objects which carryDan Gohman2008-08-204-37/+46
| | | | | | | | alignment and volatility information, such as loads and stores, to reduce the number of integer values added to the FoldingSetNodeID. llvm-svn: 55058
* Clean up a dead return missed in r55055.Dan Gohman2008-08-201-3/+2
| | | | llvm-svn: 55057
* Tablegen generated code already tests the opcode value, so it's notDan Gohman2008-08-204-247/+183
| | | | | | necessary to use dyn_cast in these predicates. llvm-svn: 55055
* Use BitVector instead of std::vector<unsigned char>.Dan Gohman2008-08-201-2/+1
| | | | llvm-svn: 55054
* It's not necessary to check if a value is null before delete[].Dan Gohman2008-08-201-1/+1
| | | | llvm-svn: 55053
OpenPOWER on IntegriCloud