- Jan 02, 2013
-
-
Chandler Carruth authored
into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. llvm-svn: 171366
-
Chandler Carruth authored
utils/sort_includes.py script. Most of these are updating the new R600 target and fixing up a few regressions that have creeped in since the last time I sorted the includes. llvm-svn: 171362
-
Craig Topper authored
llvm-svn: 171356
-
Craig Topper authored
llvm-svn: 171355
-
Rafael Espindola authored
llvm-svn: 171352
-
- Jan 01, 2013
-
-
Craig Topper authored
llvm-svn: 171351
-
Craig Topper authored
llvm-svn: 171340
-
Craig Topper authored
llvm-svn: 171339
-
Craig Topper authored
llvm-svn: 171338
-
Craig Topper authored
llvm-svn: 171337
-
Craig Topper authored
Use packed instead of scalar itineraries for SSE1/2 SQRTPS/PD, RCPPS, and RSQRTPS. VEX-encoded forms already use packed. llvm-svn: 171336
-
- Dec 31, 2012
-
-
Bill Wendling authored
Remove the getAttributesAtIndex and getNumAttrs methods in favor of using the getAttrSomewhere predicate. This prevents the uses of 'Attribute' as a collection of attributes. llvm-svn: 171271
-
- Dec 30, 2012
-
-
Nuno Lopes authored
The later API is nicer than the former, and is correct regarding wrap-around offsets (if anyone cares). There are a few more places left with duplicated code, which I'll remove soon. llvm-svn: 171259
-
Bill Wendling authored
llvm-svn: 171257
-
Bill Wendling authored
llvm-svn: 171256
-
Bill Wendling authored
llvm-svn: 171255
-
Bill Wendling authored
directly. This is in preparation for removing the use of the 'Attribute' class as a collection of attributes. That will shift to the AttributeSet class instead. llvm-svn: 171253
-
Bill Wendling authored
llvm-svn: 171252
-
- Dec 29, 2012
-
-
Craig Topper authored
Remove intrinsic specific instructions for (V)SQRTPS/PD. Instead lower to target-independent ISD nodes and use the existing patterns for those. llvm-svn: 171237
-
Craig Topper authored
llvm-svn: 171229
-
Craig Topper authored
Remove intrinsic specific instructions for SSE/SSE2/AVX floating point max/min instructions. Lower them to target specific nodes and use those patterns instead. This also allows them to be commuted if UnsafeFPMath is enabled. llvm-svn: 171227
-
Jakub Staszak authored
llvm-svn: 171226
-
Jakub Staszak authored
llvm-svn: 171225
-
- Dec 28, 2012
-
-
Nadav Rotem authored
llvm-svn: 171180
-
Nadav Rotem authored
llvm-svn: 171179
-
Nadav Rotem authored
AVX: Move the ZEXT/ANYEXT DAGCo optimizations to the lowering of these optimizations. The old test cases still cover all of these lowering/optimizations. The single change that we have is that now anyext does not need to zero a register, because it does not use the exact code path as the zero_extend. llvm-svn: 171178
-
Nadav Rotem authored
llvm-svn: 171172
-
- Dec 27, 2012
-
-
Craig Topper authored
llvm-svn: 171171
-
Nadav Rotem authored
llvm-svn: 171170
-
Craig Topper authored
llvm-svn: 171166
-
Nadav Rotem authored
register. In most cases we actually compare or select YMM-sized registers and mixing the two types creates horrible code. This commit optimizes some of the transition sequences. PR14657. llvm-svn: 171148
-
Nadav Rotem authored
The vector truncs were scalarized during LegalizeVectorOps, later vectorized again by some DAGCombine optimization and finally, lowered by a dagcombing optimization. Now, they are properly lowered during LegalizeVectorOps. No new testcase because the original testcases still work. llvm-svn: 171146
-
Craig Topper authored
llvm-svn: 171143
-
Craig Topper authored
Move single letter 'P' prefix out of multiclass now that tablegen allows defm to start with #NAME. This makes instruction names more searchable again. llvm-svn: 171141
-
Craig Topper authored
Add hasSideEffects=0 to some shift and rotate instructions. None of which are currently used by code generation. llvm-svn: 171137
-
Craig Topper authored
llvm-svn: 171136
-
Craig Topper authored
llvm-svn: 171130
-
Craig Topper authored
Add mayLoad, mayStore, and hasSideEffects tags to BT/BTS/BTR/BTC instructions. Shouldn't change any functionality since they don't have patterns to select them. llvm-svn: 171128
-
Craig Topper authored
Fix operands and encoding form for ARPL instruction. Register form had and reversed. Memory form writes memory, but was marked as MRMSrcMem. llvm-svn: 171123
-
Craig Topper authored
llvm-svn: 171122
-