Index: src/compiler/code-generator.h |
diff --git a/src/compiler/code-generator.h b/src/compiler/code-generator.h |
index 7aed85a37f439113db8082c09112d30d4a97735c..069c9795e151c1a720a7207b4b8dc6886746cc84 100644 |
--- a/src/compiler/code-generator.h |
+++ b/src/compiler/code-generator.h |
@@ -12,6 +12,7 @@ |
#include "src/macro-assembler.h" |
#include "src/safepoint-table.h" |
#include "src/source-position-table.h" |
+#include "src/trap-handler/trap-handler.h" |
namespace v8 { |
namespace internal { |
@@ -51,8 +52,10 @@ class InstructionOperandIterator { |
// Generates native code for a sequence of instructions. |
class CodeGenerator final : public GapResolver::Assembler { |
public: |
- explicit CodeGenerator(Frame* frame, Linkage* linkage, |
- InstructionSequence* code, CompilationInfo* info); |
+ explicit CodeGenerator( |
+ Frame* frame, Linkage* linkage, InstructionSequence* code, |
+ CompilationInfo* info, |
+ trap_handler::ProtectedInstructionList* protected_instructions = nullptr); |
// Generate native code. |
Handle<Code> GenerateCode(); |
@@ -65,6 +68,8 @@ class CodeGenerator final : public GapResolver::Assembler { |
Label* GetLabel(RpoNumber rpo) { return &labels_[rpo.ToSize()]; } |
+ void AddProtectedInstruction(int instr_offset, int landing_offset); |
+ |
private: |
MacroAssembler* masm() { return &masm_; } |
GapResolver* resolver() { return &resolver_; } |
@@ -280,6 +285,7 @@ class CodeGenerator final : public GapResolver::Assembler { |
OutOfLineCode* ools_; |
int osr_pc_offset_; |
SourcePositionTableBuilder source_position_table_builder_; |
+ trap_handler::ProtectedInstructionList* protected_instructions_; |
}; |
} // namespace compiler |