Add basic block implementation.
Change-Id: I90874960be0afdacaeeb2ce3d3965e0c934d842a
diff --git a/src/compiler_llvm/method_compiler.h b/src/compiler_llvm/method_compiler.h
index 0edf322..532ad1a 100644
--- a/src/compiler_llvm/method_compiler.h
+++ b/src/compiler_llvm/method_compiler.h
@@ -80,6 +80,11 @@
IRBuilder& irb_;
llvm::Function* func_;
+ llvm::BasicBlock* prologue_;
+
+ std::vector<llvm::BasicBlock*> basic_blocks_;
+
+
public:
MethodCompiler(InstructionSet insn_set,
Compiler* compiler,
@@ -109,6 +114,15 @@
llvm::FunctionType* GetFunctionType(uint32_t method_idx, bool is_static);
+
+ // Basic block helper functions
+ llvm::BasicBlock* GetBasicBlock(uint32_t dex_pc);
+
+ llvm::BasicBlock* GetNextBasicBlock(uint32_t dex_pc);
+
+ llvm::BasicBlock* CreateBasicBlockWithDexPC(uint32_t dex_pc,
+ char const* postfix = NULL);
+
};