diff options
| author | Benjamin Kramer <benny.kra@googlemail.com> | 2014-10-22 19:55:26 +0000 |
|---|---|---|
| committer | Benjamin Kramer <benny.kra@googlemail.com> | 2014-10-22 19:55:26 +0000 |
| commit | 7ad22403fbc5328c5295d802f4dc5c24000cfd62 (patch) | |
| tree | b37c467541975672cc1a14db17215e471ed10db8 | |
| parent | 3c7dd6be207e720747d0f125ef1ca66baf024339 (diff) | |
| download | bcm5719-llvm-7ad22403fbc5328c5295d802f4dc5c24000cfd62.tar.gz bcm5719-llvm-7ad22403fbc5328c5295d802f4dc5c24000cfd62.zip | |
Strength reduce constant-sized vectors into arrays. No functionality change.
llvm-svn: 220412
| -rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 4 | ||||
| -rw-r--r-- | llvm/lib/Support/Unix/Signals.inc | 14 |
2 files changed, 8 insertions, 10 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp index df95d291a39..6fe4ade4aa8 100644 --- a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp @@ -3154,7 +3154,7 @@ SDValue DAGCombiner::MatchBSwapHWordLow(SDNode *N, SDValue N0, SDValue N1, /// ((x & 0x0000ff00) >> 8) | /// ((x & 0x00ff0000) << 8) | /// ((x & 0xff000000) >> 8) -static bool isBSwapHWordElement(SDValue N, SmallVectorImpl<SDNode *> &Parts) { +static bool isBSwapHWordElement(SDValue N, MutableArrayRef<SDNode *> Parts) { if (!N.getNode()->hasOneUse()) return false; @@ -3237,7 +3237,6 @@ SDValue DAGCombiner::MatchBSwapHWord(SDNode *N, SDValue N0, SDValue N1) { if (!TLI.isOperationLegal(ISD::BSWAP, VT)) return SDValue(); - SmallVector<SDNode*,4> Parts(4, (SDNode*)nullptr); // Look for either // (or (or (and), (and)), (or (and), (and))) // (or (or (or (and), (and)), (and)), (and)) @@ -3245,6 +3244,7 @@ SDValue DAGCombiner::MatchBSwapHWord(SDNode *N, SDValue N0, SDValue N1) { return SDValue(); SDValue N00 = N0.getOperand(0); SDValue N01 = N0.getOperand(1); + SDNode *Parts[4] = {}; if (N1.getOpcode() == ISD::OR && N00.getNumOperands() == 2 && N01.getNumOperands() == 2) { diff --git a/llvm/lib/Support/Unix/Signals.inc b/llvm/lib/Support/Unix/Signals.inc index d9463b915b9..5de3a25476b 100644 --- a/llvm/lib/Support/Unix/Signals.inc +++ b/llvm/lib/Support/Unix/Signals.inc @@ -349,13 +349,6 @@ static bool printSymbolizedStackTrace(void **StackTrace, int Depth, FILE *FD) { sys::fs::createTemporaryFile("symbolizer-output", "", OutputFile); FileRemover InputRemover(InputFile.c_str()); FileRemover OutputRemover(OutputFile.c_str()); - std::vector<const StringRef *> Redirects(3, nullptr); - StringRef InputFileStr(InputFile); - StringRef OutputFileStr(OutputFile); - StringRef StderrFileStr; - Redirects[0] = &InputFileStr; - Redirects[1] = &OutputFileStr; - Redirects[2] = &StderrFileStr; { raw_fd_ostream Input(InputFD, true); @@ -365,10 +358,15 @@ static bool printSymbolizedStackTrace(void **StackTrace, int Depth, FILE *FD) { } } + StringRef InputFileStr(InputFile); + StringRef OutputFileStr(OutputFile); + StringRef StderrFileStr; + const StringRef *Redirects[] = {&InputFileStr, &OutputFileStr, + &StderrFileStr}; const char *Args[] = {"llvm-symbolizer", "--functions=linkage", "--inlining", "--demangle", nullptr}; int RunResult = - sys::ExecuteAndWait(LLVMSymbolizerPath, Args, nullptr, Redirects.data()); + sys::ExecuteAndWait(LLVMSymbolizerPath, Args, nullptr, Redirects); if (RunResult != 0) return false; |

