Pass around const RetOrArg references instead of copying values. Also, mark
RetOrArg::getDescription() as const.
llvm-svn: 53599
diff --git a/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp b/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
index b9feab6..d2a5f28 100644
--- a/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
+++ b/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
@@ -70,7 +70,7 @@
return F == O.F && Idx == O.Idx && IsArg == O.IsArg;
}
- std::string getDescription() {
+ std::string getDescription() const {
return std::string((IsArg ? "Argument #" : "Return value #"))
+ utostr(Idx) + " of function " + F->getName();
}
@@ -132,7 +132,7 @@
void SurveyFunction(Function &F);
void MarkValue(const RetOrArg &RA, Liveness L,
const UseVector &MaybeLiveUses);
- void MarkLive(RetOrArg RA);
+ void MarkLive(const RetOrArg &RA);
void MarkLive(const Function &F);
bool RemoveDeadStuffFromFunction(Function *F);
bool DeleteDeadVarargs(Function &Fn);
@@ -540,7 +540,7 @@
/// MarkLive - Mark the given return value or argument as live. Additionally,
/// mark any values that are used by this value (according to Uses) live as
/// well.
-void DAE::MarkLive(RetOrArg RA) {
+void DAE::MarkLive(const RetOrArg &RA) {
if (!LiveValues.insert(RA).second)
return; // We were already marked Live.