< prev index next >
src/share/vm/memory/iterator.hpp
Print this page
rev 10188 : [mq]: scavenge_nmethods_auto_prune
*** 283,295 ****
--- 283,298 ----
OopClosure* _cl;
bool _fix_relocations;
protected:
void do_nmethod(nmethod* nm);
public:
+ // If fix_relocations(), then cl must copy objects to their new location immediately to avoid
+ // patching nmethods with the old locations.
CodeBlobToOopClosure(OopClosure* cl, bool fix_relocations) : _cl(cl), _fix_relocations(fix_relocations) {}
virtual void do_code_blob(CodeBlob* cb);
+ bool fix_relocations() const { return _fix_relocations; }
const static bool FixRelocations = true;
};
class MarkingCodeBlobClosure : public CodeBlobToOopClosure {
public:
< prev index next >