Skip to content

Commit 533d814

Browse files
TobiHartmannfparain
andcommitted
8355614: [lworld] SIGSEGV in InlineKlass::write_value_to_addr
Co-authored-by: Frederic Parain <[email protected]>
1 parent 4479cf6 commit 533d814

File tree

4 files changed

+8
-8
lines changed

4 files changed

+8
-8
lines changed

src/hotspot/share/classfile/fieldLayoutBuilder.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ LayoutRawBlock::LayoutRawBlock(Kind kind, int size) :
103103
_prev_block(nullptr),
104104
_inline_klass(nullptr),
105105
_block_kind(kind),
106+
_layout_kind(LayoutKind::UNKNOWN),
106107
_offset(-1),
107108
_alignment(1),
108109
_size(size),
@@ -118,6 +119,7 @@ LayoutRawBlock::LayoutRawBlock(int index, Kind kind, int size, int alignment) :
118119
_prev_block(nullptr),
119120
_inline_klass(nullptr),
120121
_block_kind(kind),
122+
_layout_kind(LayoutKind::UNKNOWN),
121123
_offset(-1),
122124
_alignment(alignment),
123125
_size(size),

src/hotspot/share/classfile/fieldLayoutBuilder.hpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ class LayoutRawBlock : public ResourceObj {
7777
int _alignment;
7878
int _size;
7979
int _field_index;
80-
int _null_marker_offset;
8180

8281
public:
8382
LayoutRawBlock(Kind kind, int size);
@@ -110,8 +109,6 @@ class LayoutRawBlock : public ResourceObj {
110109
return _inline_klass;
111110
}
112111
void set_inline_klass(InlineKlass* inline_klass) { _inline_klass = inline_klass; }
113-
void set_null_marker_offset(int offset) { _null_marker_offset = offset; }
114-
int null_marker_offset() const { return _null_marker_offset; }
115112

116113
LayoutKind layout_kind() const { return _layout_kind; }
117114
void set_layout_kind(LayoutKind kind) { _layout_kind = kind; }

src/hotspot/share/oops/resolvedFieldEntry.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ void ResolvedFieldEntry::print_on(outputStream* st) const {
4444
st->print_cr(" - Is Volatile: %d", is_volatile());
4545
st->print_cr(" - Is Flat: %d", is_flat());
4646
st->print_cr(" - Is Null Free Inline Type: %d", is_null_free_inline_type());
47+
st->print_cr(" - Has null marker: %d", has_null_marker());
4748
st->print_cr(" - Get Bytecode: %s", Bytecodes::name((Bytecodes::Code)get_code()));
4849
st->print_cr(" - Put Bytecode: %s", Bytecodes::name((Bytecodes::Code)put_code()));
4950
}

test/hotspot/jtreg/compiler/valhalla/inlinetypes/TestValueConstruction.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1171,23 +1171,23 @@ public MyValue12() {
11711171
}
11721172
}
11731173

1174-
static abstract value class MyAbsract13b {
1175-
MyAbsract13b() {
1174+
static abstract value class MyAbstract13b {
1175+
MyAbstract13b() {
11761176
checkDeopt(4);
11771177
super();
11781178
checkDeopt(5);
11791179
}
11801180
}
11811181

1182-
static abstract value class MyAbsract13a extends MyAbsract13b {
1183-
MyAbsract13a() {
1182+
static abstract value class MyAbstract13a extends MyAbstract13b {
1183+
MyAbstract13a() {
11841184
checkDeopt(2);
11851185
super();
11861186
checkDeopt(3);
11871187
}
11881188
}
11891189

1190-
static value class MyValue13 extends MyAbsract13a {
1190+
static value class MyValue13 extends MyAbstract13a {
11911191
public MyValue13() {
11921192
checkDeopt(0);
11931193
super();

0 commit comments

Comments
 (0)