--- a/hotspot/src/share/vm/asm/codeBuffer.hpp Fri Oct 16 02:05:54 2015 +0300
+++ b/hotspot/src/share/vm/asm/codeBuffer.hpp Tue Oct 13 16:25:50 2015 +0000
@@ -375,6 +375,8 @@
OopRecorder _default_oop_recorder; // override with initialize_oop_recorder
Arena* _overflow_arena;
+ address _last_membar; // used to merge consecutive memory barriers
+
address _decode_begin; // start address for decode
address decode_begin();
@@ -388,6 +390,7 @@
_decode_begin = NULL;
_overflow_arena = NULL;
_code_strings = CodeStrings();
+ _last_membar = NULL;
}
void initialize(address code_start, csize_t code_size) {
@@ -577,6 +580,10 @@
OopRecorder* oop_recorder() const { return _oop_recorder; }
CodeStrings& strings() { return _code_strings; }
+ address last_membar() const { return _last_membar; }
+ void set_last_membar(address a) { _last_membar = a; }
+ void clear_last_membar() { set_last_membar(NULL); }
+
void free_strings() {
if (!_code_strings.is_null()) {
_code_strings.free(); // sets _strings Null as a side-effect.