1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
diff -rauN jdk10u-jdk-10.0.2+13/src/hotspot/share/c1/c1_Instruction.hpp jdk10u-jdk-10.0.2+13-c1-patch/src/hotspot/share/c1/c1_Instruction.hpp
--- jdk10u-jdk-10.0.2+13/src/hotspot/share/c1/c1_Instruction.hpp 2018-06-24 16:07:06.000000000 +0200
+++ jdk10u-jdk-10.0.2+13-c1-patch/src/hotspot/share/c1/c1_Instruction.hpp 2021-05-17 17:31:40.472148317 +0200
@@ -303,7 +303,6 @@
XHandlers* _exception_handlers; // Flat list of exception handlers covering this instruction
friend class UseCountComputer;
- friend class BlockBegin;
void update_exception_state(ValueStack* state);
@@ -349,7 +348,6 @@
void* operator new(size_t size) throw() {
Compilation* c = Compilation::current();
void* res = c->arena()->Amalloc(size);
- ((Instruction*)res)->_id = c->get_next_id();
return res;
}
@@ -410,7 +408,8 @@
// creation
Instruction(ValueType* type, ValueStack* state_before = NULL, bool type_is_constant = false)
- : _use_count(0)
+ : _id(Compilation::current()->get_next_id())
+ , _use_count(0)
#ifndef PRODUCT
, _printable_bci(-99)
#endif
@@ -1648,8 +1647,6 @@
void* operator new(size_t size) throw() {
Compilation* c = Compilation::current();
void* res = c->arena()->Amalloc(size);
- ((BlockBegin*)res)->_id = c->get_next_id();
- ((BlockBegin*)res)->_block_id = c->get_next_block_id();
return res;
}
@@ -1661,6 +1658,7 @@
// creation
BlockBegin(int bci)
: StateSplit(illegalType)
+ , _block_id(Compilation::current()->get_next_block_id())
, _bci(bci)
, _depth_first_number(-1)
, _linear_scan_number(-1)
diff -rauN jdk10u-jdk-10.0.2+13/src/hotspot/share/c1/c1_ValueMap.cpp jdk10u-jdk-10.0.2+13-c1-patch/src/hotspot/share/c1/c1_ValueMap.cpp
--- jdk10u-jdk-10.0.2+13/src/hotspot/share/c1/c1_ValueMap.cpp 2018-06-24 16:07:06.000000000 +0200
+++ jdk10u-jdk-10.0.2+13-c1-patch/src/hotspot/share/c1/c1_ValueMap.cpp 2021-05-17 17:32:03.702163251 +0200
@@ -488,6 +488,7 @@
: _current_map(NULL)
, _value_maps(ir->linear_scan_order()->length(), ir->linear_scan_order()->length(), NULL)
, _compilation(ir->compilation())
+ , _has_substitutions(false)
{
TRACE_VALUE_NUMBERING(tty->print_cr("****** start of global value numbering"));
|