| Index: src/PNaClTranslator.cpp
|
| diff --git a/src/PNaClTranslator.cpp b/src/PNaClTranslator.cpp
|
| index 65b8a5c8ae7e277fd4dcd925971a58dcf416e1a9..0bba5c27ef78222d983084fa7dc2bafa3632346e 100644
|
| --- a/src/PNaClTranslator.cpp
|
| +++ b/src/PNaClTranslator.cpp
|
| @@ -446,6 +446,10 @@ private:
|
| // Defines if a module block has already been parsed.
|
| bool ParsedModuleBlock = false;
|
|
|
| + static const Ice::ClFlags &getFlags() {
|
| + return Ice::GlobalContext::getFlags();
|
| + }
|
| +
|
| bool ParseBlock(unsigned BlockID) override;
|
|
|
| // Gets extended type associated with the given index, assuming the extended
|
| @@ -489,8 +493,7 @@ private:
|
| // Installs names for global variables without names.
|
| void installGlobalVarNames() {
|
| assert(VariableDeclarations);
|
| - const std::string &GlobalPrefix =
|
| - getTranslator().getFlags().getDefaultGlobalPrefix();
|
| + const std::string &GlobalPrefix = getFlags().getDefaultGlobalPrefix();
|
| if (!GlobalPrefix.empty()) {
|
| NaClBcIndexSize_t NameIndex = 0;
|
| for (Ice::VariableDeclaration *Var : *VariableDeclarations) {
|
| @@ -501,8 +504,7 @@ private:
|
|
|
| // Installs names for functions without names.
|
| void installFunctionNames() {
|
| - const std::string &FunctionPrefix =
|
| - getTranslator().getFlags().getDefaultFunctionPrefix();
|
| + const std::string &FunctionPrefix = getFlags().getDefaultFunctionPrefix();
|
| if (!FunctionPrefix.empty()) {
|
| NaClBcIndexSize_t NameIndex = 0;
|
| for (Ice::FunctionDeclaration *Func : FunctionDeclarations) {
|
| @@ -588,8 +590,7 @@ bool TopLevelParser::ErrorAt(naclbitc::ErrorLevel Level, uint64_t Bit,
|
| NaClBitcodeParser::ErrorAt(Level, Bit, Message);
|
| setErrStream(OldErrStream);
|
| }
|
| - if (Level >= naclbitc::Error &&
|
| - !Translator.getFlags().getAllowErrorRecovery())
|
| + if (Level >= naclbitc::Error && !getFlags().getAllowErrorRecovery())
|
| Fatal();
|
| return true;
|
| }
|
| @@ -693,7 +694,9 @@ protected:
|
| // Gets the translator associated with the bitcode parser.
|
| Ice::Translator &getTranslator() const { return Context->getTranslator(); }
|
|
|
| - const Ice::ClFlags &getFlags() const { return getTranslator().getFlags(); }
|
| + static const Ice::ClFlags &getFlags() {
|
| + return Ice::GlobalContext::getFlags();
|
| + }
|
|
|
| // Default implementation. Reports that block is unknown and skips its
|
| // contents.
|
| @@ -3176,7 +3179,7 @@ bool ModuleParser::ParseBlock(unsigned BlockID) {
|
| std::unique_ptr<Ice::Cfg> Func = Parser.parseFunction(SeqNumber);
|
| bool Failed = Func->hasError();
|
| getTranslator().translateFcn(std::move(Func));
|
| - return Failed && !getTranslator().getFlags().getAllowErrorRecovery();
|
| + return Failed && !getFlags().getAllowErrorRecovery();
|
| }
|
| }
|
| default:
|
|
|