mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-01 15:11:24 +00:00
X86: Don't call malloc for 4 bits. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149866 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
7ba962fe4a
commit
699ddcbcb3
@ -39,7 +39,6 @@
|
||||
#include "llvm/MC/MCContext.h"
|
||||
#include "llvm/MC/MCExpr.h"
|
||||
#include "llvm/MC/MCSymbol.h"
|
||||
#include "llvm/ADT/BitVector.h"
|
||||
#include "llvm/ADT/SmallSet.h"
|
||||
#include "llvm/ADT/Statistic.h"
|
||||
#include "llvm/ADT/StringExtras.h"
|
||||
@ -5412,7 +5411,7 @@ X86TargetLowering::LowerVECTOR_SHUFFLEv8i16(SDValue Op,
|
||||
// mask values count as coming from any quadword, for better codegen.
|
||||
unsigned LoQuad[] = { 0, 0, 0, 0 };
|
||||
unsigned HiQuad[] = { 0, 0, 0, 0 };
|
||||
BitVector InputQuads(4);
|
||||
std::bitset<4> InputQuads;
|
||||
for (unsigned i = 0; i < 8; ++i) {
|
||||
unsigned *Quad = i < 4 ? LoQuad : HiQuad;
|
||||
int EltIdx = SVOp->getMaskElt(i);
|
||||
@ -5454,8 +5453,8 @@ X86TargetLowering::LowerVECTOR_SHUFFLEv8i16(SDValue Op,
|
||||
bool V2Used = InputQuads[2] || InputQuads[3];
|
||||
if (Subtarget->hasSSSE3()) {
|
||||
if (InputQuads.count() == 2 && V1Used && V2Used) {
|
||||
BestLoQuad = InputQuads.find_first();
|
||||
BestHiQuad = InputQuads.find_next(BestLoQuad);
|
||||
BestLoQuad = InputQuads[0] ? 0 : 1;
|
||||
BestHiQuad = InputQuads[2] ? 2 : 3;
|
||||
}
|
||||
if (InputQuads.count() > 2) {
|
||||
BestLoQuad = -1;
|
||||
|
Loading…
Reference in New Issue
Block a user