[PATCH] D30387: [X86] Fix SmallVector sizes in constant pool shuffle decoding to avoid heap allocation

Phabricator via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 27 08:27:27 PST 2017


This revision was automatically updated to reflect the committed changes.
Closed by commit rL296353: [X86] Fix SmallVector sizes in constant pool shuffle decoding to avoid heap… (authored by ctopper).

Changed prior to commit:
  https://reviews.llvm.org/D30387?vs=89827&id=89886#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D30387

Files:
  llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp


Index: llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp
===================================================================
--- llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp
+++ llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp
@@ -104,7 +104,7 @@
 
   // The shuffle mask requires a byte vector.
   APInt UndefElts;
-  SmallVector<uint64_t, 32> RawMask;
+  SmallVector<uint64_t, 64> RawMask;
   if (!extractConstantMask(C, 8, UndefElts, RawMask))
     return;
 
@@ -145,7 +145,7 @@
 
   // The shuffle mask requires elements the same size as the target.
   APInt UndefElts;
-  SmallVector<uint64_t, 8> RawMask;
+  SmallVector<uint64_t, 16> RawMask;
   if (!extractConstantMask(C, ElSize, UndefElts, RawMask))
     return;
 
@@ -231,7 +231,7 @@
 
   // The shuffle mask requires a byte vector.
   APInt UndefElts;
-  SmallVector<uint64_t, 32> RawMask;
+  SmallVector<uint64_t, 16> RawMask;
   if (!extractConstantMask(C, 8, UndefElts, RawMask))
     return;
 
@@ -286,7 +286,7 @@
 
   // The shuffle mask requires elements the same size as the target.
   APInt UndefElts;
-  SmallVector<uint64_t, 8> RawMask;
+  SmallVector<uint64_t, 64> RawMask;
   if (!extractConstantMask(C, ElSize, UndefElts, RawMask))
     return;
 
@@ -314,7 +314,7 @@
 
   // The shuffle mask requires elements the same size as the target.
   APInt UndefElts;
-  SmallVector<uint64_t, 8> RawMask;
+  SmallVector<uint64_t, 64> RawMask;
   if (!extractConstantMask(C, ElSize, UndefElts, RawMask))
     return;
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D30387.89886.patch
Type: text/x-patch
Size: 1516 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170227/4f067c7c/attachment.bin>


More information about the llvm-commits mailing list