1
0
Fork 0

DBG: Small fixes from merge

This commit is contained in:
Nukem 2015-07-09 21:09:52 -04:00
parent 9aa2a0cf7c
commit d74f6478da
6 changed files with 19 additions and 10 deletions

View File

@ -33,6 +33,7 @@ protected:
}
BasicBlock* FindBBlockInRange(uint Address);
uint FindBBlockIndex(BasicBlock* Block);
void AcquireReadLock();
void ReleaseReadLock();
void AcquireExclusiveLock();

View File

@ -1,3 +1,4 @@
#include <thread>
#include "AnalysisPass.h"
#include "Int3CoagulatorPass.h"
#include "console.h"

View File

@ -1,8 +1,5 @@
#pragma once
#include <vector>
#include <thread>
#include "AnalysisPass.h"
#include "BasicBlock.h"
@ -16,5 +13,5 @@ public:
virtual bool Analyse() override;
private:
void AnalysisWorker(uint Start, uint End, std::vector<BasicBlock>* Blocks);
void AnalysisWorker(uint Start, uint End, BBlockArray* Blocks);
};

View File

@ -1,9 +1,8 @@
#include "AnalysisPass.h"
#include "LinearPass.h"
#include <thread>
#include <ppl.h>
#include "console.h"
#include "function.h"
#include "AnalysisPass.h"
#include "LinearPass.h"
#include "capstone_wrapper.h"
LinearPass::LinearPass(uint VirtualStart, uint VirtualEnd, BBlockArray & MainBlocks)
: AnalysisPass(VirtualStart, VirtualEnd, MainBlocks)

View File

@ -2,7 +2,6 @@
#include "AnalysisPass.h"
#include "BasicBlock.h"
#include "capstone_wrapper.h"
class LinearPass : public AnalysisPass
{

View File

@ -3,6 +3,11 @@
#include "memory.h"
#include "function.h"
#include "AnalysisPass.h"
#include "BasicBlock.h"
#include "FunctionPass.h"
#include "LinearPass.h"
FunctionAnalysis::FunctionAnalysis(uint base, uint size) : Analysis(base, size)
{
}
@ -12,10 +17,17 @@ void FunctionAnalysis::Analyse()
dputs("Starting analysis...");
DWORD ticks = GetTickCount();
BBlockArray blocks;
LinearPass* pass1 = new LinearPass(_base, _base + _size, blocks);
pass1->Analyse();
FunctionPass* pass2 = new FunctionPass(_base, _base + _size, blocks);
pass2->Analyse();
/*
PopulateReferences();
dprintf("%u called functions populated\n", _functions.size());
AnalyseFunctions();
*/
dprintf("Analysis finished in %ums!\n", GetTickCount() - ticks);
}