Enable jitting with a known memory size.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49924 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/ExecutionEngine/JIT/JITDwarfEmitter.h b/lib/ExecutionEngine/JIT/JITDwarfEmitter.h
index 72c9b45..cbe409e 100644
--- a/lib/ExecutionEngine/JIT/JITDwarfEmitter.h
+++ b/lib/ExecutionEngine/JIT/JITDwarfEmitter.h
@@ -35,9 +35,6 @@
bool needsIndirectEncoding;
bool stackGrowthDirection;
-public:
- JITDwarfEmitter(JIT& jit);
-
unsigned char* EmitExceptionTable(MachineFunction* MF,
unsigned char* StartFunction,
unsigned char* EndFunction);
@@ -53,17 +50,37 @@
unsigned char* EndFunction,
unsigned char* ExceptionTable);
+ unsigned GetExceptionTableSize(MachineFunction* MF);
+
+ unsigned GetFrameMovesSize(intptr_t BaseLabelPtr,
+ const std::vector<MachineMove> &Moves);
+
+ unsigned GetCommonEHFrameSize(const Function* Personality);
+ unsigned GetEHFrameSize(const Function* Personality,
+ unsigned char* StartFunction);
+
+public:
+
+ JITDwarfEmitter(JIT& jit);
+
unsigned char* EmitDwarfTable(MachineFunction& F,
MachineCodeEmitter& MCE,
unsigned char* StartFunction,
unsigned char* EndFunction);
+
+ unsigned GetDwarfTableSize(MachineFunction& F,
+ MachineCodeEmitter& MCE,
+ unsigned char* StartFunction,
+ unsigned char* EndFunction);
+
void setModuleInfo(MachineModuleInfo* Info) {
MMI = Info;
}
};
+
} // end namespace llvm
#endif // LLVM_EXECUTION_ENGINE_JIT_DWARFEMITTER_H