Mercurial > hg > truffle
diff src/share/vm/runtime/deoptimization.cpp @ 7222:720925633b3a
fixes after merge
author | Christian Haeubl <haeubl@ssw.jku.at> |
---|---|
date | Tue, 11 Dec 2012 09:10:50 +0100 |
parents | a818db37b7be |
children | 8a3efb8c831d |
line wrap: on
line diff
--- a/src/share/vm/runtime/deoptimization.cpp Tue Dec 11 08:48:12 2012 +0100 +++ b/src/share/vm/runtime/deoptimization.cpp Tue Dec 11 09:10:50 2012 +0100 @@ -868,13 +868,19 @@ } } -typedef struct { - int offset; - BasicType type; -} ReassignedField; +class ReassignedField { +public: + int _offset; + BasicType _type; +public: + ReassignedField() { + _offset = 0; + _type = T_ILLEGAL; + } +}; int compare(ReassignedField* left, ReassignedField* right) { - return left->offset - right->offset; + return left->_offset - right->_offset; } // Restore fields of an eliminated instance object using the same field order @@ -888,8 +894,8 @@ for (AllFieldStream fs(klass); !fs.done(); fs.next()) { if (!fs.access_flags().is_static()) { ReassignedField field; - field.offset = fs.offset(); - field.type = FieldType::basic_type(fs.signature()); + field._offset = fs.offset(); + field._type = FieldType::basic_type(fs.signature()); fields->append(field); } } @@ -897,8 +903,8 @@ for (int i = 0; i < fields->length(); i++) { intptr_t val; StackValue* value = StackValue::create_stack_value(fr, reg_map, sv->field_at(svIndex)); - int offset = fields->at(i).offset; - BasicType type = fields->at(i).type; + int offset = fields->at(i)._offset; + BasicType type = fields->at(i)._type; switch (type) { case T_OBJECT: case T_ARRAY: assert(value->type() == T_OBJECT, "Agreement.");