< prev index next > src/hotspot/share/compiler/oopMap.hpp
Print this page
class OopMap: public ResourceObj {
friend class OopMapStream;
friend class VMStructs;
friend class OopMapSet;
friend class OopMapSort;
+ friend class SCCReader;
private:
int _pc_offset; // offset in the code that this OopMap corresponds to
int _omv_count; // number of OopMapValues in the stream
int _num_oops; // number of oops
int _index; // index in OopMapSet
void set_xxx(VMReg reg, OopMapValue::oop_types x, VMReg optional);
public:
OopMap(int frame_size, int arg_count);
+ OopMap(int data_size);
// pc-offset handling
int offset() const { return _pc_offset; }
void set_offset(int o) { _pc_offset = o; }
int count() const { return _omv_count; }
bool equals(const OopMap* other) const;
};
class OopMapSet : public ResourceObj {
friend class VMStructs;
+ friend class SCCReader;
private:
GrowableArray<OopMap*> _list;
int add(OopMap* value) { return _list.append(value); }
public:
OopMapSet();
+ OopMapSet(int size);
// returns the number of OopMaps in this OopMapSet
int size() const { return _list.length(); }
// returns the OopMap at a given index
OopMap* at(int index) const { return _list.at(index); }
< prev index next >