| Index: src/IceCfg.h
 | 
| diff --git a/src/IceCfg.h b/src/IceCfg.h
 | 
| index 472ba799d5d8cf92faa25438a938efd1a56c2965..5f827f5473ec7a0166cf3675226a0097309d5ca9 100644
 | 
| --- a/src/IceCfg.h
 | 
| +++ b/src/IceCfg.h
 | 
| @@ -15,8 +15,6 @@
 | 
|  #ifndef SUBZERO_SRC_ICECFG_H
 | 
|  #define SUBZERO_SRC_ICECFG_H
 | 
|  
 | 
| -#include <memory>
 | 
| -
 | 
|  #include "assembler.h"
 | 
|  #include "IceClFlags.h"
 | 
|  #include "IceDefs.h"
 | 
| @@ -42,6 +40,7 @@ public:
 | 
|    }
 | 
|    // Gets a pointer to the current thread's Cfg.
 | 
|    static const Cfg *getCurrentCfg() { return ICE_TLS_GET_FIELD(CurrentCfg); }
 | 
| +  void updateTLS() const { ICE_TLS_SET_FIELD(CurrentCfg, this); }
 | 
|    // Gets a pointer to the current thread's Cfg's allocator.
 | 
|    static ArenaAllocator<> *getCurrentCfgAllocator() {
 | 
|      assert(ICE_TLS_GET_FIELD(CurrentCfg));
 | 
| @@ -50,6 +49,12 @@ public:
 | 
|  
 | 
|    GlobalContext *getContext() const { return Ctx; }
 | 
|  
 | 
| +  // Returns true if any of the specified options in the verbose mask
 | 
| +  // are set.  If the argument is omitted, it checks if any verbose
 | 
| +  // options at all are set.
 | 
| +  bool isVerbose(VerboseMask Mask = IceV_All) const { return VMask & Mask; }
 | 
| +  void setVerbose(VerboseMask Mask) { VMask = Mask; }
 | 
| +
 | 
|    // Manage the name and return type of the function being translated.
 | 
|    void setFunctionName(const IceString &Name) { FunctionName = Name; }
 | 
|    IceString getFunctionName() const { return FunctionName; }
 | 
| @@ -184,6 +189,7 @@ private:
 | 
|    Cfg(GlobalContext *Ctx);
 | 
|  
 | 
|    GlobalContext *Ctx;
 | 
| +  VerboseMask VMask;
 | 
|    IceString FunctionName;
 | 
|    Type ReturnType;
 | 
|    bool IsInternalLinkage;
 | 
| 
 |