Index: src/IceInstX86BaseImpl.h |
diff --git a/src/IceInstX86BaseImpl.h b/src/IceInstX86BaseImpl.h |
index 64d235e6e57211e900396a7f999a50db10643e1f..a6ce132fc8f2e9ce056e4d621088ee52b4df1551 100644 |
--- a/src/IceInstX86BaseImpl.h |
+++ b/src/IceInstX86BaseImpl.h |
@@ -98,8 +98,11 @@ InstImpl<TraitsType>::InstX86Label::InstX86Label(Cfg *Func, |
template <typename TraitsType> |
IceString InstImpl<TraitsType>::InstX86Label::getName(const Cfg *Func) const { |
+ // TODO(stichnot): Returning an empty string in a non-DUMP build can cause a |
+ // huge degradation in ConstantRelocatable hashing. Investigate and fix, but |
+ // for now return something reasonably unique. |
if (!BuildDefs::dump()) |
- return IceString(); |
+ return Func->getFunctionName() + std::to_string(Number); |
return ".L" + Func->getFunctionName() + "$local$__" + std::to_string(Number); |
} |