- Jan 28, 2013
-
-
Craig Topper authored
llvm-svn: 173667
-
- Jan 17, 2013
-
-
Craig Topper authored
Combine AVX and SSE forms of MOVSS and MOVSD into the same multiclasses so they get instantiated together. llvm-svn: 172704
-
- Jan 14, 2013
-
-
Craig Topper authored
llvm-svn: 172379
-
Craig Topper authored
Create a single multiclass for SSE and AVX version of MOVL/MOVH. Prevents needing to specify everything twice. No functional change intended llvm-svn: 172378
-
- Jan 13, 2013
-
-
Benjamin Kramer authored
Those can occur when something between the sextload and the store is on the same chain and blocks isel. Fixes PR14887. llvm-svn: 172353
-
- Jan 07, 2013
-
-
Craig Topper authored
llvm-svn: 171694
-
- Jan 06, 2013
-
-
Craig Topper authored
Fix suffix handling for parsing and printing of cvtsi2ss, cvtsi2sd, cvtss2si, cvttss2si, cvtsd2si, and cvttsd2si to match gas behavior. cvtsi2* should parse with an 'l' or 'q' suffix or no suffix at all. No suffix should be treated the same as 'l' suffix. Printing should always print a suffix. Previously we didn't parse or print an 'l' suffix. cvtt*2si/cvt*2si should parse with an 'l' or 'q' suffix or not suffix at all. No suffix should use the destination register size to choose encoding. Printing should not print a suffix. Original 'l' suffix issue with cvtsi2* pointed out by Michael Kuperstein. llvm-svn: 171668
-
- Jan 02, 2013
-
-
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 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
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
-
- Dec 27, 2012
-
-
Craig Topper authored
llvm-svn: 171171
-
Craig Topper authored
llvm-svn: 171166
-
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
-
- Dec 26, 2012
-
-
Craig Topper authored
Mark all the _REV instructions as not having side effects. They aren't really emitted by the backend, but it reduces the number of instructions in the output files with unmodelled side effects to make auditing easier. llvm-svn: 171118
-
Craig Topper authored
Remove a special conditional setting of neverHasSideEffects if the instruction didn't have a pattern. This was leftover from when tablegen used to complain if things were already inferred from patterns. llvm-svn: 171117
-
Craig Topper authored
llvm-svn: 171103
-
Craig Topper authored
llvm-svn: 171102
-
Craig Topper authored
llvm-svn: 171097
-
Craig Topper authored
llvm-svn: 171096
-
Craig Topper authored
llvm-svn: 171095
-
Craig Topper authored
llvm-svn: 171093
-
Craig Topper authored
Use an additional multiclass to merge the 128/256-bit SSE/AVX instruction definitions for a bunch of SSE2 integer arithmetic instructions. llvm-svn: 171092
-
Craig Topper authored
Use an additional multiclass to merge the 128/256-bit SSE/AVX instruction definitions for PAND/POR/PXOR/PANDN llvm-svn: 171087
-
Craig Topper authored
llvm-svn: 171086
-
Craig Topper authored
llvm-svn: 171085
-
- Dec 21, 2012
-
-
Benjamin Kramer authored
This is very mechanical, no functionality change. Preparation for PR14667. llvm-svn: 170898
-
- Dec 19, 2012
-
-
Elena Demikhovsky authored
llvm-svn: 170506
-
- Dec 15, 2012
-
-
Benjamin Kramer authored
We match the pattern "x >= y ? x-y : 0" into "subus x, y" and two special cases if y is a constant. DAGCombiner canonicalizes those so we first have to undo the canonicalization for those cases. The pattern occurs in gzip when the loop vectorizer is enabled. Part of PR14613. llvm-svn: 170273
-
- Dec 06, 2012
-
-
Craig Topper authored
Remove intrinsic specific instructions for (V)MOVQUmr with patterns pointing to the normal instructions. llvm-svn: 169482
-
Craig Topper authored
llvm-svn: 169477
-
- Dec 05, 2012
-
-
Elena Demikhovsky authored
Generate VPBLENDD for AVX2 and VPBLENDW for v16i16 type on AVX2. llvm-svn: 169366
-