equal
deleted
inserted
replaced
1013 objArrayOop _head; |
1013 objArrayOop _head; |
1014 objArrayOop _methods; |
1014 objArrayOop _methods; |
1015 typeArrayOop _bcis; |
1015 typeArrayOop _bcis; |
1016 int _index; |
1016 int _index; |
1017 bool _dirty; |
1017 bool _dirty; |
1018 bool _done; |
|
1019 No_Safepoint_Verifier _nsv; |
1018 No_Safepoint_Verifier _nsv; |
1020 |
1019 |
1021 public: |
1020 public: |
1022 |
1021 |
1023 enum { |
1022 enum { |
1027 trace_size = java_lang_Throwable::trace_size, |
1026 trace_size = java_lang_Throwable::trace_size, |
1028 trace_chunk_size = java_lang_Throwable::trace_chunk_size |
1027 trace_chunk_size = java_lang_Throwable::trace_chunk_size |
1029 }; |
1028 }; |
1030 |
1029 |
1031 // constructor for new backtrace |
1030 // constructor for new backtrace |
1032 BacktraceBuilder(TRAPS): _methods(NULL), _bcis(NULL), _head(NULL) { |
1031 BacktraceBuilder(TRAPS): _methods(NULL), _bcis(NULL), _head(NULL), _dirty(false) { |
1033 expand(CHECK); |
1032 expand(CHECK); |
1034 _backtrace = _head; |
1033 _backtrace = _head; |
1035 _index = 0; |
1034 _index = 0; |
1036 _dirty = false; |
|
1037 _done = false; |
|
1038 } |
1035 } |
1039 |
1036 |
1040 void flush() { |
1037 void flush() { |
1041 if (_dirty && _methods != NULL) { |
1038 if (_dirty && _methods != NULL) { |
1042 BarrierSet* bs = Universe::heap()->barrier_set(); |
1039 BarrierSet* bs = Universe::heap()->barrier_set(); |