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 {