<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, May 29, 2015 at 12:43 PM, Benjamin Kramer <span dir="ltr"><<a href="mailto:benny.kra@googlemail.com" target="_blank">benny.kra@googlemail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: d0k<br>
Date: Fri May 29 14:43:39 2015<br>
New Revision: 238602<br>
<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject-3Frev-3D238602-26view-3Drev&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=IA287thdbGZWxfIfsBvlDA3bj-_bfsuvBodN7ZXTt3o&e=" target="_blank">http://llvm.org/viewvc/llvm-project?rev=238602&view=rev</a><br>
Log:<br>
Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types<br></blockquote><div><br>Totally open to discussion - but I kind of prefer the former than the latter except where I need the object to not move around (eg: because I need pointer identity during the ctor, etc). If the type's cheaply movable, even if not trivially so, I usually avoid emplace.<br><br>- David<br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
If the type isn't trivially moveable emplace can skip a potentially<br>
expensive move. It also saves a couple of characters.<br>
<br>
<br>
Call sites were found with the ASTMatcher + some semi-automated cleanup.<br>
<br>
memberCallExpr(<br>
argumentCountIs(1), callee(methodDecl(hasName("push_back"))),<br>
on(hasType(recordDecl(has(namedDecl(hasName("emplace_back")))))),<br>
hasArgument(0, bindTemporaryExpr(<br>
hasType(recordDecl(hasNonTrivialDestructor())),<br>
has(constructExpr()))),<br>
unless(isInTemplateInstantiation()))<br>
<br>
No functional change intended.<br>
<br>
Modified:<br>
llvm/trunk/include/llvm/Analysis/CallGraph.h<br>
llvm/trunk/include/llvm/Bitcode/BitstreamReader.h<br>
llvm/trunk/include/llvm/Bitcode/BitstreamWriter.h<br>
llvm/trunk/include/llvm/CodeGen/GCMetadata.h<br>
llvm/trunk/include/llvm/CodeGen/ScheduleDAGInstrs.h<br>
llvm/trunk/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h<br>
llvm/trunk/lib/Analysis/AliasSetTracker.cpp<br>
llvm/trunk/lib/Analysis/ScalarEvolutionExpander.cpp<br>
llvm/trunk/lib/AsmParser/LLParser.cpp<br>
llvm/trunk/lib/Bitcode/Reader/BitcodeReader.cpp<br>
llvm/trunk/lib/CodeGen/MachineModuleInfo.cpp<br>
llvm/trunk/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp<br>
llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp<br>
llvm/trunk/lib/DebugInfo/DWARF/DWARFContext.cpp<br>
llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp<br>
llvm/trunk/lib/ExecutionEngine/ExecutionEngineBindings.cpp<br>
llvm/trunk/lib/ExecutionEngine/Interpreter/Execution.cpp<br>
llvm/trunk/lib/MC/MCParser/AsmParser.cpp<br>
llvm/trunk/lib/TableGen/TGParser.cpp<br>
llvm/trunk/lib/Transforms/IPO/MergeFunctions.cpp<br>
llvm/trunk/lib/Transforms/InstCombine/InstructionCombining.cpp<br>
llvm/trunk/lib/Transforms/Scalar/IndVarSimplify.cpp<br>
llvm/trunk/lib/Transforms/Scalar/LoopStrengthReduce.cpp<br>
llvm/trunk/lib/Transforms/Scalar/Reassociate.cpp<br>
llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp<br>
llvm/trunk/lib/Transforms/Utils/SimplifyIndVar.cpp<br>
llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp<br>
llvm/trunk/tools/bugpoint/CrashDebugger.cpp<br>
llvm/trunk/tools/bugpoint/Miscompilation.cpp<br>
llvm/trunk/tools/lli/OrcLazyJIT.h<br>
llvm/trunk/tools/llvm-cov/CodeCoverage.cpp<br>
llvm/trunk/tools/llvm-pdbdump/LinePrinter.h<br>
llvm/trunk/utils/FileCheck/FileCheck.cpp<br>
llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp<br>
llvm/trunk/utils/TableGen/AsmWriterEmitter.cpp<br>
llvm/trunk/utils/TableGen/AsmWriterInst.cpp<br>
llvm/trunk/utils/TableGen/CodeGenDAGPatterns.cpp<br>
llvm/trunk/utils/TableGen/CodeGenInstruction.cpp<br>
llvm/trunk/utils/TableGen/CodeGenRegisters.cpp<br>
llvm/trunk/utils/TableGen/CodeGenSchedule.cpp<br>
llvm/trunk/utils/TableGen/FixedLenDecoderEmitter.cpp<br>
llvm/trunk/utils/TableGen/IntrinsicEmitter.cpp<br>
<br>
Modified: llvm/trunk/include/llvm/Analysis/CallGraph.h<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_include_llvm_Analysis_CallGraph.h-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=MX7VSA8O1liScIYw3B7C7LH2RkXXhnrIt-RAEXu5_oc&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Analysis/CallGraph.h?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/Analysis/CallGraph.h (original)<br>
+++ llvm/trunk/include/llvm/Analysis/CallGraph.h Fri May 29 14:43:39 2015<br>
@@ -230,7 +230,7 @@ public:<br>
void addCalledFunction(CallSite CS, CallGraphNode *M) {<br>
assert(!CS.getInstruction() || !CS.getCalledFunction() ||<br>
!CS.getCalledFunction()->isIntrinsic());<br>
- CalledFunctions.push_back(std::make_pair(CS.getInstruction(), M));<br>
+ CalledFunctions.emplace_back(CS.getInstruction(), M);<br>
M->AddRef();<br>
}<br>
<br>
<br>
Modified: llvm/trunk/include/llvm/Bitcode/BitstreamReader.h<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_include_llvm_Bitcode_BitstreamReader.h-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=m2LD8jY2LYP7qPTLHPwnN6wbPEiSPWnIrLzXWbNeI6w&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Bitcode/BitstreamReader.h?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/Bitcode/BitstreamReader.h (original)<br>
+++ llvm/trunk/include/llvm/Bitcode/BitstreamReader.h Fri May 29 14:43:39 2015<br>
@@ -113,7 +113,7 @@ public:<br>
return *const_cast<BlockInfo*>(BI);<br>
<br>
// Otherwise, add a new record.<br>
- BlockInfoRecords.push_back(BlockInfo());<br>
+ BlockInfoRecords.emplace_back();<br>
BlockInfoRecords.back().BlockID = BlockID;<br>
return BlockInfoRecords.back();<br>
}<br>
<br>
Modified: llvm/trunk/include/llvm/Bitcode/BitstreamWriter.h<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_include_llvm_Bitcode_BitstreamWriter.h-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=l0-TS_zC_1dd76KFjGHnFP8KHmdAQ0N_egT7-8eJ7ts&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Bitcode/BitstreamWriter.h?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/Bitcode/BitstreamWriter.h (original)<br>
+++ llvm/trunk/include/llvm/Bitcode/BitstreamWriter.h Fri May 29 14:43:39 2015<br>
@@ -215,7 +215,7 @@ public:<br>
<br>
// Push the outer block's abbrev set onto the stack, start out with an<br>
// empty abbrev set.<br>
- BlockScope.push_back(Block(OldCodeSize, BlockSizeWordIndex));<br>
+ BlockScope.emplace_back(OldCodeSize, BlockSizeWordIndex);<br>
BlockScope.back().PrevAbbrevs.swap(CurAbbrevs);<br>
<br>
// If there is a blockinfo for this BlockID, add all the predefined abbrevs<br>
@@ -503,7 +503,7 @@ private:<br>
return *BI;<br>
<br>
// Otherwise, add a new record.<br>
- BlockInfoRecords.push_back(BlockInfo());<br>
+ BlockInfoRecords.emplace_back();<br>
BlockInfoRecords.back().BlockID = BlockID;<br>
return BlockInfoRecords.back();<br>
}<br>
<br>
Modified: llvm/trunk/include/llvm/CodeGen/GCMetadata.h<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_include_llvm_CodeGen_GCMetadata.h-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=mkrUlhHe5RCD9-N_NJ4LnAJzmv-Ktj1Rbsw7qZUl6ag&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/GCMetadata.h?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/CodeGen/GCMetadata.h (original)<br>
+++ llvm/trunk/include/llvm/CodeGen/GCMetadata.h Fri May 29 14:43:39 2015<br>
@@ -121,7 +121,7 @@ public:<br>
/// label just prior to the safe point (if the code generator is using<br>
/// MachineModuleInfo).<br>
void addSafePoint(GC::PointKind Kind, MCSymbol *Label, DebugLoc DL) {<br>
- SafePoints.push_back(GCPoint(Kind, Label, DL));<br>
+ SafePoints.emplace_back(Kind, Label, DL);<br>
}<br>
<br>
/// getFrameSize/setFrameSize - Records the function's frame size.<br>
<br>
Modified: llvm/trunk/include/llvm/CodeGen/ScheduleDAGInstrs.h<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_include_llvm_CodeGen_ScheduleDAGInstrs.h-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=RuNSK5y7Si_VeLgbbLj0rT86RieEjhX6K37bNNtqgH0&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/ScheduleDAGInstrs.h?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/CodeGen/ScheduleDAGInstrs.h (original)<br>
+++ llvm/trunk/include/llvm/CodeGen/ScheduleDAGInstrs.h Fri May 29 14:43:39 2015<br>
@@ -260,7 +260,7 @@ namespace llvm {<br>
#ifndef NDEBUG<br>
const SUnit *Addr = SUnits.empty() ? nullptr : &SUnits[0];<br>
#endif<br>
- SUnits.push_back(SUnit(MI, (unsigned)SUnits.size()));<br>
+ SUnits.emplace_back(MI, (unsigned)SUnits.size());<br>
assert((Addr == nullptr || Addr == &SUnits[0]) &&<br>
"SUnits std::vector reallocated on the fly!");<br>
SUnits.back().OrigNode = &SUnits.back();<br>
<br>
Modified: llvm/trunk/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_include_llvm_ExecutionEngine_Orc_CompileOnDemandLayer.h-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=NIVkhQKGGnKaYlDVR0gLbgFxBUQYS40dxl-SqkCOm6w&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h (original)<br>
+++ llvm/trunk/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h Fri May 29 14:43:39 2015<br>
@@ -390,8 +390,7 @@ public:<br>
for (auto &F : *M) {<br>
if (F.isDeclaration())<br>
continue;<br>
- Partitioning.push_back(std::vector<Function*>());<br>
- Partitioning.back().push_back(&F);<br>
+ Partitioning.emplace_back(1, &F);<br>
}<br>
addLogicalModule(*LogicalDylibs.back(),<br>
std::shared_ptr<Module>(std::move(M)),<br>
<br>
Modified: llvm/trunk/lib/Analysis/AliasSetTracker.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Analysis_AliasSetTracker.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=AzP43n9ex5kCMfp873ZmeVYOoC0lIrW4Y-jhDBBXsfk&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/AliasSetTracker.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Analysis/AliasSetTracker.cpp (original)<br>
+++ llvm/trunk/lib/Analysis/AliasSetTracker.cpp Fri May 29 14:43:39 2015<br>
@@ -130,7 +130,7 @@ void AliasSet::addPointer(AliasSetTracke<br>
void AliasSet::addUnknownInst(Instruction *I, AliasAnalysis &AA) {<br>
if (UnknownInsts.empty())<br>
addRef();<br>
- UnknownInsts.push_back(I);<br>
+ UnknownInsts.emplace_back(I);<br>
<br>
if (!I->mayWriteToMemory()) {<br>
AliasTy = MayAlias;<br>
<br>
Modified: llvm/trunk/lib/Analysis/ScalarEvolutionExpander.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Analysis_ScalarEvolutionExpander.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=bCIrOlvP_F8NNqQfjaSHU4eCMJf9z2HGKBJTPkafrr4&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/ScalarEvolutionExpander.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Analysis/ScalarEvolutionExpander.cpp (original)<br>
+++ llvm/trunk/lib/Analysis/ScalarEvolutionExpander.cpp Fri May 29 14:43:39 2015<br>
@@ -1712,7 +1712,7 @@ unsigned SCEVExpander::replaceCongruentI<br>
// would confuse the logic below that expects proper IVs.<br>
if (Value *V = SimplifyInstruction(Phi, DL, SE.TLI, SE.DT, <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__SE.AC&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=k6xCjOAsQZPyfSNROkHZRxnzALKqUmiJQJhN00M8o-M&e=" target="_blank">SE.AC</a>)) {<br>
Phi->replaceAllUsesWith(V);<br>
- DeadInsts.push_back(Phi);<br>
+ DeadInsts.emplace_back(Phi);<br>
++NumElim;<br>
DEBUG_WITH_TYPE(DebugType, dbgs()<br>
<< "INDVARS: Eliminated constant iv: " << *Phi << '\n');<br>
@@ -1787,7 +1787,7 @@ unsigned SCEVExpander::replaceCongruentI<br>
CreateTruncOrBitCast(OrigInc, IsomorphicInc->getType(), IVName);<br>
}<br>
IsomorphicInc->replaceAllUsesWith(NewInc);<br>
- DeadInsts.push_back(IsomorphicInc);<br>
+ DeadInsts.emplace_back(IsomorphicInc);<br>
}<br>
}<br>
DEBUG_WITH_TYPE(DebugType, dbgs()<br>
@@ -1800,7 +1800,7 @@ unsigned SCEVExpander::replaceCongruentI<br>
NewIV = Builder.CreateTruncOrBitCast(OrigPhiRef, Phi->getType(), IVName);<br>
}<br>
Phi->replaceAllUsesWith(NewIV);<br>
- DeadInsts.push_back(Phi);<br>
+ DeadInsts.emplace_back(Phi);<br>
}<br>
return NumElim;<br>
}<br>
<br>
Modified: llvm/trunk/lib/AsmParser/LLParser.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_AsmParser_LLParser.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=mP_VtvahH9ZlA0gOc9vzc3mA9E_-vognLdOAPaV8_y0&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/AsmParser/LLParser.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/AsmParser/LLParser.cpp (original)<br>
+++ llvm/trunk/lib/AsmParser/LLParser.cpp Fri May 29 14:43:39 2015<br>
@@ -1902,9 +1902,9 @@ bool LLParser::ParseArgumentList(SmallVe<br>
return Error(TypeLoc, "invalid type for function argument");<br>
<br>
unsigned AttrIndex = 1;<br>
- ArgList.push_back(ArgInfo(TypeLoc, ArgTy,<br>
- AttributeSet::get(ArgTy->getContext(),<br>
- AttrIndex++, Attrs), Name));<br>
+ ArgList.emplace_back(TypeLoc, ArgTy, AttributeSet::get(ArgTy->getContext(),<br>
+ AttrIndex++, Attrs),<br>
+ std::move(Name));<br>
<br>
while (EatIfPresent(lltok::comma)) {<br>
// Handle ... at end of arg list.<br>
@@ -1930,10 +1930,10 @@ bool LLParser::ParseArgumentList(SmallVe<br>
if (!ArgTy->isFirstClassType())<br>
return Error(TypeLoc, "invalid type for function argument");<br>
<br>
- ArgList.push_back(ArgInfo(TypeLoc, ArgTy,<br>
- AttributeSet::get(ArgTy->getContext(),<br>
- AttrIndex++, Attrs),<br>
- Name));<br>
+ ArgList.emplace_back(<br>
+ TypeLoc, ArgTy,<br>
+ AttributeSet::get(ArgTy->getContext(), AttrIndex++, Attrs),<br>
+ std::move(Name));<br>
}<br>
}<br>
<br>
<br>
Modified: llvm/trunk/lib/Bitcode/Reader/BitcodeReader.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Bitcode_Reader_BitcodeReader.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=Qm7umrFLz4x_lpLynzA35NNMaMjYt4ahYZpCKFYdXeU&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Bitcode/Reader/BitcodeReader.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Bitcode/Reader/BitcodeReader.cpp (original)<br>
+++ llvm/trunk/lib/Bitcode/Reader/BitcodeReader.cpp Fri May 29 14:43:39 2015<br>
@@ -63,9 +63,7 @@ public:<br>
// vector compatibility methods<br>
unsigned size() const { return ValuePtrs.size(); }<br>
void resize(unsigned N) { ValuePtrs.resize(N); }<br>
- void push_back(Value *V) {<br>
- ValuePtrs.push_back(V);<br>
- }<br>
+ void push_back(Value *V) { ValuePtrs.emplace_back(V); }<br>
<br>
void clear() {<br>
assert(ResolveConstants.empty() && "Constants not resolved?");<br>
<br>
Modified: llvm/trunk/lib/CodeGen/MachineModuleInfo.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_CodeGen_MachineModuleInfo.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=KwY2JZXViHIlOzSvlwQCuCbHiLyBdc9odhWZsrPC17s&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/MachineModuleInfo.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/CodeGen/MachineModuleInfo.cpp (original)<br>
+++ llvm/trunk/lib/CodeGen/MachineModuleInfo.cpp Fri May 29 14:43:39 2015<br>
@@ -114,7 +114,7 @@ MCSymbol *MMIAddrLabelMap::getAddrLabelS<br>
<br>
// Otherwise, this is a new entry, create a new symbol for it and add an<br>
// entry to BBCallbacks so we can be notified if the BB is deleted or RAUWd.<br>
- BBCallbacks.push_back(BB);<br>
+ BBCallbacks.emplace_back(BB);<br>
BBCallbacks.back().setMap(this);<br>
Entry.Index = BBCallbacks.size()-1;<br>
Entry.Fn = BB->getParent();<br>
<br>
Modified: llvm/trunk/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_CodeGen_SelectionDAG_ScheduleDAGSDNodes.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=RgJ7Q2ZAp6GngVHB6fHNTe1ssSJQXHnwaf38oTUcdMg&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp (original)<br>
+++ llvm/trunk/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp Fri May 29 14:43:39 2015<br>
@@ -71,7 +71,7 @@ SUnit *ScheduleDAGSDNodes::newSUnit(SDNo<br>
if (!SUnits.empty())<br>
Addr = &SUnits[0];<br>
#endif<br>
- SUnits.push_back(SUnit(N, (unsigned)SUnits.size()));<br>
+ SUnits.emplace_back(N, (unsigned)SUnits.size());<br>
assert((Addr == nullptr || Addr == &SUnits[0]) &&<br>
"SUnits std::vector reallocated on the fly!");<br>
SUnits.back().OrigNode = &SUnits.back();<br>
<br>
Modified: llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_CodeGen_SelectionDAG_SelectionDAGBuilder.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=fqU7nCNMHZwp07k7wem7Qw_md7GuW5gFNjVyfEh7tDk&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp (original)<br>
+++ llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp Fri May 29 14:43:39 2015<br>
@@ -7437,7 +7437,7 @@ bool SelectionDAGBuilder::buildJumpTable<br>
JumpTableHeader JTH(Clusters[First].Low->getValue(),<br>
Clusters[Last].High->getValue(), SI->getCondition(),<br>
nullptr, false);<br>
- JTCases.push_back(JumpTableBlock(JTH, JT));<br>
+ JTCases.emplace_back(std::move(JTH), std::move(JT));<br>
<br>
JTCluster = CaseCluster::jumpTable(Clusters[First].Low, Clusters[Last].High,<br>
JTCases.size() - 1, Weight);<br>
@@ -7650,9 +7650,9 @@ bool SelectionDAGBuilder::buildBitTests(<br>
FuncInfo.MF->CreateMachineBasicBlock(SI->getParent());<br>
BTI.push_back(BitTestCase(CB.Mask, BitTestBB, <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__CB.BB&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=fHxhNAvFzPgb3pFfh3FBLtG14LfAGnL9nrYOSApgcOQ&e=" target="_blank">CB.BB</a>, CB.ExtraWeight));<br>
}<br>
- BitTestCases.push_back(BitTestBlock(LowBound, CmpRange, SI->getCondition(),<br>
- -1U, MVT::Other, false, nullptr,<br>
- nullptr, std::move(BTI)));<br>
+ BitTestCases.emplace_back(std::move(LowBound), std::move(CmpRange),<br>
+ SI->getCondition(), -1U, MVT::Other, false, nullptr,<br>
+ nullptr, std::move(BTI));<br>
<br>
BTCluster = CaseCluster::bitTests(Clusters[First].Low, Clusters[Last].High,<br>
BitTestCases.size() - 1, TotalWeight);<br>
<br>
Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFContext.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_DebugInfo_DWARF_DWARFContext.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=R9Q14jtwtHH_Hygy6S7-DgPPmgaUINUjR429Danpb68&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFContext.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/DebugInfo/DWARF/DWARFContext.cpp (original)<br>
+++ llvm/trunk/lib/DebugInfo/DWARF/DWARFContext.cpp Fri May 29 14:43:39 2015<br>
@@ -352,7 +352,7 @@ void DWARFContext::parseTypeUnits() {<br>
if (!TUs.empty())<br>
return;<br>
for (const auto &I : getTypesSections()) {<br>
- TUs.push_back(DWARFUnitSection<DWARFTypeUnit>());<br>
+ TUs.emplace_back();<br>
TUs.back().parse(*this, I.second);<br>
}<br>
}<br>
@@ -365,7 +365,7 @@ void DWARFContext::parseDWOTypeUnits() {<br>
if (!DWOTUs.empty())<br>
return;<br>
for (const auto &I : getTypesDWOSections()) {<br>
- DWOTUs.push_back(DWARFUnitSection<DWARFTypeUnit>());<br>
+ DWOTUs.emplace_back();<br>
DWOTUs.back().parseDWO(*this, I.second);<br>
}<br>
}<br>
<br>
Modified: llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_ExecutionEngine_ExecutionEngine.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=6e8OJ70i3lTc05fF8Fa4xpzA-GQ018TxkcJeFUYJi_M&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp (original)<br>
+++ llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp Fri May 29 14:43:39 2015<br>
@@ -438,7 +438,7 @@ int ExecutionEngine::runFunctionAsMain(F<br>
if (NumArgs > 2) {<br>
std::vector<std::string> EnvVars;<br>
for (unsigned i = 0; envp[i]; ++i)<br>
- EnvVars.push_back(envp[i]);<br>
+ EnvVars.emplace_back(envp[i]);<br>
// Arg #2 = envp.<br>
GVArgs.push_back(PTOGV(CEnv.reset(Fn->getContext(), this, EnvVars)));<br>
}<br>
<br>
Modified: llvm/trunk/lib/ExecutionEngine/ExecutionEngineBindings.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_ExecutionEngine_ExecutionEngineBindings.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=Nvrfvv5A4-UoWm05aADxRu0yPUWJNLoTj7n6PbCxSN8&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/ExecutionEngine/ExecutionEngineBindings.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/ExecutionEngine/ExecutionEngineBindings.cpp (original)<br>
+++ llvm/trunk/lib/ExecutionEngine/ExecutionEngineBindings.cpp Fri May 29 14:43:39 2015<br>
@@ -254,11 +254,8 @@ int LLVMRunFunctionAsMain(LLVMExecutionE<br>
unsigned ArgC, const char * const *ArgV,<br>
const char * const *EnvP) {<br>
unwrap(EE)->finalizeObject();<br>
-<br>
- std::vector<std::string> ArgVec;<br>
- for (unsigned I = 0; I != ArgC; ++I)<br>
- ArgVec.push_back(ArgV[I]);<br>
-<br>
+<br>
+ std::vector<std::string> ArgVec(ArgV, ArgV + ArgC);<br>
return unwrap(EE)->runFunctionAsMain(unwrap<Function>(F), ArgVec, EnvP);<br>
}<br>
<br>
<br>
Modified: llvm/trunk/lib/ExecutionEngine/Interpreter/Execution.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_ExecutionEngine_Interpreter_Execution.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=IGYK1i6UsUGx0CmU-WHNEEdwag24EcZp4MtkF0ehpac&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/ExecutionEngine/Interpreter/Execution.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/ExecutionEngine/Interpreter/Execution.cpp (original)<br>
+++ llvm/trunk/lib/ExecutionEngine/Interpreter/Execution.cpp Fri May 29 14:43:39 2015<br>
@@ -2079,7 +2079,7 @@ void Interpreter::callFunction(Function<br>
ECStack.back().Caller.arg_size() == ArgVals.size()) &&<br>
"Incorrect number of arguments passed into function call!");<br>
// Make a new stack frame... and fill it in.<br>
- ECStack.push_back(ExecutionContext());<br>
+ ECStack.emplace_back();<br>
ExecutionContext &StackFrame = ECStack.back();<br>
StackFrame.CurFunction = F;<br>
<br>
<br>
Modified: llvm/trunk/lib/MC/MCParser/AsmParser.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_MC_MCParser_AsmParser.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=bs-rqqEcZDg8lkcG2D1kTqVmjZay3YS2aEEu5GlMUro&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCParser/AsmParser.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/MC/MCParser/AsmParser.cpp (original)<br>
+++ llvm/trunk/lib/MC/MCParser/AsmParser.cpp Fri May 29 14:43:39 2015<br>
@@ -1949,7 +1949,7 @@ bool AsmParser::parseMacroArgument(MCAsm<br>
if (Vararg) {<br>
if (Lexer.isNot(AsmToken::EndOfStatement)) {<br>
StringRef Str = parseStringToEndOfStatement();<br>
- MA.push_back(AsmToken(AsmToken::String, Str));<br>
+ MA.emplace_back(AsmToken::String, Str);<br>
}<br>
return false;<br>
}<br>
@@ -4346,8 +4346,7 @@ MCAsmMacro *AsmParser::parseMacroLikeBod<br>
StringRef Body = StringRef(BodyStart, BodyEnd - BodyStart);<br>
<br>
// We Are Anonymous.<br>
- MacroLikeBodies.push_back(<br>
- MCAsmMacro(StringRef(), Body, MCAsmMacroParameters()));<br>
+ MacroLikeBodies.emplace_back(StringRef(), Body, MCAsmMacroParameters());<br>
return &MacroLikeBodies.back();<br>
}<br>
<br>
@@ -4490,7 +4489,7 @@ bool AsmParser::parseDirectiveIrpc(SMLoc<br>
StringRef Values = A.front().front().getString();<br>
for (std::size_t I = 0, End = Values.size(); I != End; ++I) {<br>
MCAsmMacroArgument Arg;<br>
- Arg.push_back(AsmToken(AsmToken::Identifier, Values.slice(I, I + 1)));<br>
+ Arg.emplace_back(AsmToken::Identifier, Values.slice(I, I + 1));<br>
<br>
// Note that the AtPseudoVariable is enabled for instantiations of .irpc.<br>
// This is undocumented, but GAS seems to support it.<br>
<br>
Modified: llvm/trunk/lib/TableGen/TGParser.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_TableGen_TGParser.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=IR9Wlt7g8xW7piLg5fPdLm6m4sqPGw7-z7nRfIxlRgA&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/TableGen/TGParser.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/TableGen/TGParser.cpp (original)<br>
+++ llvm/trunk/lib/TableGen/TGParser.cpp Fri May 29 14:43:39 2015<br>
@@ -1601,7 +1601,7 @@ TGParser::ParseDagArgList(Record *CurRec<br>
// DagArg ::= VARNAME<br>
if (Lex.getCode() == tgtok::VarName) {<br>
// A missing value is treated like '?'.<br>
- Result.push_back(std::make_pair(UnsetInit::get(), Lex.getCurStrVal()));<br>
+ Result.emplace_back(UnsetInit::get(), Lex.getCurStrVal());<br>
Lex.Lex();<br>
} else {<br>
// DagArg ::= Value (':' VARNAME)?<br>
@@ -2174,7 +2174,7 @@ std::vector<LetRecord> TGParser::ParseLe<br>
if (!Val) return std::vector<LetRecord>();<br>
<br>
// Now that we have everything, add the record.<br>
- Result.push_back(LetRecord(Name, Bits, Val, NameLoc));<br>
+ Result.emplace_back(std::move(Name), std::move(Bits), Val, NameLoc);<br>
<br>
if (Lex.getCode() != tgtok::comma)<br>
return Result;<br>
<br>
Modified: llvm/trunk/lib/Transforms/IPO/MergeFunctions.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Transforms_IPO_MergeFunctions.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=zuhnC-mRORRnqw14UoLrBkHb029Leh7qVcDgna80juQ&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/IPO/MergeFunctions.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Transforms/IPO/MergeFunctions.cpp (original)<br>
+++ llvm/trunk/lib/Transforms/IPO/MergeFunctions.cpp Fri May 29 14:43:39 2015<br>
@@ -1465,7 +1465,7 @@ void MergeFunctions::remove(Function *F)<br>
if (Erased) {<br>
DEBUG(dbgs() << "Removed " << F->getName()<br>
<< " from set and deferred it.\n");<br>
- Deferred.push_back(F);<br>
+ Deferred.emplace_back(F);<br>
}<br>
}<br>
<br>
<br>
Modified: llvm/trunk/lib/Transforms/InstCombine/InstructionCombining.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Transforms_InstCombine_InstructionCombining.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=HkoFhTmJrDxTvthdB_9ZjlY4SiXVN6NJs1MkRYDTszQ&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/InstCombine/InstructionCombining.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Transforms/InstCombine/InstructionCombining.cpp (original)<br>
+++ llvm/trunk/lib/Transforms/InstCombine/InstructionCombining.cpp Fri May 29 14:43:39 2015<br>
@@ -1843,7 +1843,7 @@ isAllocSiteRemovable(Instruction *AI, Sm<br>
<br>
case Instruction::BitCast:<br>
case Instruction::GetElementPtr:<br>
- Users.push_back(I);<br>
+ Users.emplace_back(I);<br>
Worklist.push_back(I);<br>
continue;<br>
<br>
@@ -1852,7 +1852,7 @@ isAllocSiteRemovable(Instruction *AI, Sm<br>
// We can fold eq/ne comparisons with null to false/true, respectively.<br>
if (!ICI->isEquality() || !isa<ConstantPointerNull>(ICI->getOperand(1)))<br>
return false;<br>
- Users.push_back(I);<br>
+ Users.emplace_back(I);<br>
continue;<br>
}<br>
<br>
@@ -1878,13 +1878,13 @@ isAllocSiteRemovable(Instruction *AI, Sm<br>
case Intrinsic::lifetime_start:<br>
case Intrinsic::lifetime_end:<br>
case Intrinsic::objectsize:<br>
- Users.push_back(I);<br>
+ Users.emplace_back(I);<br>
continue;<br>
}<br>
}<br>
<br>
if (isFreeCall(I, TLI)) {<br>
- Users.push_back(I);<br>
+ Users.emplace_back(I);<br>
continue;<br>
}<br>
return false;<br>
@@ -1893,7 +1893,7 @@ isAllocSiteRemovable(Instruction *AI, Sm<br>
StoreInst *SI = cast<StoreInst>(I);<br>
if (SI->isVolatile() || SI->getPointerOperand() != PI)<br>
return false;<br>
- Users.push_back(I);<br>
+ Users.emplace_back(I);<br>
continue;<br>
}<br>
}<br>
<br>
Modified: llvm/trunk/lib/Transforms/Scalar/IndVarSimplify.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Transforms_Scalar_IndVarSimplify.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=OAsZmq8xV61tM4dad4JejxyJiF6IvY0KSK0d0n2nk8k&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/IndVarSimplify.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Transforms/Scalar/IndVarSimplify.cpp (original)<br>
+++ llvm/trunk/lib/Transforms/Scalar/IndVarSimplify.cpp Fri May 29 14:43:39 2015<br>
@@ -1102,7 +1102,7 @@ Instruction *WidenIV::WidenIVUse(NarrowI<br>
IRBuilder<> Builder(WidePhi->getParent()->getFirstInsertionPt());<br>
Value *Trunc = Builder.CreateTrunc(WidePhi, DU.NarrowDef->getType());<br>
UsePhi->replaceAllUsesWith(Trunc);<br>
- DeadInsts.push_back(UsePhi);<br>
+ DeadInsts.emplace_back(UsePhi);<br>
DEBUG(dbgs() << "INDVARS: Widen lcssa phi " << *UsePhi<br>
<< " to " << *WidePhi << "\n");<br>
}<br>
@@ -1135,7 +1135,7 @@ Instruction *WidenIV::WidenIVUse(NarrowI<br>
<< " replaced by " << *DU.WideDef << "\n");<br>
++NumElimExt;<br>
DU.NarrowUse->replaceAllUsesWith(NewDef);<br>
- DeadInsts.push_back(DU.NarrowUse);<br>
+ DeadInsts.emplace_back(DU.NarrowUse);<br>
}<br>
// Now that the extend is gone, we want to expose it's uses for potential<br>
// further simplification. We don't need to directly inform SimplifyIVUsers<br>
@@ -1188,7 +1188,7 @@ Instruction *WidenIV::WidenIVUse(NarrowI<br>
if (WideAddRec != SE->getSCEV(WideUse)) {<br>
DEBUG(dbgs() << "Wide use expression mismatch: " << *WideUse<br>
<< ": " << *SE->getSCEV(WideUse) << " != " << *WideAddRec << "\n");<br>
- DeadInsts.push_back(WideUse);<br>
+ DeadInsts.emplace_back(WideUse);<br>
return nullptr;<br>
}<br>
<br>
@@ -1285,7 +1285,7 @@ PHINode *WidenIV::CreateWideIV(SCEVExpan<br>
<br>
// WidenIVUse may have removed the def-use edge.<br>
if (DU.NarrowDef->use_empty())<br>
- DeadInsts.push_back(DU.NarrowDef);<br>
+ DeadInsts.emplace_back(DU.NarrowDef);<br>
}<br>
return WidePhi;<br>
}<br>
<br>
Modified: llvm/trunk/lib/Transforms/Scalar/LoopStrengthReduce.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Transforms_Scalar_LoopStrengthReduce.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=M0p5GRF4xZZhY4hA5R5UQKV85WFhdQ0oy6eB5QXL8K8&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/LoopStrengthReduce.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Transforms/Scalar/LoopStrengthReduce.cpp (original)<br>
+++ llvm/trunk/lib/Transforms/Scalar/LoopStrengthReduce.cpp Fri May 29 14:43:39 2015<br>
@@ -811,7 +811,7 @@ DeleteTriviallyDeadInstructions(SmallVec<br>
if (Instruction *U = dyn_cast<Instruction>(O)) {<br>
O = nullptr;<br>
if (U->use_empty())<br>
- DeadInsts.push_back(U);<br>
+ DeadInsts.emplace_back(U);<br>
}<br>
<br>
I->eraseFromParent();<br>
@@ -2917,7 +2917,7 @@ void LSRInstance::GenerateIVChain(const<br>
IVOper = Builder.CreateTruncOrBitCast(IVOper, OperTy, "lsr.chain");<br>
}<br>
Inc.UserInst->replaceUsesOfWith(Inc.IVOperand, IVOper);<br>
- DeadInsts.push_back(Inc.IVOperand);<br>
+ DeadInsts.emplace_back(Inc.IVOperand);<br>
}<br>
// If LSR created a new, wider phi, we may also replace its postinc. We only<br>
// do this if we also found a wide value for the head of the chain.<br>
@@ -2939,7 +2939,7 @@ void LSRInstance::GenerateIVChain(const<br>
IVOper = Builder.CreatePointerCast(IVSrc, PostIncTy, "lsr.chain");<br>
}<br>
Phi->replaceUsesOfWith(PostIncV, IVOper);<br>
- DeadInsts.push_back(PostIncV);<br>
+ DeadInsts.emplace_back(PostIncV);<br>
}<br>
}<br>
}<br>
@@ -4594,7 +4594,7 @@ Value *LSRInstance::Expand(const LSRFixu<br>
// form, update the ICmp's other operand.<br>
if (LU.Kind == LSRUse::ICmpZero) {<br>
ICmpInst *CI = cast<ICmpInst>(LF.UserInst);<br>
- DeadInsts.push_back(CI->getOperand(1));<br>
+ DeadInsts.emplace_back(CI->getOperand(1));<br>
assert(!F.BaseGV && "ICmp does not support folding a global value and "<br>
"a scale at the same time!");<br>
if (F.Scale == -1) {<br>
@@ -4737,7 +4737,7 @@ void LSRInstance::Rewrite(const LSRFixup<br>
LF.UserInst->replaceUsesOfWith(LF.OperandValToReplace, FullV);<br>
}<br>
<br>
- DeadInsts.push_back(LF.OperandValToReplace);<br>
+ DeadInsts.emplace_back(LF.OperandValToReplace);<br>
}<br>
<br>
/// ImplementSolution - Rewrite all the fixup locations with new values,<br>
<br>
Modified: llvm/trunk/lib/Transforms/Scalar/Reassociate.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Transforms_Scalar_Reassociate.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=NtPJtwSyUAaVR063IGyHeQIuy9SBVGIGN7C5yHlAlzY&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/Reassociate.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Transforms/Scalar/Reassociate.cpp (original)<br>
+++ llvm/trunk/lib/Transforms/Scalar/Reassociate.cpp Fri May 29 14:43:39 2015<br>
@@ -733,7 +733,7 @@ static bool LinearizeExprTree(BinaryOper<br>
if (Ops.empty()) {<br>
Constant *Identity = ConstantExpr::getBinOpIdentity(Opcode, I->getType());<br>
assert(Identity && "Associative operation without identity!");<br>
- Ops.push_back(std::make_pair(Identity, APInt(Bitwidth, 1)));<br>
+ Ops.emplace_back(Identity, APInt(Bitwidth, 1));<br>
}<br>
<br>
return Changed;<br>
<br>
Modified: llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Transforms_Utils_PromoteMemoryToRegister.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=pqyyvmg-v7O5syYeMnGoa9LNoG6DVMHzOeINemJBwIQ&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp (original)<br>
+++ llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp Fri May 29 14:43:39 2015<br>
@@ -636,7 +636,7 @@ void PromoteMem2Reg::run() {<br>
// and inserting the phi nodes we marked as necessary<br>
//<br>
std::vector<RenamePassData> RenamePassWorkList;<br>
- RenamePassWorkList.push_back(RenamePassData(F.begin(), nullptr, Values));<br>
+ RenamePassWorkList.emplace_back(F.begin(), nullptr, std::move(Values));<br>
do {<br>
RenamePassData RPD;<br>
RPD.swap(RenamePassWorkList.back());<br>
@@ -973,7 +973,7 @@ NextIteration:<br>
<br>
for (; I != E; ++I)<br>
if (VisitedSuccs.insert(*I).second)<br>
- Worklist.push_back(RenamePassData(*I, Pred, IncomingVals));<br>
+ Worklist.emplace_back(*I, Pred, IncomingVals);<br>
<br>
goto NextIteration;<br>
}<br>
<br>
Modified: llvm/trunk/lib/Transforms/Utils/SimplifyIndVar.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Transforms_Utils_SimplifyIndVar.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=zcZkN0XyRc0BatCd4jyW5o7na1QahgjUULrvPxnjmgo&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Utils/SimplifyIndVar.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Transforms/Utils/SimplifyIndVar.cpp (original)<br>
+++ llvm/trunk/lib/Transforms/Utils/SimplifyIndVar.cpp Fri May 29 14:43:39 2015<br>
@@ -141,7 +141,7 @@ Value *SimplifyIndvar::foldIVUser(Instru<br>
++NumElimOperand;<br>
Changed = true;<br>
if (IVOperand->use_empty())<br>
- DeadInsts.push_back(IVOperand);<br>
+ DeadInsts.emplace_back(IVOperand);<br>
return IVSrc;<br>
}<br>
<br>
@@ -178,7 +178,7 @@ void SimplifyIndvar::eliminateIVComparis<br>
DEBUG(dbgs() << "INDVARS: Eliminated comparison: " << *ICmp << '\n');<br>
++NumElimCmp;<br>
Changed = true;<br>
- DeadInsts.push_back(ICmp);<br>
+ DeadInsts.emplace_back(ICmp);<br>
}<br>
<br>
/// SimplifyIVUsers helper for eliminating useless<br>
@@ -229,7 +229,7 @@ void SimplifyIndvar::eliminateIVRemainde<br>
DEBUG(dbgs() << "INDVARS: Simplified rem: " << *Rem << '\n');<br>
++NumElimRem;<br>
Changed = true;<br>
- DeadInsts.push_back(Rem);<br>
+ DeadInsts.emplace_back(Rem);<br>
}<br>
<br>
/// Eliminate an operation that consumes a simple IV and has<br>
@@ -260,7 +260,7 @@ bool SimplifyIndvar::eliminateIVUser(Ins<br>
UseInst->replaceAllUsesWith(IVOperand);<br>
++NumElimIdentity;<br>
Changed = true;<br>
- DeadInsts.push_back(UseInst);<br>
+ DeadInsts.emplace_back(UseInst);<br>
return true;<br>
}<br>
<br>
@@ -386,7 +386,7 @@ Instruction *SimplifyIndvar::splitOverfl<br>
"Bad add instruction created from overflow intrinsic.");<br>
<br>
AddVal->replaceAllUsesWith(AddInst);<br>
- DeadInsts.push_back(AddVal);<br>
+ DeadInsts.emplace_back(AddVal);<br>
return AddInst;<br>
}<br>
<br>
<br>
Modified: llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_lib_Transforms_Vectorize_SLPVectorizer.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=oJfNID5hSQkRCf4vp3U09eyTKkJBWZjiUkcw9Oyp-fM&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp (original)<br>
+++ llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp Fri May 29 14:43:39 2015<br>
@@ -472,7 +472,7 @@ private:<br>
<br>
/// Create a new VectorizableTree entry.<br>
TreeEntry *newTreeEntry(ArrayRef<Value *> VL, bool Vectorized) {<br>
- VectorizableTree.push_back(TreeEntry());<br>
+ VectorizableTree.emplace_back();<br>
int idx = VectorizableTree.size() - 1;<br>
TreeEntry *Last = &VectorizableTree[idx];<br>
Last->Scalars.insert(Last->Scalars.begin(), VL.begin(), VL.end());<br>
<br>
Modified: llvm/trunk/tools/bugpoint/CrashDebugger.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_tools_bugpoint_CrashDebugger.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=2F-s4mM2bRIMom7bTEFmUitswwfPimIUARDjAcSEpd0&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/bugpoint/CrashDebugger.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/bugpoint/CrashDebugger.cpp (original)<br>
+++ llvm/trunk/tools/bugpoint/CrashDebugger.cpp Fri May 29 14:43:39 2015<br>
@@ -385,8 +385,7 @@ bool ReduceCrashingBlocks::TestBlocks(st<br>
std::vector<std::pair<std::string, std::string> > BlockInfo;<br>
<br>
for (BasicBlock *BB : Blocks)<br>
- BlockInfo.push_back(std::make_pair(BB->getParent()->getName(),<br>
- BB->getName()));<br>
+ BlockInfo.emplace_back(BB->getParent()->getName(), BB->getName());<br>
<br>
// Now run the CFG simplify pass on the function...<br>
std::vector<std::string> Passes;<br>
<br>
Modified: llvm/trunk/tools/bugpoint/Miscompilation.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_tools_bugpoint_Miscompilation.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=N6l9-NadG_HZmtjvP6tUiJ5yCK9qAfNCQ6wrw75EXcs&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/bugpoint/Miscompilation.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/bugpoint/Miscompilation.cpp (original)<br>
+++ llvm/trunk/tools/bugpoint/Miscompilation.cpp Fri May 29 14:43:39 2015<br>
@@ -386,10 +386,8 @@ static bool ExtractLoops(BugDriver &BD,<br>
// that masked the error. Stop loop extraction now.<br>
<br>
std::vector<std::pair<std::string, FunctionType*> > MisCompFunctions;<br>
- for (unsigned i = 0, e = MiscompiledFunctions.size(); i != e; ++i) {<br>
- Function *F = MiscompiledFunctions[i];<br>
- MisCompFunctions.push_back(std::make_pair(F->getName(),<br>
- F->getFunctionType()));<br>
+ for (Function *F : MiscompiledFunctions) {<br>
+ MisCompFunctions.emplace_back(F->getName(), F->getFunctionType());<br>
}<br>
<br>
if (Linker::LinkModules(ToNotOptimize, ToOptimizeLoopExtracted))<br>
@@ -414,8 +412,7 @@ static bool ExtractLoops(BugDriver &BD,<br>
for (Module::iterator I = ToOptimizeLoopExtracted->begin(),<br>
E = ToOptimizeLoopExtracted->end(); I != E; ++I)<br>
if (!I->isDeclaration())<br>
- MisCompFunctions.push_back(std::make_pair(I->getName(),<br>
- I->getFunctionType()));<br>
+ MisCompFunctions.emplace_back(I->getName(), I->getFunctionType());<br>
<br>
// Okay, great! Now we know that we extracted a loop and that loop<br>
// extraction both didn't break the program, and didn't mask the problem.<br>
@@ -596,8 +593,7 @@ static bool ExtractBlocks(BugDriver &BD,<br>
for (Module::iterator I = Extracted->begin(), E = Extracted->end();<br>
I != E; ++I)<br>
if (!I->isDeclaration())<br>
- MisCompFunctions.push_back(std::make_pair(I->getName(),<br>
- I->getFunctionType()));<br>
+ MisCompFunctions.emplace_back(I->getName(), I->getFunctionType());<br>
<br>
if (Linker::LinkModules(ProgClone, Extracted.get()))<br>
exit(1);<br>
<br>
Modified: llvm/trunk/tools/lli/OrcLazyJIT.h<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_tools_lli_OrcLazyJIT.h-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=q6lRirEsm8__CRyBK6p1OJSw5sELfaeNf1z0eDrw25Y&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/lli/OrcLazyJIT.h?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/lli/OrcLazyJIT.h (original)<br>
+++ llvm/trunk/tools/lli/OrcLazyJIT.h Fri May 29 14:43:39 2015<br>
@@ -116,8 +116,7 @@ public:<br>
orc::CtorDtorRunner<CODLayerT> CtorRunner(std::move(CtorNames), H);<br>
CtorRunner.runViaLayer(CODLayer);<br>
<br>
- IRStaticDestructorRunners.push_back(<br>
- orc::CtorDtorRunner<CODLayerT>(std::move(DtorNames), H));<br>
+ IRStaticDestructorRunners.emplace_back(std::move(DtorNames), H);<br>
<br>
return H;<br>
}<br>
<br>
Modified: llvm/trunk/tools/llvm-cov/CodeCoverage.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_tools_llvm-2Dcov_CodeCoverage.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=IrH24o-QHHPcnZrrvp_8bXEagmXA32kxbwIqUdZjtD0&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-cov/CodeCoverage.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/llvm-cov/CodeCoverage.cpp (original)<br>
+++ llvm/trunk/tools/llvm-cov/CodeCoverage.cpp Fri May 29 14:43:39 2015<br>
@@ -116,8 +116,7 @@ CodeCoverageTool::getSourceFile(StringRe<br>
error(EC.message(), SourceFile);<br>
return EC;<br>
}<br>
- LoadedSourceFiles.push_back(<br>
- std::make_pair(SourceFile, std::move(Buffer.get())));<br>
+ LoadedSourceFiles.emplace_back(SourceFile, std::move(Buffer.get()));<br>
return *LoadedSourceFiles.back().second;<br>
}<br>
<br>
<br>
Modified: llvm/trunk/tools/llvm-pdbdump/LinePrinter.h<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_tools_llvm-2Dpdbdump_LinePrinter.h-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=zO3_NwvKiQFkhWCTiPf_SfK1Yk543dKYDlKI67PwNUk&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-pdbdump/LinePrinter.h?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/llvm-pdbdump/LinePrinter.h (original)<br>
+++ llvm/trunk/tools/llvm-pdbdump/LinePrinter.h Fri May 29 14:43:39 2015<br>
@@ -41,7 +41,7 @@ private:<br>
void SetFilters(std::list<Regex> &List, Iter Begin, Iter End) {<br>
List.clear();<br>
for (; Begin != End; ++Begin)<br>
- List.push_back(StringRef(*Begin));<br>
+ List.emplace_back(StringRef(*Begin));<br>
}<br>
<br>
raw_ostream &OS;<br>
<br>
Modified: llvm/trunk/utils/FileCheck/FileCheck.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_utils_FileCheck_FileCheck.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=C1TPKeQOx-hFDNDEbSA4ffRS_FfAe02BYxhTyo0WCz0&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/FileCheck/FileCheck.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/utils/FileCheck/FileCheck.cpp (original)<br>
+++ llvm/trunk/utils/FileCheck/FileCheck.cpp Fri May 29 14:43:39 2015<br>
@@ -946,10 +946,7 @@ static bool ReadCheckFile(SourceMgr &SM,<br>
}<br>
<br>
// Okay, add the string we captured to the output vector and move on.<br>
- CheckStrings.push_back(CheckString(P,<br>
- UsedPrefix,<br>
- PatternLoc,<br>
- CheckTy));<br>
+ CheckStrings.emplace_back(P, UsedPrefix, PatternLoc, CheckTy);<br>
std::swap(DagNotMatches, CheckStrings.back().DagNotStrings);<br>
DagNotMatches = ImplicitNegativeChecks;<br>
}<br>
@@ -957,10 +954,9 @@ static bool ReadCheckFile(SourceMgr &SM,<br>
// Add an EOF pattern for any trailing CHECK-DAG/-NOTs, and use the first<br>
// prefix as a filler for the error message.<br>
if (!DagNotMatches.empty()) {<br>
- CheckStrings.push_back(CheckString(Pattern(Check::CheckEOF),<br>
- *CheckPrefixes.begin(),<br>
- SMLoc::getFromPointer(Buffer.data()),<br>
- Check::CheckEOF));<br>
+ CheckStrings.emplace_back(Pattern(Check::CheckEOF), *CheckPrefixes.begin(),<br>
+ SMLoc::getFromPointer(Buffer.data()),<br>
+ Check::CheckEOF);<br>
std::swap(DagNotMatches, CheckStrings.back().DagNotStrings);<br>
}<br>
<br>
<br>
Modified: llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_utils_TableGen_AsmMatcherEmitter.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=F_xB9cTHLtz44tkDNrYxr_iKwAdm6RXaltGlfunX2uU&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp (original)<br>
+++ llvm/trunk/utils/TableGen/AsmMatcherEmitter.cpp Fri May 29 14:43:39 2015<br>
@@ -1797,7 +1797,7 @@ static void emitConvertFuncs(CodeGenTarg<br>
getEnumNameForToken(AsmMatchConverter));<br>
<br>
// Add the converter row for this instruction.<br>
- ConversionTable.push_back(std::vector<uint8_t>());<br>
+ ConversionTable.emplace_back();<br>
ConversionTable.back().push_back(KindID);<br>
ConversionTable.back().push_back(CVT_Done);<br>
<br>
@@ -2161,8 +2161,7 @@ static void emitMatchTokenString(CodeGen<br>
std::vector<StringMatcher::StringPair> Matches;<br>
for (const auto &CI : Infos) {<br>
if (CI.Kind == ClassInfo::Token)<br>
- Matches.push_back(<br>
- StringMatcher::StringPair(CI.ValueName, "return " + CI.Name + ";"));<br>
+ Matches.emplace_back(CI.ValueName, "return " + CI.Name + ";");<br>
}<br>
<br>
OS << "static MatchClassKind matchTokenString(StringRef Name) {\n";<br>
@@ -2184,9 +2183,8 @@ static void emitMatchRegisterName(CodeGe<br>
if (Reg.TheDef->getValueAsString("AsmName").empty())<br>
continue;<br>
<br>
- Matches.push_back(<br>
- StringMatcher::StringPair(Reg.TheDef->getValueAsString("AsmName"),<br>
- "return " + utostr(Reg.EnumValue) + ";"));<br>
+ Matches.emplace_back(Reg.TheDef->getValueAsString("AsmName"),<br>
+ "return " + utostr(Reg.EnumValue) + ";");<br>
}<br>
<br>
OS << "static unsigned MatchRegisterName(StringRef Name) {\n";<br>
<br>
Modified: llvm/trunk/utils/TableGen/AsmWriterEmitter.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_utils_TableGen_AsmWriterEmitter.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=VnL0EKZ9sBJd8Hx_8Cag-rhCQh4xCjWDIliOIYtgejg&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/AsmWriterEmitter.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/utils/TableGen/AsmWriterEmitter.cpp (original)<br>
+++ llvm/trunk/utils/TableGen/AsmWriterEmitter.cpp Fri May 29 14:43:39 2015<br>
@@ -1105,9 +1105,8 @@ AsmWriterEmitter::AsmWriterEmitter(Recor<br>
Record *AsmWriter = Target.getAsmWriter();<br>
for (const CodeGenInstruction *I : Target.instructions())<br>
if (!I->AsmString.empty() && I->TheDef->getName() != "PHI")<br>
- Instructions.push_back(<br>
- AsmWriterInst(*I, AsmWriter->getValueAsInt("Variant"),<br>
- AsmWriter->getValueAsInt("PassSubtarget")));<br>
+ Instructions.emplace_back(*I, AsmWriter->getValueAsInt("Variant"),<br>
+ AsmWriter->getValueAsInt("PassSubtarget"));<br>
<br>
// Get the instruction numbering.<br>
NumberedInstructions = &Target.getInstructionsByEnumValue();<br>
<br>
Modified: llvm/trunk/utils/TableGen/AsmWriterInst.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_utils_TableGen_AsmWriterInst.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=Jl_LrmiEXSXudCD6R50u-a9x4URg6x2H3o7T2DZoCvQ&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/AsmWriterInst.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/utils/TableGen/AsmWriterInst.cpp (original)<br>
+++ llvm/trunk/utils/TableGen/AsmWriterInst.cpp Fri May 29 14:43:39 2015<br>
@@ -163,27 +163,22 @@ AsmWriterInst::AsmWriterInst(const CodeG<br>
<br>
if (VarName.empty()) {<br>
// Just a modifier, pass this into PrintSpecial.<br>
- Operands.push_back(AsmWriterOperand("PrintSpecial",<br>
- ~0U,<br>
- ~0U,<br>
- Modifier,<br>
- PassSubtarget));<br>
+ Operands.emplace_back("PrintSpecial", ~0U, ~0U, Modifier,<br>
+ PassSubtarget);<br>
} else {<br>
// Otherwise, normal operand.<br>
unsigned OpNo = CGI.Operands.getOperandNamed(VarName);<br>
CGIOperandList::OperandInfo OpInfo = CGI.Operands[OpNo];<br>
<br>
unsigned MIOp = OpInfo.MIOperandNo;<br>
- Operands.push_back(AsmWriterOperand(OpInfo.PrinterMethodName,<br>
- OpNo, MIOp, Modifier,<br>
- PassSubtarget));<br>
+ Operands.emplace_back(OpInfo.PrinterMethodName, OpNo, MIOp, Modifier,<br>
+ PassSubtarget);<br>
}<br>
LastEmitted = VarEnd;<br>
}<br>
}<br>
<br>
- Operands.push_back(AsmWriterOperand("return;",<br>
- AsmWriterOperand::isLiteralStatementOperand));<br>
+ Operands.emplace_back("return;", AsmWriterOperand::isLiteralStatementOperand);<br>
}<br>
<br>
/// MatchesAllButOneOp - If this instruction is exactly identical to the<br>
<br>
Modified: llvm/trunk/utils/TableGen/CodeGenDAGPatterns.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_utils_TableGen_CodeGenDAGPatterns.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=E4dqdB6WdJ_kCAeQMD3xFu45-F0ucI4t7LLQs2r7RD4&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/CodeGenDAGPatterns.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/utils/TableGen/CodeGenDAGPatterns.cpp (original)<br>
+++ llvm/trunk/utils/TableGen/CodeGenDAGPatterns.cpp Fri May 29 14:43:39 2015<br>
@@ -3798,13 +3798,11 @@ void CodeGenDAGPatterns::GenerateVariant<br>
if (AlreadyExists) continue;<br>
<br>
// Otherwise, add it to the list of patterns we have.<br>
- PatternsToMatch.<br>
- push_back(PatternToMatch(PatternsToMatch[i].getSrcRecord(),<br>
- PatternsToMatch[i].getPredicates(),<br>
- Variant, PatternsToMatch[i].getDstPattern(),<br>
- PatternsToMatch[i].getDstRegs(),<br>
- PatternsToMatch[i].getAddedComplexity(),<br>
- Record::getNewUID()));<br>
+ PatternsToMatch.emplace_back(<br>
+ PatternsToMatch[i].getSrcRecord(), PatternsToMatch[i].getPredicates(),<br>
+ Variant, PatternsToMatch[i].getDstPattern(),<br>
+ PatternsToMatch[i].getDstRegs(),<br>
+ PatternsToMatch[i].getAddedComplexity(), Record::getNewUID());<br>
}<br>
<br>
DEBUG(errs() << "\n");<br>
<br>
Modified: llvm/trunk/utils/TableGen/CodeGenInstruction.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_utils_TableGen_CodeGenInstruction.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=O3Q0KVV7zJbcL_gO0jT5QN1GEatzVYQzyhT8af5tHsc&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/CodeGenInstruction.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/utils/TableGen/CodeGenInstruction.cpp (original)<br>
+++ llvm/trunk/utils/TableGen/CodeGenInstruction.cpp Fri May 29 14:43:39 2015<br>
@@ -115,9 +115,9 @@ CGIOperandList::CGIOperandList(Record *R<br>
PrintFatalError("In instruction '" + R->getName() + "', operand #" +<br>
Twine(i) + " has the same name as a previous operand!");<br>
<br>
- OperandList.push_back(OperandInfo(Rec, ArgName, PrintMethod, EncoderMethod,<br>
- OperandNamespace + "::" + OperandType,<br>
- MIOperandNo, NumOps, MIOpInfo));<br>
+ OperandList.emplace_back(Rec, ArgName, PrintMethod, EncoderMethod,<br>
+ OperandNamespace + "::" + OperandType, MIOperandNo,<br>
+ NumOps, MIOpInfo);<br>
MIOperandNo += NumOps;<br>
}<br>
<br>
@@ -642,9 +642,9 @@ CodeGenInstAlias::CodeGenInstAlias(Recor<br>
<br>
// Take care to instantiate each of the suboperands with the correct<br>
// nomenclature: $foo.bar<br>
- ResultOperands.push_back(<br>
- ResultOperand(Result->getArgName(AliasOpNo) + "." +<br>
- MIOI->getArgName(SubOp), SubRec));<br>
+ ResultOperands.emplace_back(Result->getArgName(AliasOpNo) + "." +<br>
+ MIOI->getArgName(SubOp),<br>
+ SubRec);<br>
ResultInstOperandIndex.push_back(std::make_pair(i, SubOp));<br>
}<br>
++AliasOpNo;<br>
<br>
Modified: llvm/trunk/utils/TableGen/CodeGenRegisters.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_utils_TableGen_CodeGenRegisters.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=xV_X2FAZ-Pm5tkqSdt29VHQkPHtIUX9ZN-bYEuBVC-0&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/CodeGenRegisters.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/utils/TableGen/CodeGenRegisters.cpp (original)<br>
+++ llvm/trunk/utils/TableGen/CodeGenRegisters.cpp Fri May 29 14:43:39 2015<br>
@@ -994,7 +994,7 @@ CodeGenRegBank::CodeGenRegBank(RecordKee<br>
<br>
// Allocate user-defined register classes.<br>
for (auto *RC : RCs) {<br>
- RegClasses.push_back(CodeGenRegisterClass(*this, RC));<br>
+ RegClasses.emplace_back(*this, RC);<br>
addToMaps(&RegClasses.back());<br>
}<br>
<br>
@@ -1056,7 +1056,7 @@ CodeGenRegBank::getOrCreateSubClass(cons<br>
return FoundI->second;<br>
<br>
// Sub-class doesn't exist, create a new one.<br>
- RegClasses.push_back(CodeGenRegisterClass(*this, Name, K));<br>
+ RegClasses.emplace_back(*this, Name, K);<br>
addToMaps(&RegClasses.back());<br>
return &RegClasses.back();<br>
}<br>
<br>
Modified: llvm/trunk/utils/TableGen/CodeGenSchedule.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_utils_TableGen_CodeGenSchedule.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=lSGKtk6EOrrIXsEOPEMGAvRbMnyAq_IIWni1WiSBQVk&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/CodeGenSchedule.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/utils/TableGen/CodeGenSchedule.cpp (original)<br>
+++ llvm/trunk/utils/TableGen/CodeGenSchedule.cpp Fri May 29 14:43:39 2015<br>
@@ -145,8 +145,7 @@ void CodeGenSchedModels::collectProcMode<br>
// Use idx=0 for NoModel/NoItineraries.<br>
Record *NoModelDef = Records.getDef("NoSchedModel");<br>
Record *NoItinsDef = Records.getDef("NoItineraries");<br>
- ProcModels.push_back(CodeGenProcModel(0, "NoSchedModel",<br>
- NoModelDef, NoItinsDef));<br>
+ ProcModels.emplace_back(0, "NoSchedModel", NoModelDef, NoItinsDef);<br>
ProcModelMap[NoModelDef] = 0;<br>
<br>
// For each processor, find a unique machine model.<br>
@@ -164,16 +163,14 @@ void CodeGenSchedModels::addProcModel(Re<br>
std::string Name = ModelKey->getName();<br>
if (ModelKey->isSubClassOf("SchedMachineModel")) {<br>
Record *ItinsDef = ModelKey->getValueAsDef("Itineraries");<br>
- ProcModels.push_back(<br>
- CodeGenProcModel(ProcModels.size(), Name, ModelKey, ItinsDef));<br>
+ ProcModels.emplace_back(ProcModels.size(), Name, ModelKey, ItinsDef);<br>
}<br>
else {<br>
// An itinerary is defined without a machine model. Infer a new model.<br>
if (!ModelKey->getValueAsListOfDefs("IID").empty())<br>
Name = Name + "Model";<br>
- ProcModels.push_back(<br>
- CodeGenProcModel(ProcModels.size(), Name,<br>
- ProcDef->getValueAsDef("SchedModel"), ModelKey));<br>
+ ProcModels.emplace_back(ProcModels.size(), Name,<br>
+ ProcDef->getValueAsDef("SchedModel"), ModelKey);<br>
}<br>
DEBUG(ProcModels.back().dump());<br>
}<br>
@@ -281,12 +278,12 @@ void CodeGenSchedModels::collectSchedRW(<br>
std::sort(SWDefs.begin(), SWDefs.end(), LessRecord());<br>
for (RecIter SWI = SWDefs.begin(), SWE = SWDefs.end(); SWI != SWE; ++SWI) {<br>
assert(!getSchedRWIdx(*SWI, /*IsRead=*/false) && "duplicate SchedWrite");<br>
- SchedWrites.push_back(CodeGenSchedRW(SchedWrites.size(), *SWI));<br>
+ SchedWrites.emplace_back(SchedWrites.size(), *SWI);<br>
}<br>
std::sort(SRDefs.begin(), SRDefs.end(), LessRecord());<br>
for (RecIter SRI = SRDefs.begin(), SRE = SRDefs.end(); SRI != SRE; ++SRI) {<br>
assert(!getSchedRWIdx(*SRI, /*IsRead-*/true) && "duplicate SchedWrite");<br>
- SchedReads.push_back(CodeGenSchedRW(SchedReads.size(), *SRI));<br>
+ SchedReads.emplace_back(SchedReads.size(), *SRI);<br>
}<br>
// Initialize WriteSequence vectors.<br>
for (std::vector<CodeGenSchedRW>::iterator WI = SchedWrites.begin(),<br>
<br>
Modified: llvm/trunk/utils/TableGen/FixedLenDecoderEmitter.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_utils_TableGen_FixedLenDecoderEmitter.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=LVAxF4EQqcqvHINofXhTx8Xx9HIvhESe0QwpH5dNBsE&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/FixedLenDecoderEmitter.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/utils/TableGen/FixedLenDecoderEmitter.cpp (original)<br>
+++ llvm/trunk/utils/TableGen/FixedLenDecoderEmitter.cpp Fri May 29 14:43:39 2015<br>
@@ -610,7 +610,7 @@ void Filter::emitTableEntry(DecoderTable<br>
TableInfo.Table.push_back(NumBits);<br>
<br>
// A new filter entry begins a new scope for fixup resolution.<br>
- TableInfo.FixupStack.push_back(FixupList());<br>
+ TableInfo.FixupStack.emplace_back();<br>
<br>
DecoderTable &Table = TableInfo.Table;<br>
<br>
@@ -1333,7 +1333,7 @@ void FilterChooser::emitSingletonTableEn<br>
<br>
// complex singletons need predicate checks from the first singleton<br>
// to refer forward to the variable filterchooser that follows.<br>
- TableInfo.FixupStack.push_back(FixupList());<br>
+ TableInfo.FixupStack.emplace_back();<br>
<br>
emitSingletonTableEntry(TableInfo, Opc);<br>
<br>
@@ -1350,7 +1350,7 @@ void FilterChooser::emitSingletonTableEn<br>
void FilterChooser::runSingleFilter(unsigned startBit, unsigned numBit,<br>
bool mixed) {<br>
Filters.clear();<br>
- Filters.push_back(Filter(*this, startBit, numBit, true));<br>
+ Filters.emplace_back(*this, startBit, numBit, true);<br>
BestIndex = 0; // Sole Filter instance to choose from.<br>
bestFilter().recurse();<br>
}<br>
@@ -1360,9 +1360,9 @@ void FilterChooser::runSingleFilter(unsi<br>
void FilterChooser::reportRegion(bitAttr_t RA, unsigned StartBit,<br>
unsigned BitIndex, bool AllowMixed) {<br>
if (RA == ATTR_MIXED && AllowMixed)<br>
- Filters.push_back(Filter(*this, StartBit, BitIndex - StartBit, true));<br>
+ Filters.emplace_back(*this, StartBit, BitIndex - StartBit, true);<br>
else if (RA == ATTR_ALL_SET && !AllowMixed)<br>
- Filters.push_back(Filter(*this, StartBit, BitIndex - StartBit, false));<br>
+ Filters.emplace_back(*this, StartBit, BitIndex - StartBit, false);<br>
}<br>
<br>
// FilterProcessor scans the well-known encoding bits of the instructions and<br>
@@ -2179,7 +2179,7 @@ void FixedLenDecoderEmitter::run(raw_ost<br>
TableInfo.Table.clear();<br>
TableInfo.FixupStack.clear();<br>
TableInfo.Table.reserve(16384);<br>
- TableInfo.FixupStack.push_back(FixupList());<br>
+ TableInfo.FixupStack.emplace_back();<br>
FC.emitTableEntries(TableInfo);<br>
// Any NumToSkip fixups in the top level scope can resolve to the<br>
// OPC_Fail at the end of the table.<br>
<br>
Modified: llvm/trunk/utils/TableGen/IntrinsicEmitter.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_llvm_trunk_utils_TableGen_IntrinsicEmitter.cpp-3Frev-3D238602-26r1-3D238601-26r2-3D238602-26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=G_HCfA2rMv9lDTU7htwdDnTK1JICgVBJ0T7nZ6kEW4Q&s=ODnJw7Ekb1RIlHxufdq82HJj7U1F0CUykaPNoOxXIfQ&e=" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/IntrinsicEmitter.cpp?rev=238602&r1=238601&r2=238602&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/utils/TableGen/IntrinsicEmitter.cpp (original)<br>
+++ llvm/trunk/utils/TableGen/IntrinsicEmitter.cpp Fri May 29 14:43:39 2015<br>
@@ -760,7 +760,7 @@ static void EmitTargetBuiltins(const std<br>
E = BIM.end(); I != E; ++I) {<br>
std::string ResultCode =<br>
"return " + TargetPrefix + "Intrinsic::" + I->second + ";";<br>
- Results.push_back(StringMatcher::StringPair(I->first, ResultCode));<br>
+ Results.emplace_back(I->first, ResultCode);<br>
}<br>
<br>
StringMatcher("BuiltinName", Results, OS).Emit();<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br></div></div>