| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | New testcase, check that dead code doesn't pessimize instcombine | Chris Lattner | 2006-05-10 | 1 | -0/+12 |
| | | | | | llvm-svn: 28214 | ||||
| * | Fix the PowerPC JIT-only failure on UnitTests/Vector/sumarray-dbl, which is | Chris Lattner | 2006-05-10 | 1 | -2/+2 |
| | | | | | | | | really a bad codegen bug that LLC happens to get lucky with. I must chat with Nate for the proper fix. llvm-svn: 28213 | ||||
| * | Templatify RegReductionPriorityQueue | Evan Cheng | 2006-05-10 | 1 | -7/+12 |
| | | | | | llvm-svn: 28212 | ||||
| * | Add alloca/malloc ctors that don't take array sizes. | Chris Lattner | 2006-05-10 | 1 | -8/+21 |
| | | | | | llvm-svn: 28211 | ||||
| * | Add an assertion for a common error | Chris Lattner | 2006-05-10 | 1 | -1/+4 |
| | | | | | llvm-svn: 28210 | ||||
| * | Watch out for the following case: | Evan Cheng | 2006-05-10 | 1 | -11/+37 |
| | | | | | | | | | 1. Use expects a chain output. 2. Node is expanded into multiple target ops. 3. One of the inner node produces a chain, the outer most one doesn't. llvm-svn: 28209 | ||||
| * | Fix a load folding bug. It is exposed by a multi- resulting instructions | Evan Cheng | 2006-05-10 | 1 | -59/+63 |
| | | | | | | | def : Pat<> pattern. llvm-svn: 28208 | ||||
| * | Fix PR773 | Nate Begeman | 2006-05-09 | 1 | -2/+20 |
| | | | | | llvm-svn: 28207 | ||||
| * | This method doesn't need to be virtual, thanks to Reid for pointing this out. | Chris Lattner | 2006-05-09 | 1 | -1/+1 |
| | | | | | llvm-svn: 28206 | ||||
| * | Fix a regression in my patch from last night that broke the llvmgcc4 build on | Chris Lattner | 2006-05-09 | 1 | -1/+1 |
| | | | | | | | ppc llvm-svn: 28205 | ||||
| * | Indent .data/.text in the .s file | Chris Lattner | 2006-05-09 | 1 | -5/+5 |
| | | | | | llvm-svn: 28204 | ||||
| * | Another instruction scheduling test case | Evan Cheng | 2006-05-09 | 1 | -0/+22 |
| | | | | | llvm-svn: 28203 | ||||
| * | Add pseudo dependency to force a def&use operand to be scheduled last (unless | Evan Cheng | 2006-05-09 | 1 | -17/+108 |
| | | | | | | | | the distance between the def and another use is much longer). This is under option control for now "-sched-lower-defnuse". llvm-svn: 28201 | ||||
| * | Debugging info | Evan Cheng | 2006-05-09 | 1 | -3/+3 |
| | | | | | llvm-svn: 28200 | ||||
| * | Remove a completed entry. | Evan Cheng | 2006-05-09 | 1 | -42/+0 |
| | | | | | llvm-svn: 28199 | ||||
| * | Test case for PR770 | Evan Cheng | 2006-05-09 | 1 | -0/+22 |
| | | | | | llvm-svn: 28198 | ||||
| * | PR 770 - permit coallescing of registers in subset register classes. | Evan Cheng | 2006-05-09 | 2 | -16/+30 |
| | | | | | llvm-svn: 28197 | ||||
| * | Added sub- register classes information. | Evan Cheng | 2006-05-09 | 1 | -7/+29 |
| | | | | | llvm-svn: 28196 | ||||
| * | Add sub-register class information. | Evan Cheng | 2006-05-09 | 1 | -3/+49 |
| | | | | | llvm-svn: 28195 | ||||
| * | Implement MASM sections correctly, without a "has masm sections flag" and a ↵ | Chris Lattner | 2006-05-09 | 2 | -28/+20 |
| | | | | | | | bunch of special case code. llvm-svn: 28194 | ||||
| * | Implement MASM sections correctly, without a "has masm sections flag" and a | Chris Lattner | 2006-05-09 | 1 | -1/+12 |
| | | | | | | | bunch of special case code. llvm-svn: 28193 | ||||
| * | Oh yeah, there are two of these now, unify both. | Chris Lattner | 2006-05-09 | 1 | -22/+15 |
| | | | | | llvm-svn: 28192 | ||||
| * | Setting SwitchToSectionDirective properly in the MASM backend permits a bunch | Chris Lattner | 2006-05-09 | 1 | -22/+15 |
| | | | | | | | of code to be unified. llvm-svn: 28191 | ||||
| * | MASM doesn't have one of these. | Chris Lattner | 2006-05-09 | 1 | -0/+1 |
| | | | | | llvm-svn: 28190 | ||||
| * | Don't prefix section directives with a tab. Doing so causes blank lines to | Chris Lattner | 2006-05-09 | 1 | -1/+1 |
| | | | | | | | be emitted to the .s file. llvm-svn: 28189 | ||||
| * | Make the masm codepath work like the normal code path. | Chris Lattner | 2006-05-09 | 1 | -2/+4 |
| | | | | | llvm-svn: 28188 | ||||
| * | Preserve prior behavior | Chris Lattner | 2006-05-09 | 1 | -2/+1 |
| | | | | | llvm-svn: 28187 | ||||
| * | The MASM asmprinter has been fixed, these hacks are no longer needed. | Chris Lattner | 2006-05-09 | 1 | -20/+2 |
| | | | | | llvm-svn: 28186 | ||||
| * | Fix the MASM asmprinter's lies. It does not want to emit code to .text/.data | Chris Lattner | 2006-05-09 | 4 | -7/+17 |
| | | | | | | | it wants it emitted to _text/_data. llvm-svn: 28185 | ||||
| * | Split SwitchSection into SwitchTo{Text|Data}Section methods. | Chris Lattner | 2006-05-09 | 9 | -86/+131 |
| | | | | | llvm-svn: 28184 | ||||
| * | Split SwitchSection into the SwitchTo{Text|Data}Section functions, to better | Chris Lattner | 2006-05-09 | 1 | -3/+19 |
| | | | | | | | support assemblers that distinguish the two. llvm-svn: 28183 | ||||
| * | Some notes and thoughts to myself | Chris Lattner | 2006-05-09 | 1 | -7/+7 |
| | | | | | llvm-svn: 28182 | ||||
| * | Patch to make some xforms preserve each other. Patch contributed by | Chris Lattner | 2006-05-09 | 5 | -2/+32 |
| | | | | | | | Domagoj Babic! llvm-svn: 28181 | ||||
| * | Use the -dumpversion option to llvm-gcc which gives us just the version # | Reid Spencer | 2006-05-09 | 2 | -2/+2 |
| | | | | | | | | and is unlikely to change in future releases. This also simplifies the parsing of the full and major llvm-gcc version numbers in the script. llvm-svn: 28180 | ||||
| * | Move some methods out of line so that MutexGuard.h isn't needed in a public ↵ | Chris Lattner | 2006-05-08 | 3 | -9/+83 |
| | | | | | | | header. llvm-svn: 28179 | ||||
| * | Move methods out of line so that MutexGuard.h isn't required in the header. | Chris Lattner | 2006-05-08 | 1 | -48/+18 |
| | | | | | llvm-svn: 28178 | ||||
| * | Another bad case I noticed | Chris Lattner | 2006-05-08 | 1 | -0/+37 |
| | | | | | llvm-svn: 28177 | ||||
| * | add a note | Chris Lattner | 2006-05-08 | 1 | -0/+9 |
| | | | | | llvm-svn: 28176 | ||||
| * | Make the case I just checked in stronger. Now we compile this: | Chris Lattner | 2006-05-08 | 1 | -5/+13 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | short test2(short X, short x) { int Y = (short)(X+x); return Y >> 1; } to: _test2: add r2, r3, r4 extsh r2, r2 srawi r3, r2, 1 blr instead of: _test2: add r2, r3, r4 extsh r2, r2 srwi r2, r2, 1 extsh r3, r2 blr llvm-svn: 28175 | ||||
| * | Implement and_sext.ll:test3, generating: | Chris Lattner | 2006-05-08 | 1 | -1/+8 |
| | | | | | | | | | | | | | | | | | | | | | | _test4: srawi r3, r3, 16 blr instead of: _test4: srwi r2, r3, 16 extsh r3, r2 blr for: short test4(unsigned X) { return (X >> 16); } llvm-svn: 28174 | ||||
| * | new testcase | Chris Lattner | 2006-05-08 | 1 | -0/+6 |
| | | | | | llvm-svn: 28173 | ||||
| * | Yet more readme updating | Nate Begeman | 2006-05-08 | 1 | -36/+22 |
| | | | | | llvm-svn: 28172 | ||||
| * | Compile this: | Chris Lattner | 2006-05-08 | 1 | -0/+5 |
| | | | | | | | | | | | | | | | | | | | | | | | | short test4(unsigned X) { return (X >> 16); } to: _test4: movl 4(%esp), %eax sarl $16, %eax ret instead of: _test4: movl $-65536, %eax andl 4(%esp), %eax sarl $16, %eax ret llvm-svn: 28171 | ||||
| * | New note about something bad happening in target independent optimizers | Nate Begeman | 2006-05-08 | 1 | -2/+18 |
| | | | | | llvm-svn: 28170 | ||||
| * | Proving once again that I am not as smart as the compiler | Nate Begeman | 2006-05-08 | 1 | -2/+1 |
| | | | | | llvm-svn: 28169 | ||||
| * | Fold more shifts into inserts, and update the README | Nate Begeman | 2006-05-08 | 2 | -20/+34 |
| | | | | | llvm-svn: 28168 | ||||
| * | Fold shifts with undef operands. | Chris Lattner | 2006-05-08 | 1 | -0/+7 |
| | | | | | llvm-svn: 28167 | ||||
| * | When tracking demanded bits, if any bits from the sext of an SRA are demanded, | Chris Lattner | 2006-05-08 | 1 | -2/+8 |
| | | | | | | | then so is the input sign bit. This fixes mediabench/g721 on X86. llvm-svn: 28166 | ||||
| * | Make emission of jump tables a bit less conservative; they are now required | Nate Begeman | 2006-05-08 | 1 | -4/+4 |
| | | | | | | | to be only 31.25% dense, rather than 75% dense. llvm-svn: 28165 | ||||
| * | Fixing truncate. Previously we were emitting truncate from r16 to r8 as | Evan Cheng | 2006-05-08 | 7 | -25/+100 |
| | | | | | | | | | | | | | | | | | | | | | | | | | movw. That is we promote the destination operand to r16. So %CH = TRUNC_R16_R8 %BP is emitted as movw %bp, %cx. This is incorrect. If %cl is live, it would be clobbered. Ideally we want to do the opposite, that is emitted it as movb ??, %ch But this is not possible since %bp does not have a r8 sub-register. We are now defining a new register class R16_ which is a subclass of R16 containing only those 16-bit registers that have r8 sub-registers (i.e. AX - DX). We isel the truncate to two instructions, a MOV16to16_ to copy the value to the R16_ class, followed by a TRUNC_R16_R8. Due to bug 770, the register colaescer is not going to coalesce between R16 and R16_. That will be fixed later so we can eliminate the MOV16to16_. Right now, it can only be eliminated if we are lucky that source and destination registers are the same. llvm-svn: 28164 | ||||

