Mercurial > hg > truffle
comparison src/share/vm/code/debugInfo.hpp @ 8151:b8f261ba79c6
Minimize diff to plain HotSpot version.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Thu, 07 Mar 2013 21:00:29 +0100 |
parents | b6a8f2d23057 |
children | c5ff08c22458 |
comparison
equal
deleted
inserted
replaced
8150:b66f831ac5ab | 8151:b8f261ba79c6 |
---|---|
85 void write_on(DebugInfoWriteStream* stream); | 85 void write_on(DebugInfoWriteStream* stream); |
86 | 86 |
87 // Printing | 87 // Printing |
88 void print_on(outputStream* st) const; | 88 void print_on(outputStream* st) const; |
89 }; | 89 }; |
90 | |
91 #ifdef GRAAL | |
92 | |
93 class DeferredLocationValue: public ScopeValue { | |
94 private: | |
95 ScopeValue* _base; | |
96 ScopeValue* _index; | |
97 jint _scale; | |
98 jlong _disp; | |
99 public: | |
100 DeferredLocationValue(ScopeValue* base, ScopeValue* index, jint scale, jlong disp) | |
101 : _base(base), _index(index), _scale(scale), _disp(disp) { } | |
102 | |
103 ScopeValue* base() { return _base; } | |
104 ScopeValue* index() { return _index; } | |
105 jint scale() { return _scale; } | |
106 jlong disp() { return _disp; } | |
107 | |
108 // Serialization of debugging information | |
109 DeferredLocationValue(DebugInfoReadStream* stream); | |
110 void write_on(DebugInfoWriteStream* stream); | |
111 | |
112 // Printing | |
113 void print_on(outputStream* st) const; | |
114 }; | |
115 | |
116 | |
117 class DeferredReadValue: public DeferredLocationValue { | |
118 public: | |
119 DeferredReadValue(ScopeValue* base, ScopeValue* index, jint scale, jint disp) | |
120 : DeferredLocationValue(base, index, scale, disp) { } | |
121 | |
122 // Serialization of debugging information | |
123 DeferredReadValue(DebugInfoReadStream* stream); | |
124 void write_on(DebugInfoWriteStream* stream); | |
125 | |
126 // Printing | |
127 void print_on(outputStream* st) const; | |
128 }; | |
129 | |
130 class DeferredWriteValue: public DeferredLocationValue { | |
131 private: | |
132 ScopeValue* _value; | |
133 public: | |
134 DeferredWriteValue(ScopeValue* base, ScopeValue* index, jint scale, jint disp, ScopeValue* value) | |
135 : DeferredLocationValue(base, index, scale, disp), _value(value) { } | |
136 | |
137 ScopeValue* value() { return _value; } | |
138 | |
139 // Serialization of debugging information | |
140 DeferredWriteValue(DebugInfoReadStream* stream); | |
141 void write_on(DebugInfoWriteStream* stream); | |
142 | |
143 // Printing | |
144 void print_on(outputStream* st) const; | |
145 }; | |
146 | |
147 #endif // GRAAL | |
148 | 90 |
149 | 91 |
150 // An ObjectValue describes an object eliminated by escape analysis. | 92 // An ObjectValue describes an object eliminated by escape analysis. |
151 | 93 |
152 class ObjectValue: public ScopeValue { | 94 class ObjectValue: public ScopeValue { |