| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Initialize uninitialized variables. | Bill Wendling | 2009-12-16 | 1 | -1/+1 | 
| | | | | | llvm-svn: 91475 | ||||
| * | Change indirect-globals to use a dedicated allocIndirectGV. This lets us | Jeffrey Yasskin | 2009-12-15 | 5 | -46/+58 | 
| | | | | | | | | | | remove start/finishGVStub and the BufferState helper class from the MachineCodeEmitter interface. It has the side-effect of not setting the indirect global writable and then executable on ARM, but that shouldn't be necessary. llvm-svn: 91464 | ||||
| * | Reapply 91184 with fixes and an addition to the testcase to cover the problem | Bob Wilson | 2009-12-15 | 1 | -404/+424 | 
| | | | | | | | | | | | found last time. Instead of trying to modify the IR while iterating over it, I've change it to keep a list of WeakVH references to dead instructions, and then delete those instructions later. I also added some special case code to detect and handle the situation when both operands of a memcpy intrinsic are referencing the same alloca. llvm-svn: 91459 | ||||
| * | Fix GetConstantStringInfo to not look into MDString (it works on | Chris Lattner | 2009-12-15 | 2 | -15/+7 | 
| | | | | | | | | real data, not metadata) and fix DbgInfoPrinter to not abuse GetConstantStringInfo. llvm-svn: 91444 | ||||
| * | Add support to emit debug info for C++ namespaces. | Devang Patel | 2009-12-15 | 4 | -22/+105 | 
| | | | | | llvm-svn: 91440 | ||||
| * | optimize strstr, PR5783 | Chris Lattner | 2009-12-15 | 1 | -9/+75 | 
| | | | | | llvm-svn: 91438 | ||||
| * | Added encoding bits for the Thumb ISA. Initial checkin. | Johnny Chen | 2009-12-15 | 3 | -348/+1219 | 
| | | | | | llvm-svn: 91434 | ||||
| * | Delete an unused function. | Dan Gohman | 2009-12-15 | 1 | -38/+0 | 
| | | | | | llvm-svn: 91432 | ||||
| * | add some other xforms that should be done as part of PR5783 | Chris Lattner | 2009-12-15 | 1 | -3/+4 | 
| | | | | | llvm-svn: 91428 | ||||
| * | Remove isPod() from DenseMapInfo, splitting it out to its own | Chris Lattner | 2009-12-15 | 9 | -11/+10 | 
| | | | | | | | | | isPodLike type trait. This is a generally useful type trait for more than just DenseMap, and we really care about whether something acts like a pod, not whether it really is a pod. llvm-svn: 91421 | ||||
| * | Fix an encoding bug. | Evan Cheng | 2009-12-15 | 1 | -1/+1 | 
| | | | | | llvm-svn: 91417 | ||||
| * | For fastcc on x86, let ECX be used as a return register after EAX and EDX | Kenneth Uildriks | 2009-12-15 | 1 | -1/+8 | 
| | | | | | llvm-svn: 91410 | ||||
| * | Disable 91381 for now. It's miscompiling ARMISelDAG2DAG.cpp. | Evan Cheng | 2009-12-15 | 1 | -1/+3 | 
| | | | | | llvm-svn: 91405 | ||||
| * | Make 91378 more conservative. | Evan Cheng | 2009-12-15 | 1 | -1/+11 | 
| | | | | | | | | 1. Only perform (zext (shl (zext x), y)) -> (shl (zext x), y) when y is a constant. This makes sure it remove at least one zest. 2. If the shift is a left shift, make sure the original shift cannot shift out bits. llvm-svn: 91399 | ||||
| * | You can't use typedefs to declare template member specializations, and | John McCall | 2009-12-15 | 1 | -35/+49 | 
| | | | | | | | clang enforces it. llvm-svn: 91397 | ||||
| * | Initial work on disabling the scheduler. This is a work in progress, and this | Bill Wendling | 2009-12-15 | 3 | -29/+155 | 
| | | | | | | | | | | | | | | | | stuff isn't used just yet. We want to model the GCC `-fno-schedule-insns' and `-fno-schedule-insns2' flags. The hypothesis is that the people who use these flags know what they are doing, and have hand-optimized the C code to reduce latencies and other conflicts. The idea behind our scheme to turn off scheduling is to create a map "on the side" during DAG generation. It will order the nodes by how they appeared in the code. This map is then used during scheduling to get the ordering. llvm-svn: 91392 | ||||
| * | Tail duplication should zap a copy it inserted for SSA update if the copy is ↵ | Evan Cheng | 2009-12-15 | 1 | -13/+37 | 
| | | | | | | | the only use of its source. llvm-svn: 91390 | ||||
| * | Use sbb x, x to materialize carry bit in a GPR. The result is all one's or ↵ | Evan Cheng | 2009-12-15 | 4 | -3/+96 | 
| | | | | | | | all zero's. llvm-svn: 91381 | ||||
| * | Fold (zext (and x, cst)) -> (and (zext x), cst). | Evan Cheng | 2009-12-15 | 1 | -0/+13 | 
| | | | | | llvm-svn: 91380 | ||||
| * | Propagate zest through logical shift. | Evan Cheng | 2009-12-15 | 1 | -0/+10 | 
| | | | | | llvm-svn: 91378 | ||||
| * | Formatting. | Eric Christopher | 2009-12-15 | 1 | -1/+1 | 
| | | | | | llvm-svn: 91377 | ||||
| * | Revert these. They may have been causing 483_xalancbmk to fail: | Bill Wendling | 2009-12-15 | 2 | -52/+26 | 
| | | | | | | | | | | | | | | | | | | | | | $ svn merge -c -91161 https://llvm.org/svn/llvm-project/llvm/trunk --- Reverse-merging r91161 into '.': U lib/CodeGen/BranchFolding.cpp U lib/CodeGen/MachineBasicBlock.cpp $ svn merge -c -91113 https://llvm.org/svn/llvm-project/llvm/trunk --- Reverse-merging r91113 into '.': G lib/CodeGen/MachineBasicBlock.cpp $ svn merge -c -91101 https://llvm.org/svn/llvm-project/llvm/trunk --- Reverse-merging r91101 into '.': U include/llvm/CodeGen/MachineBasicBlock.h G lib/CodeGen/MachineBasicBlock.cpp $ svn merge -c -91092 https://llvm.org/svn/llvm-project/llvm/trunk --- Reverse-merging r91092 into '.': G include/llvm/CodeGen/MachineBasicBlock.h G lib/CodeGen/MachineBasicBlock.cpp llvm-svn: 91376 | ||||
| * | nand atomic requires opposite operand ordering | Jim Grosbach | 2009-12-15 | 1 | -3/+9 | 
| | | | | | llvm-svn: 91371 | ||||
| * | Fix integer cast code to handle vector types. | Dan Gohman | 2009-12-14 | 3 | -22/+56 | 
| | | | | | llvm-svn: 91362 | ||||
| * | Fix this to properly clear the FastISel debug location. Thanks to | Dan Gohman | 2009-12-14 | 1 | -1/+1 | 
| | | | | | | | Bill for spotting this! llvm-svn: 91355 | ||||
| * | Add encoding bits "let Inst{11-4} = 0b00000000;" to BR_JTr to disambiguate | Johnny Chen | 2009-12-14 | 1 | -0/+1 | 
| | | | | | | | between BR_JTr and STREXD. llvm-svn: 91339 | ||||
| * | The CIE says that the LSDA point in the FDE section is an "sdata4". That's fine, | Bill Wendling | 2009-12-14 | 1 | -7/+6 | 
| | | | | | | | but we need it to actually be 4-bytes in the FDE. llvm-svn: 91337 | ||||
| * | v6 sync insn copy/paste error | Jim Grosbach | 2009-12-14 | 1 | -1/+1 | 
| | | | | | llvm-svn: 91333 | ||||
| * | Add ARMv6 memory and sync barrier instructions | Jim Grosbach | 2009-12-14 | 3 | -14/+45 | 
| | | | | | llvm-svn: 91329 | ||||
| * | Fixed encoding bits typo of ldrexd/strexd. | Johnny Chen | 2009-12-14 | 1 | -2/+2 | 
| | | | | | llvm-svn: 91327 | ||||
| * | Thumb2 atomic operations | Jim Grosbach | 2009-12-14 | 1 | -44/+83 | 
| | | | | | llvm-svn: 91321 | ||||
| * | Move several function bodies which are rarely inlined out of line. | Dan Gohman | 2009-12-14 | 1 | -0/+67 | 
| | | | | | llvm-svn: 91319 | ||||
| * | fix an obvious bug found by clang++ and collapse a redundant if. | Chris Lattner | 2009-12-14 | 1 | -7/+6 | 
| | | | | | | | | | | | | Here's the diagnostic from clang: /Volumes/Data/dgregor/Projects/llvm/lib/Target/CppBackend/CPPBackend.cpp:989:23: warning: 'gv' is always NULL in this context printConstant(gv); ^ 1 diagnostic generated. llvm-svn: 91318 | ||||
| * | Micro-optimize these functions in the case where they are not inlined. | Dan Gohman | 2009-12-14 | 1 | -2/+1 | 
| | | | | | llvm-svn: 91316 | ||||
| * | correct selection requirements for thumb2 vs. arm versions of the barrier ↵ | Jim Grosbach | 2009-12-14 | 2 | -4/+6 | 
| | | | | | | | intrinsics llvm-svn: 91313 | ||||
| * | add Thumb2 atomic and memory barrier instruction definitions | Jim Grosbach | 2009-12-14 | 1 | -0/+60 | 
| | | | | | llvm-svn: 91310 | ||||
| * | whitespace | Jim Grosbach | 2009-12-14 | 1 | -1/+0 | 
| | | | | | llvm-svn: 91307 | ||||
| * | ARM memory barrier instructions are not predicable | Jim Grosbach | 2009-12-14 | 2 | -3/+20 | 
| | | | | | llvm-svn: 91305 | ||||
| * | Clear the Processed set when it is no longer used, and clear the | Dan Gohman | 2009-12-14 | 1 | -1/+2 | 
| | | | | | | | IVUses list in releaseMemory(). llvm-svn: 91296 | ||||
| * | Fix a thinko; isNotAlreadyContainedIn had a built-in negative, so the | Dan Gohman | 2009-12-14 | 2 | -2/+2 | 
| | | | | | | | condition was inverted when the code was converted to contains(). llvm-svn: 91295 | ||||
| * | Remove unnecessary #includes. | Dan Gohman | 2009-12-14 | 1 | -2/+0 | 
| | | | | | llvm-svn: 91293 | ||||
| * | Instead of having a ScalarEvolution pointer member in BasedUser, just pass | Dan Gohman | 2009-12-14 | 1 | -12/+13 | 
| | | | | | | | the ScalarEvolution pointer into the functions which need it. llvm-svn: 91289 | ||||
| * | Don't bother cleaning up if there's nothing to clean up. | Dan Gohman | 2009-12-14 | 1 | -6/+6 | 
| | | | | | llvm-svn: 91288 | ||||
| * | Delete an unused variable. | Dan Gohman | 2009-12-14 | 1 | -10/+1 | 
| | | | | | llvm-svn: 91287 | ||||
| * | Drop Loop::isNotAlreadyContainedIn in favor of Loop::contains. The | Dan Gohman | 2009-12-14 | 1 | -1/+1 | 
| | | | | | | | former was just exposing a LoopInfoBase implementation detail. llvm-svn: 91286 | ||||
| * | add ldrexd/strexd instructions | Jim Grosbach | 2009-12-14 | 1 | -2/+11 | 
| | | | | | llvm-svn: 91284 | ||||
| * | LSR itself doesn't need LoopInfo. | Dan Gohman | 2009-12-14 | 1 | -6/+2 | 
| | | | | | llvm-svn: 91283 | ||||
| * | LSR itself doesn't need DominatorTree. | Dan Gohman | 2009-12-14 | 1 | -6/+2 | 
| | | | | | llvm-svn: 91282 | ||||
| * | Remove the code in LSR that manually hoists expansions out of loops; | Dan Gohman | 2009-12-14 | 1 | -29/+9 | 
| | | | | | | | SCEVExpander does this automatically. llvm-svn: 91281 | ||||
| * | Minor code cleanups. | Dan Gohman | 2009-12-14 | 1 | -4/+2 | 
| | | | | | llvm-svn: 91280 | ||||

