Index: src/assembler.h |
=================================================================== |
--- src/assembler.h (revision 13212) |
+++ src/assembler.h (working copy) |
@@ -53,7 +53,6 @@ |
struct StatsCounter; |
// ----------------------------------------------------------------------------- |
// Platform independent assembler base class. |
- |
danno
2012/12/20 16:27:20
nit: don't make whitespace changes unrelated to yo
|
class AssemblerBase: public Malloced { |
public: |
AssemblerBase(Isolate* isolate, void* buffer, int buffer_size); |
@@ -821,7 +820,6 @@ |
int written_statement_position; |
}; |
- |
danno
2012/12/20 16:27:20
nit: don't make whitespace changes unrelated to yo
|
class PositionsRecorder BASE_EMBEDDED { |
public: |
explicit PositionsRecorder(Assembler* assembler) |
@@ -829,13 +827,17 @@ |
#ifdef ENABLE_GDB_JIT_INTERFACE |
gdbjit_lineinfo_ = NULL; |
#endif |
+ jit_code_event_line_info_ = NULL; |
} |
+~PositionsRecorder() { |
#ifdef ENABLE_GDB_JIT_INTERFACE |
- ~PositionsRecorder() { |
delete gdbjit_lineinfo_; |
+#endif |
+ delete jit_code_event_line_info_; |
} |
+#ifdef ENABLE_GDB_JIT_INTERFACE |
void StartGDBJITLineInfoRecording() { |
if (FLAG_gdbjit) { |
gdbjit_lineinfo_ = new GDBJITLineInfo(); |
@@ -848,7 +850,16 @@ |
return lineinfo; |
} |
#endif |
+ JITCodeLineInfo* InitializeJITLineInfo() { |
+ jit_code_event_line_info_ = new JITCodeLineInfo(); |
+ return jit_code_event_line_info_; |
+ } |
+ JITCodeLineInfo* DetachJITLineInfo() { |
+ JITCodeLineInfo* lineinfo = jit_code_event_line_info_; |
+ jit_code_event_line_info_ = NULL; |
+ return lineinfo; |
+ } |
// Set current position to pos. |
void RecordPosition(int pos); |
@@ -864,13 +875,16 @@ |
return state_.current_statement_position; |
} |
+ Assembler* assembler() { |
+ return assembler_; |
+ } |
private: |
Assembler* assembler_; |
PositionState state_; |
#ifdef ENABLE_GDB_JIT_INTERFACE |
GDBJITLineInfo* gdbjit_lineinfo_; |
#endif |
- |
+ JITCodeLineInfo* jit_code_event_line_info_; |
friend class PreservePositionScope; |
DISALLOW_COPY_AND_ASSIGN(PositionsRecorder); |