Chromium Code Reviews| Index: src/IceGlobalContext.cpp |
| diff --git a/src/IceGlobalContext.cpp b/src/IceGlobalContext.cpp |
| index d77a5ddb554c4e1f3ec68232da712a6cc72152d3..1d050397a0b2333a8ebe20e80eeec38891bfd065 100644 |
| --- a/src/IceGlobalContext.cpp |
| +++ b/src/IceGlobalContext.cpp |
| @@ -94,7 +94,9 @@ GlobalContext::GlobalContext(llvm::raw_ostream *OsDump, |
| IceString TestPrefix) |
| : StrDump(OsDump), StrEmit(OsEmit), VMask(Mask), |
| ConstPool(new ConstantPool()), Arch(Arch), Opt(Opt), |
| - TestPrefix(TestPrefix), HasEmittedFirstMethod(false) {} |
| + TestPrefix(TestPrefix), HasEmittedFirstMethod(false) { |
| + BuildIntrinsicMap(&IntrinsicInfos); |
|
JF
2014/06/10 03:50:41
Why isn't think just IntrinsicMap's default constr
jvoung (off chromium)
2014/06/16 20:51:58
Done.
|
| +} |
| // In this context, name mangling means to rewrite a symbol using a |
| // given prefix. For a C++ symbol, nest the original symbol inside |
| @@ -210,6 +212,13 @@ ConstantList GlobalContext::getConstantPool(Type Ty) const { |
| llvm_unreachable("Unknown type"); |
| } |
| +IntrinsicInfo GlobalContext::getIntrinsicInfo(const IceString &Name) const { |
| + IntrinsicMap::const_iterator I = IntrinsicInfos.find(Name); |
| + if (I == IntrinsicInfos.end()) |
| + return UnknownIntrinsicInfo; |
| + return I->second; |
| +} |
| + |
| void Timer::printElapsedUs(GlobalContext *Ctx, const IceString &Tag) const { |
| if (Ctx->isVerbose(IceV_Timing)) { |
| // Prefixing with '#' allows timing strings to be included |