Now tracking register accesses for each function.

This commit is contained in:
Ben Vanik
2013-01-29 13:07:59 -08:00
parent d1333db404
commit d3054839b7
5 changed files with 220 additions and 23 deletions

View File

@@ -91,7 +91,8 @@ public:
private:
void GenerateSharedBlocks();
void GenerateBasicBlock(sdb::FunctionBlock* block, llvm::BasicBlock* bb);
void PrepareBasicBlock(sdb::FunctionBlock* block);
void GenerateBasicBlock(sdb::FunctionBlock* block);
void setup_xer();
void setup_lr();
@@ -118,8 +119,9 @@ private:
std::map<uint32_t, llvm::BasicBlock*> bbs_;
// Address of the instruction being generated.
uint32_t cia_;
uint32_t cia_;
ppc::InstrAccessBits access_bits_;
struct {
llvm::Value* indirection_target;
llvm::Value* indirection_cia;