- Nov 27, 2011
-
-
Chris Lattner authored
that mainline needs no autoupgrade logic for intrinsics yet, woohoo! llvm-svn: 145178
-
Chris Lattner authored
I'll work on turning this into something intelligible tomorrow. llvm-svn: 145177
-
Chris Lattner authored
autoupgrade logic for 2.9 and before. llvm-svn: 145176
-
Chris Lattner authored
trampoline forms. Both of these were correct in LLVM 3.0, and we don't need to support LLVM 2.9 and earlier in mainline. llvm-svn: 145174
-
Chris Lattner authored
llvm-svn: 145173
-
Chris Lattner authored
remove asmparsing and documentation support for "volatile load", which was only produced by LLVM 2.9 and earlier. LLVM 3.0 and later prefers "load volatile". llvm-svn: 145172
-
Chris Lattner authored
Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. llvm-svn: 145171
-
Chris Lattner authored
llvm-svn: 145170
-
Chris Lattner authored
I think this is the last of autoupgrade that can be removed in 3.1. Can the atomic upgrade stuff also go? llvm-svn: 145169
-
Chris Lattner authored
llvm-svn: 145167
-
Chris Lattner authored
LLVM 3.0 and later. llvm-svn: 145165
-
Chris Lattner authored
llvm-svn: 145164
-
Chris Lattner authored
llvm-svn: 145163
-
Wesley Peck authored
These instructions are not generated by the backend yet, this will come in a later commit. llvm-svn: 145161
-
Bob Wilson authored
Removing that buildbot would be a better solution, but this is at least a temporary workaround. llvm-svn: 145160
-
Wesley Peck authored
Fix a couple of 80-column violations. llvm-svn: 145159
-
Chandler Carruth authored
pass. This is designed to achieve one of the important optimizations that the old code placement pass did, but more simply. This is a somewhat rough and *very* conservative version of the transform. We could get a lot fancier here if there are profitable cases to do so. In particular, this only looks for a single pattern, it insists that the loop backedge being rotated away is the last backedge in the chain, and it doesn't provide any means of doing better in-loop placement due to the rotation. However, it appears that it will handle the important loops I am finding in the LLVM test suite. llvm-svn: 145158
-
-
Benjamin Kramer authored
llvm-svn: 145154
-
- Nov 26, 2011
-
-
Craig Topper authored
Merge 128-bit and 256-bit X86ISD node types for VPERMILPS and VPERMILPD. Simplify some shuffle lowering code since V1 can never be UNDEF due to canonalizing that occurs when shuffle nodes are created. llvm-svn: 145153
-
Wesley Peck authored
llvm-svn: 145152
-
Craig Topper authored
Collapse X86ISD node types for PUNPCKH*, PUNPCKL*, UNPCKLP*, and UNPCKHP* to not be type specific. Now we just have integer high and low and floating point high and low. Pattern matching will choose the correct instruction based on the vector type. llvm-svn: 145148
-
Benjamin Kramer authored
llvm-svn: 145145
-
David Chisnall authored
llvm-svn: 145144
-
Chandler Carruth authored
for adding other tests. llvm-svn: 145143
-
Eli Friedman authored
was returning incorrect values in rare cases, and incorrectly marking exact conversions as inexact in some more common cases. Fixes PR11406, and a missed optimization in test/CodeGen/X86/fp-stack-O0.ll. llvm-svn: 145141
-
- Nov 25, 2011
-
-
Benjamin Kramer authored
llvm-svn: 145138
-
Benjamin Kramer authored
I don't see how the project is using LLVM and we really can't list every user of the clang analyzer. Sorry. llvm-svn: 145137
-
Chris Lattner authored
llvm-svn: 145136
-
Chris Lattner authored
llvm-svn: 145135
-
Chris Lattner authored
llvm-svn: 145134
-
Bruno Cardoso Lopes authored
tablegen patterns for scalar FMA4 operations and intrinsic. Also add tests for vfmaddsd. Patch by Jan Sjodin llvm-svn: 145133
-
NAKAMURA Takumi authored
llvm-svn: 145129
-
- Nov 24, 2011
-
-
Craig Topper authored
Remove 256-bit specific node types for UNPCKHPS/D and instead use the 128-bit versions and let the operand type disinquish. Also fix the load form of the v8i32 patterns for these to realize that the load would be promoted to v4i64. llvm-svn: 145126
-
Craig Topper authored
Remove AVX2 specific X86ISD node types for PUNPCKH/L and instead just reuse the 128-bit versions and let the vector type distinguish. llvm-svn: 145125
-
Benjamin Kramer authored
While at it pull the trivial ctor in line. llvm-svn: 145124
-
Benjamin Kramer authored
llvm-svn: 145122
-
Benjamin Kramer authored
llvm-svn: 145121
-
Chandler Carruth authored
need lots of fanciness around retaining a reference to a Chain's slot in the BlockToChain map, but that's all gone now. We can just go directly to allocating the new chain (which will update the mapping for us) and using it. Somewhat gross mechanically generated test case replicates the issue Duncan spotted when actually testing this out. llvm-svn: 145120
-
Chandler Carruth authored
conflicts, we should only be adding the first block of the chain to the list, lest we try to merge into the middle of that chain. Most of the places we were doing this we already happened to be looking at the first block, but there is no reason to assume that, and in some cases it was clearly wrong. I've added a couple of tests here. One already worked, but I like having an explicit test for it. The other is reduced from a test case Duncan reduced for me and used to crash. Now it is handled correctly. llvm-svn: 145119
-