aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/X86/store_op_load_fold2.ll
Commit message (Collapse)AuthorAgeFilesLines
* Update aosp/master llvm for rebase to r233350Pirama Arumuga Nainar2015-04-091-3/+3
| | | | Change-Id: I07d935f8793ee8ec6b7da003f6483046594bca49
* Changed register names (and pointer keywords) to be lower case when using ↵Craig Topper2013-07-311-4/+4
| | | | | | | | | | Intel X86 assembler syntax. Patch by Richard Mitton. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187476 91177308-0d34-0410-b5e6-96231b3b80d8
* The LIT tests below do not specify the exact cpu model and fail on AVX2 ↵Nadav Rotem2012-07-121-2/+2
| | | | | | | | | | machines, because we select different instructions such as vbroadcast, new shuffles, etc. Patch by Michael Liao. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160129 91177308-0d34-0410-b5e6-96231b3b80d8
* Allocate virtual registers in ascending order.Jakob Stoklund Olesen2012-04-021-4/+10
| | | | | | | | | This is just the fallback tie-breaker ordering, the main allocation order is still descending size. Patch by Shamil Kurmangaleev! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153904 91177308-0d34-0410-b5e6-96231b3b80d8
* test/CodeGen/X86: Add explicit triplet -mtriple=i686-linux to 3 tests ↵NAKAMURA Takumi2010-09-191-1/+1
| | | | | | | | incompatible to Win32 codegen. r114297 raises 3 failures. They might fail also on mingw. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114317 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix some issues in WalkChainUsers dealing with Chris Lattner2010-03-021-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CopyToReg/CopyFromReg/INLINEASM. These are annoying because they have the same opcode before an after isel. Fix this by setting their NodeID to -1 to indicate that they are selected, just like what automatically happens when selecting things that end up being machine nodes. With that done, give IsLegalToFold a new flag that causes it to ignore chains. This lets the HandleMergeInputChains routine be the one place that validates chains after a match is successful, enabling the new hotness in chain processing. This smarter chain processing eliminates the need for "PreprocessRMW" in the X86 and MSP430 backends and enables MSP to start matching it's multiple mem operand instructions more aggressively. I currently #if out the dead code in the X86 backend and MSP backend, I'll remove it for real in a follow-on patch. The testcase changes are: test/CodeGen/X86/sse3.ll: we generate better code test/CodeGen/X86/store_op_load_fold2.ll: PreprocessRMW was miscompiling this before, we now generate correct code Convert it to filecheck while I'm at it. test/CodeGen/MSP430/Inst16mm.ll: Add a testcase for mem/mem folding to make anton happy. :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97596 91177308-0d34-0410-b5e6-96231b3b80d8
* clean up some testcases.Chris Lattner2010-03-021-14/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97576 91177308-0d34-0410-b5e6-96231b3b80d8
* Rewrite chain handling validation and input TokenFactor handlingChris Lattner2010-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | stuff now that we don't care about emulating the old broken behavior of the old isel. This eliminates the 'CheckChainCompatible' check (along with IsChainCompatible) which did an incorrect and inefficient scan *up* the chain nodes which happened as the pattern was being formed and does the validation at the end in HandleMergeInputChains when it forms a structural pattern. This scans "down" the graph, which means that it is quickly bounded by nodes already selected. This also handles token factors that get "trapped" in the dag. Removing the CheckChainCompatible nodes also shrinks the generated tables by about 6K for X86 (down to 83K). There are two pieces remaining before I can nuke PreprocessRMW: 1. I xfailed a test because we're now producing worse code in a case that has nothing to do with the change: it turns out that our use of MorphNodeTo will leave dead nodes in the graph which (depending on how the graph is walked) end up causing bogus uses of chains and blocking matches. This is really bad for other reasons, so I'll fix this in a follow-up patch. 2. CheckFoldableChainNode needs to be improved to handle the TF. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97539 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate more uses of llvm-as and llvm-dis.Dan Gohman2009-09-081-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81290 91177308-0d34-0410-b5e6-96231b3b80d8
* Byebye llvm-upgrade!Tanya Lattner2008-03-251-38/+29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48762 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert tests using "| wc -l | grep ..." to use the count script.Dan Gohman2007-08-151-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41097 91177308-0d34-0410-b5e6-96231b3b80d8
* Change the x86 assembly output to use tab characters to separate theDan Gohman2007-07-311-1/+1
| | | | | | | | | | mnemonics from their operands instead of single spaces. This makes the assembly output a little more consistent with various other compilers (f.e. GCC), and slightly easier to read. Also, update the regression tests accordingly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40648 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1319: Upgrade to new test harness.Reid Spencer2007-04-151-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36091 91177308-0d34-0410-b5e6-96231b3b80d8
* Use the llvm-upgrade program to upgrade llvm assembly.Reid Spencer2006-12-021-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32115 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix test case.Evan Cheng2006-10-231-6/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31127 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix test case so it passes on x86-64.Evan Cheng2006-08-291-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29963 91177308-0d34-0410-b5e6-96231b3b80d8
* Undo xfail.Evan Cheng2006-08-291-5/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29958 91177308-0d34-0410-b5e6-96231b3b80d8
* XFAIL for now.Evan Cheng2006-07-241-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29272 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a test case for (store (op (load ..) ..) ..) folding.Evan Cheng2006-03-091-0/+45
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26656 91177308-0d34-0410-b5e6-96231b3b80d8