| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Loop unroller doesn't necessarily need to be profile driven | Chris Lattner | 2003-08-06 | 1 | -1/+2 |
| | | | | | llvm-svn: 7637 | ||||
| * | Completely eliminate the isVoid TSFlag, shifting over all other fields | Chris Lattner | 2003-08-06 | 2 | -33/+34 |
| | | | | | llvm-svn: 7636 | ||||
| * | add a pattern for RET, immediates no longer need to be explicitly typed | Chris Lattner | 2003-08-06 | 1 | -10/+10 |
| | | | | | llvm-svn: 7635 | ||||
| * | Start adding usefulness to the DAG node definitions, add a new Expander | Chris Lattner | 2003-08-06 | 1 | -14/+51 |
| | | | | | | | class llvm-svn: 7634 | ||||
| * | Add error checking code to the node type parser. Start the instruction pattern | Chris Lattner | 2003-08-06 | 2 | -7/+34 |
| | | | | | | | reader llvm-svn: 7632 | ||||
| * | Initial support for an instruction selector emitter | Chris Lattner | 2003-08-06 | 2 | -0/+115 |
| | | | | | llvm-svn: 7631 | ||||
| * | All good classes with virtual functions should have virtual dtors... | Chris Lattner | 2003-08-06 | 1 | -0/+1 |
| | | | | | llvm-svn: 7630 | ||||
| * | Add an instruction selector emitter skeleton | Chris Lattner | 2003-08-06 | 1 | -2/+7 |
| | | | | | llvm-svn: 7629 | ||||
| * | convert over to using TableGen backends | Chris Lattner | 2003-08-06 | 4 | -31/+9 |
| | | | | | llvm-svn: 7628 | ||||
| * | Switch code over to being a TableGenBackend | Chris Lattner | 2003-08-06 | 2 | -29/+9 |
| | | | | | llvm-svn: 7627 | ||||
| * | Add more helper methods | Chris Lattner | 2003-08-06 | 2 | -1/+30 |
| | | | | | llvm-svn: 7626 | ||||
| * | New common interface for backends to use | Chris Lattner | 2003-08-06 | 2 | -0/+43 |
| | | | | | llvm-svn: 7625 | ||||
| * | Added POOLFLAGS option to run pool allocation | Sumant Kowshik | 2003-08-06 | 1 | -1/+10 |
| | | | | | llvm-svn: 7624 | ||||
| * | "fix" coding style stuff | Chris Lattner | 2003-08-05 | 1 | -24/+24 |
| | | | | | | | Change some <>'s into <>'s llvm-svn: 7623 | ||||
| * | Completely eliminate the per-machine-instruction regsUsed set. | Chris Lattner | 2003-08-05 | 1 | -15/+0 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This substantially shrinks the size of each machine instruction, which should make allocation faster and the cache footprint of the machine code lighter. Here are some timings for code generation of the larger benchmarks we have. This are timings of code generation phases of the X86 JIT, when compiled in debug mode: Before After Diff 164.gzip: InstSel 0.0878 0.0722 -21.6% RegAlloc 0.2031 0.1757 -15.6% TOTAL 0.5585 0.4999 -11.7% Ptrdist-bc: InstSel 0.0878 0.0722 -21.6% RegAlloc 0.2070 0.1933 - 7.1% TOTAL 0.6972 0.6464 - 7.9% 197.parser: InstSel 0.2148 0.2148 - 0.0% RegAlloc 0.4941 0.4277 -15.5% TOTAL 1.3749 1.2851 - 7.0% 175.vpr: InstSel 0.2519 0.2109 -19.4% RegAlloc 0.5976 0.5663 - 5.5% TOTAL 1.6933 1.6347 - 3.5% 254.gap: InstSel 1.1328 0.9921 -14.2% RegAlloc 2.6933 2.4804 - 8.6% TOTAL 7.7871 7.2499 - 7.4% llvm-svn: 7622 | ||||
| * | Use a new local data structure instead of the MachineInstr::regsUsed set | Chris Lattner | 2003-08-05 | 1 | -8/+7 |
| | | | | | llvm-svn: 7621 | ||||
| * | Add a map | Chris Lattner | 2003-08-05 | 1 | -0/+4 |
| | | | | | llvm-svn: 7620 | ||||
| * | Minor cleanups | Chris Lattner | 2003-08-05 | 1 | -23/+22 |
| | | | | | llvm-svn: 7619 | ||||
| * | Physical registers no longer live in the regsUsed set for each machine instr | Chris Lattner | 2003-08-05 | 1 | -18/+30 |
| | | | | | llvm-svn: 7618 | ||||
| * | Do not insert physical regsiters into the regsUsed set | Chris Lattner | 2003-08-05 | 2 | -5/+0 |
| | | | | | llvm-svn: 7617 | ||||
| * | Reverted back to using OR for cmp/mv operations for lex/yacc output. | John Criswell | 2003-08-05 | 2 | -6/+6 |
| | | | | | | | | The shell AND/OR operators short-circuit on command success/failure, which is the inverse of exit status (i.e. 0 means success, non-zero means failure). llvm-svn: 7616 | ||||
| * | Switched from using diff to cmp for two reasons: | John Criswell | 2003-08-05 | 2 | -6/+6 |
| | | | | | | | | | o Not all versions of diff have the -q option o The cmp program is probably faster than diff Fixed the logic that only copies the file over if no differences are found. llvm-svn: 7615 | ||||
| * | Fixed minor bug in SafeToHoist and made some changes suggested by Chris. | Tanya Lattner | 2003-08-05 | 1 | -19/+10 |
| | | | | | llvm-svn: 7614 | ||||
| * | Added LICM test cases to: | Tanya Lattner | 2003-08-05 | 2 | -0/+47 |
| | | | | | | | | 1) Check that trapping instructionns that are not guaranteed to execute are not hoisted. 2) Check that trapping instructions that are guaranteed to execute are hoisted. llvm-svn: 7613 | ||||
| * | Fixed LICM bug that hoists trapping instructions that are not guaranteed to ↵ | Tanya Lattner | 2003-08-05 | 1 | -5/+59 |
| | | | | | | | execute. llvm-svn: 7612 | ||||
| * | Minor changes: | Chris Lattner | 2003-08-05 | 1 | -52/+48 |
| | | | | | | | | * Expand most tabs into spaces * Move #define DEBUG_TYPE to top of file to avoid warning llvm-svn: 7611 | ||||
| * | Add more verbose comment | Chris Lattner | 2003-08-05 | 1 | -10/+9 |
| | | | | | llvm-svn: 7610 | ||||
| * | Add a comment to the method decl | Chris Lattner | 2003-08-05 | 1 | -7/+11 |
| | | | | | llvm-svn: 7609 | ||||
| * | Remove unused method | Chris Lattner | 2003-08-05 | 1 | -3/+0 |
| | | | | | llvm-svn: 7608 | ||||
| * | Added declaration of mergeInGlobalsGraph | Sumant Kowshik | 2003-08-05 | 1 | -0/+2 |
| | | | | | llvm-svn: 7607 | ||||
| * | Added function mergeInGlobalsGraph which merges in the entire globals graph ↵ | Sumant Kowshik | 2003-08-05 | 1 | -0/+29 |
| | | | | | | | with the graph of a function llvm-svn: 7606 | ||||
| * | Major bug fixes including a memory leak and tracking some exceptional ↵ | Sumant Kowshik | 2003-08-05 | 1 | -83/+317 |
| | | | | | | | conditions. Also added support for including global and indirect call information in the DS graphs used by the pool allocation llvm-svn: 7605 | ||||
| * | Specify DEBUG_TYPE's for the JIT debug messages | Chris Lattner | 2003-08-05 | 2 | -0/+2 |
| | | | | | llvm-svn: 7604 | ||||
| * | This method has now been changed to preserve flags for us! | Chris Lattner | 2003-08-05 | 1 | -5/+2 |
| | | | | | llvm-svn: 7603 | ||||
| * | All callers of these methods actually wanted them to preserve the flags, | Chris Lattner | 2003-08-05 | 2 | -36/+9 |
| | | | | | | | | | | so get rid of the def/use parameters that were getting passed in. **** This now changes the semantics of these methods to preserve the flags, not clobber them! llvm-svn: 7602 | ||||
| * | Added the declaration of InlineIndirectCalls | Sumant Kowshik | 2003-08-05 | 1 | -1/+6 |
| | | | | | llvm-svn: 7601 | ||||
| * | Factor shared code | Chris Lattner | 2003-08-05 | 1 | -8/+4 |
| | | | | | llvm-svn: 7600 | ||||
| * | Fix bug: SimplifyCFG/2003-08-05-InvokeCrash.ll | Chris Lattner | 2003-08-05 | 1 | -1/+2 |
| | | | | | | | Fix bug: SimplifyCFG/2003-08-05-MishandleInvoke.ll llvm-svn: 7599 | ||||
| * | new testcases that simplifycfg breaks | Chris Lattner | 2003-08-05 | 2 | -0/+19 |
| | | | | | llvm-svn: 7598 | ||||
| * | * Removed `using' declaration, now use full namespace qualifier std::string | Misha Brukman | 2003-08-05 | 1 | -43/+43 |
| | | | | | | | * Simplified code by using an inline function instead of copy-pasted code llvm-svn: 7597 | ||||
| * | If we're debugging the SimplifyCFG pass, we _REALLY_ don't want to use it for | Chris Lattner | 2003-08-05 | 3 | -8/+14 |
| | | | | | | | narrowing, no matter what. llvm-svn: 7596 | ||||
| * | Implement TODO: print out short form of Invoke if possible | Chris Lattner | 2003-08-05 | 1 | -8/+23 |
| | | | | | llvm-svn: 7595 | ||||
| * | Only test the vector of functions if it is non-empty. | Misha Brukman | 2003-08-05 | 1 | -1/+1 |
| | | | | | llvm-svn: 7594 | ||||
| * | Stop special-casing annul and predict bits (which are Sparc-specific anyway) | Misha Brukman | 2003-08-05 | 1 | -8/+1 |
| | | | | | | | since those bits are now hard-coded in Sparc*.td files. llvm-svn: 7593 | ||||
| * | * Set annul bit to be 0, because the Sparc backend currently does not use it. | Misha Brukman | 2003-08-05 | 1 | -5/+5 |
| | | | | | | | | * Use the name of the predict field instead of just the const 1 in the Instruction. llvm-svn: 7592 | ||||
| * | Fix bugs handling ESP in alloca references | Chris Lattner | 2003-08-05 | 1 | -3/+6 |
| | | | | | llvm-svn: 7591 | ||||
| * | No functional changes, comment the fix I just put in | Chris Lattner | 2003-08-05 | 1 | -4/+5 |
| | | | | | llvm-svn: 7590 | ||||
| * | The CodeEmitterGenerator used to consider ANY uninitialized field as being an | Chris Lattner | 2003-08-05 | 1 | -48/+48 |
| | | | | | | | | operand (unless it's annul or predict). Now we only consider fields to be operands if they are uninitialized AND used in the "Inst" field. llvm-svn: 7589 | ||||
| * | Revert previous change, and be really anal about what physical registers can do. | Chris Lattner | 2003-08-05 | 1 | -27/+19 |
| | | | | | llvm-svn: 7588 | ||||
| * | This is the real fix for the previous register allocator problem. | Chris Lattner | 2003-08-05 | 3 | -1/+4 |
| | | | | | | | Physical registers should not float around. llvm-svn: 7587 | ||||

