Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Rematerialization logic was overly conservative when it comes to loads from ↵ | Evan Cheng | 2008-02-23 | 1 | -20/+6 |
| | | | | | | fixed stack slots. llvm-svn: 47529 | ||||
* | If remating a machine instr with virtual register operand, make sure the vr ↵ | Evan Cheng | 2008-02-23 | 1 | -2/+1 |
| | | | | | | is avaliable at all uses regardless of whether it would be folded. llvm-svn: 47526 | ||||
* | Turning on remat of pic loads. | Evan Cheng | 2008-02-23 | 1 | -1/+1 |
| | | | | llvm-svn: 47524 | ||||
* | Fix a bug that caused opt and other tools to silently ignore | Dan Gohman | 2008-02-23 | 1 | -1/+1 |
| | | | | | | invalid command-line options. llvm-svn: 47523 | ||||
* | No need recognize load from a fixed argument slot as re-materializable. ↵ | Evan Cheng | 2008-02-23 | 1 | -12/+0 |
| | | | | | | LiveIntervalAnalysis already handles it as a special case. llvm-svn: 47522 | ||||
* | Properly read and write bitcodes for multiple return values. | Devang Patel | 2008-02-23 | 2 | -18/+39 |
| | | | | llvm-svn: 47521 | ||||
* | Recognize loads of arguments as re-materializable first. Therefore if ↵ | Evan Cheng | 2008-02-23 | 1 | -24/+26 |
| | | | | | | isReallyTriviallyReMaterializable() returns true it doesn't confuse it as a "normal" re-materializable instruction. llvm-svn: 47520 | ||||
* | Regenerate. | Devang Patel | 2008-02-23 | 2 | -2/+2 |
| | | | | llvm-svn: 47519 | ||||
* | Use isa check instead of getTypeID() check. | Devang Patel | 2008-02-23 | 1 | -1/+1 |
| | | | | llvm-svn: 47518 | ||||
* | Fixed buffer overflow reported by Argiris Kirtzidis. | Ted Kremenek | 2008-02-23 | 1 | -1/+1 |
| | | | | llvm-svn: 47517 | ||||
* | print getresult operand and its type directly. | Devang Patel | 2008-02-23 | 1 | -11/+1 |
| | | | | llvm-svn: 47514 | ||||
* | Use dyn_cast instead of isa + cast. | Devang Patel | 2008-02-23 | 1 | -2/+2 |
| | | | | llvm-svn: 47511 | ||||
* | Regenerate | Devang Patel | 2008-02-23 | 3 | -487/+447 |
| | | | | llvm-svn: 47509 | ||||
* | To support multiple return values, now ret instruction supports multiple ↵ | Devang Patel | 2008-02-23 | 4 | -51/+68 |
| | | | | | | operands instead of one aggregate operand. llvm-svn: 47508 | ||||
* | Fix spill weight updating bug. | Evan Cheng | 2008-02-23 | 1 | -15/+27 |
| | | | | llvm-svn: 47507 | ||||
* | Split ParameterAttributes.h, putting the complicated | Dale Johannesen | 2008-02-22 | 19 | -320/+323 |
| | | | | | | | stuff into ParamAttrsList.h. Per feedback from ParamAttrs changes. llvm-svn: 47504 | ||||
* | Same isPhysRegAvailable bug as local register allocator. | Evan Cheng | 2008-02-22 | 1 | -1/+1 |
| | | | | llvm-svn: 47500 | ||||
* | Really really bad local register allocator bug. On X86, it was never using ↵ | Evan Cheng | 2008-02-22 | 1 | -1/+1 |
| | | | | | | | | ESI, EDI, and EBP because of a bug in RALocal::isPhysRegAvailable(). For example, when it checks if ESI is available, it then looks at registers aliases to ESI. SIL is marked -2 (not allocatable) but isPhysRegAvailable() incorrectly assumes it is in use and returns false for ESI. llvm-svn: 47499 | ||||
* | Add debugging printfs. | Evan Cheng | 2008-02-22 | 1 | -0/+2 |
| | | | | llvm-svn: 47496 | ||||
* | Regenerate | Devang Patel | 2008-02-22 | 3 | -468/+466 |
| | | | | llvm-svn: 47495 | ||||
* | Use SymbolicValueRef to parse getresult operand | Devang Patel | 2008-02-22 | 1 | -3/+2 |
| | | | | llvm-svn: 47494 | ||||
* | Make sure reload of implicit uses are issued before remat's. | Evan Cheng | 2008-02-22 | 1 | -3/+15 |
| | | | | llvm-svn: 47492 | ||||
* | Generated files for 47484. | Dale Johannesen | 2008-02-22 | 3 | -293/+295 |
| | | | | llvm-svn: 47485 | ||||
* | Pass alignment on ByVal parameters, from FE, all | Dale Johannesen | 2008-02-22 | 4 | -1/+38 |
| | | | | | | the way through. It is now used for codegen. llvm-svn: 47484 | ||||
* | MMX vectors are passed 4-byte aligned. | Dale Johannesen | 2008-02-22 | 1 | -4/+4 |
| | | | | llvm-svn: 47483 | ||||
* | Provide __main hooks for cygwin & mingw32 | Anton Korobeynikov | 2008-02-22 | 2 | -17/+28 |
| | | | | llvm-svn: 47479 | ||||
* | Fixed a typo. | Zhou Sheng | 2008-02-22 | 1 | -1/+1 |
| | | | | llvm-svn: 47478 | ||||
* | Allow re-materialization of pic load (controlled by -remat-pic-load for now). | Evan Cheng | 2008-02-22 | 1 | -3/+23 |
| | | | | llvm-svn: 47476 | ||||
* | Enable re-materialization of instructions which have virtual register ↵ | Evan Cheng | 2008-02-22 | 2 | -39/+187 |
| | | | | | | | | operands if the definition of the operand also reaches its uses. llvm-svn: 47475 | ||||
* | copy mmx values from/to memory with GPRs on x86-32 | Chris Lattner | 2008-02-22 | 1 | -1/+25 |
| | | | | | | | | instead of with mmx registers. This horribleness is apparently done by gcc to avoid having to insert emms in places that really should have it. This is the second half of rdar://5741668. llvm-svn: 47474 | ||||
* | Print getresult instruction properly. | Devang Patel | 2008-02-22 | 1 | -0/+13 |
| | | | | llvm-svn: 47473 | ||||
* | Print ret instruction that returns aggregates. | Devang Patel | 2008-02-22 | 1 | -2/+17 |
| | | | | llvm-svn: 47472 | ||||
* | Read and write getresult. | Devang Patel | 2008-02-22 | 2 | -0/+15 |
| | | | | llvm-svn: 47471 | ||||
* | Start using GPR's to copy around mmx value instead of mmx regs. | Chris Lattner | 2008-02-22 | 1 | -0/+32 |
| | | | | | | | | | | GCC apparently does this, and code depends on not having to do emms when this happens. This is x86-64 only so far, second half should handle x86-32. rdar://5741668 llvm-svn: 47470 | ||||
* | Fix compiler warning. | Evan Cheng | 2008-02-22 | 1 | -1/+1 |
| | | | | llvm-svn: 47468 | ||||
* | Fix a regression in 403.gcc and 186.crafty introduced in 47383. To test | Dan Gohman | 2008-02-22 | 2 | -28/+30 |
| | | | | | | | that a value is >= 32, check that all of the high bits are zero, not just one or more. llvm-svn: 47467 | ||||
* | print getresult instruction. | Devang Patel | 2008-02-21 | 1 | -0/+1 |
| | | | | llvm-svn: 47461 | ||||
* | Use isa<> instead of getTypeID() to check StructType. | Devang Patel | 2008-02-21 | 2 | -7/+6 |
| | | | | llvm-svn: 47460 | ||||
* | A few minor updates, removing implemented stuff and adding a couple of | Eli Friedman | 2008-02-21 | 1 | -83/+110 |
| | | | | | | new things. llvm-svn: 47458 | ||||
* | Make the clobber analysis a bit more smart: we only are careful about | Chris Lattner | 2008-02-21 | 1 | -3/+13 |
| | | | | | | | early clobbers if the clobber list contains a *register* not some thing like {memory}, {dirflag} etc. llvm-svn: 47457 | ||||
* | Treat clobber operands like early clobbers: if we have | Chris Lattner | 2008-02-21 | 1 | -0/+16 |
| | | | | | | | | | any, we force sdisel to do all regalloc for an asm. This leads to gross but correct codegen. This fixes the rest of PR2078. llvm-svn: 47454 | ||||
* | Clear PhysRegPartUse for the sub register as well. | Bill Wendling | 2008-02-21 | 1 | -1/+1 |
| | | | | llvm-svn: 47453 | ||||
* | Adjust the MaxAlignment for the special register scavenging spill slot. | Bill Wendling | 2008-02-21 | 1 | -0/+3 |
| | | | | llvm-svn: 47452 | ||||
* | Help testing. | Evan Cheng | 2008-02-21 | 1 | -0/+7 |
| | | | | llvm-svn: 47448 | ||||
* | Change a C-style cast to const_cast, to avoid a -Wcast-qual warning. | Dan Gohman | 2008-02-21 | 1 | -1/+1 |
| | | | | llvm-svn: 47437 | ||||
* | Better names as per Evan's request | Andrew Lenharth | 2008-02-21 | 1 | -9/+10 |
| | | | | llvm-svn: 47435 | ||||
* | Simplify this code, no functionality change. | Nick Lewycky | 2008-02-21 | 1 | -5/+2 |
| | | | | llvm-svn: 47434 | ||||
* | GlobalValues are Constants, remove redundant code. Also fix typo in a comment. | Nick Lewycky | 2008-02-21 | 1 | -3/+1 |
| | | | | llvm-svn: 47433 | ||||
* | Dan implemented one multiply issue. Replace it with another. :) | Chris Lattner | 2008-02-21 | 1 | -12/+33 |
| | | | | llvm-svn: 47431 | ||||
* | Atomic op support. If any gcc test uses __sync builtins, it might start ↵ | Andrew Lenharth | 2008-02-21 | 8 | -7/+345 |
| | | | | | | failing on archs that haven't implemented them yet llvm-svn: 47430 |