#include "test/unittests/interpreter/source-position-matcher.h"
#include "src/objects/objects-inl.h"
#include "src/objects/objects.h"
namespace v8 {
namespace internal {
namespace interpreter {
struct PositionTableEntryComparer { … };
bool SourcePositionMatcher::Match(Handle<BytecodeArray> original_bytecode,
Handle<BytecodeArray> optimized_bytecode) { … }
bool SourcePositionMatcher::HasNewExpressionPositionsInOptimized(
const std::vector<PositionTableEntry>* const original_positions,
const std::vector<PositionTableEntry>* const optimized_positions) { … }
bool SourcePositionMatcher::CompareExpressionPositions(
const std::vector<PositionTableEntry>* const original_positions,
const std::vector<PositionTableEntry>* const optimized_positions) { … }
void SourcePositionMatcher::StripUnneededExpressionPositions(
Handle<BytecodeArray> bytecode_array,
std::vector<PositionTableEntry>* expression_positions,
int next_statement_bytecode_offset) { … }
void SourcePositionMatcher::AdvanceBytecodeIterator(
BytecodeArrayIterator* iterator, int bytecode_offset) { … }
bool SourcePositionMatcher::ExpressionPositionIsNeeded(
Handle<BytecodeArray> bytecode_array, int start_offset, int end_offset) { … }
void SourcePositionMatcher::MoveToNextStatement(
SourcePositionTableIterator* iterator,
std::vector<PositionTableEntry>* positions) { … }
}
}
}