IR: ArrayRef-ize {Insert,Extract}ValueConstantExpr constructors
[oota-llvm.git] / lib / IR / LLVMContextImpl.h
index 5e4919cdf0b995c7511c9185b2991f1e45b4286b..1eead4ad41d5b034f21e8c2b36eadbea68da5d78 100644 (file)
@@ -12,8 +12,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-#ifndef LLVM_LLVMCONTEXT_IMPL_H
-#define LLVM_LLVMCONTEXT_IMPL_H
+#ifndef LLVM_LIB_IR_LLVMCONTEXTIMPL_H
+#define LLVM_LIB_IR_LLVMCONTEXTIMPL_H
 
 #include "AttributeImpl.h"
 #include "ConstantsContext.h"
@@ -37,10 +37,12 @@ namespace llvm {
 
 class ConstantInt;
 class ConstantFP;
+class DiagnosticInfoOptimizationRemark;
+class DiagnosticInfoOptimizationRemarkMissed;
+class DiagnosticInfoOptimizationRemarkAnalysis;
 class LLVMContext;
 class Type;
 class Value;
-struct PassRunListener;
 
 struct DenseMapAPIntKeyInfo {
   struct KeyTy {
@@ -243,6 +245,9 @@ public:
   LLVMContext::DiagnosticHandlerTy DiagnosticHandler;
   void *DiagnosticContext;
 
+  LLVMContext::YieldCallbackTy YieldCallback;
+  void *YieldOpaqueHandle;
+
   typedef DenseMap<DenseMapAPIntKeyInfo::KeyTy, ConstantInt *,
                    DenseMapAPIntKeyInfo> IntMapTy;
   IntMapTy IntConstants;
@@ -369,26 +374,9 @@ public:
   typedef DenseMap<const Function *, ReturnInst *> PrefixDataMapTy;
   PrefixDataMapTy PrefixDataMap;
 
-  /// \brief List of listeners to notify about a pass run.
-  SmallVector<PassRunListener *, 4> RunListeners;
-
-  /// \brief Return true if the given pass name should emit optimization
-  /// remarks.
-  bool optimizationRemarksEnabledFor(const char *PassName) const;
-
   int getOrAddScopeRecordIdxEntry(MDNode *N, int ExistingIdx);
   int getOrAddScopeInlinedAtIdxEntry(MDNode *Scope, MDNode *IA,int ExistingIdx);
-
-  /// \brief Notify that we finished running a pass.
-  void notifyPassRun(LLVMContext *, Pass *, Module *, Function *, BasicBlock *);
-  /// \brief Register the given PassRunListener to receive notifyPassRun()
-  /// callbacks whenever a pass ran. The context will take ownership of the
-  /// listener and free it when the context is destroyed.
-  void addRunListener(PassRunListener *);
-  /// \brief Unregister a PassRunListener so that it no longer receives
-  /// notifyPassRun() callbacks. Remove and free the listener from the context.
-  void removeRunListener(PassRunListener *);
-
+  
   LLVMContextImpl(LLVMContext &C);
   ~LLVMContextImpl();
 };