本文整理汇总了C++中CodeBlob::oop_maps方法的典型用法代码示例。如果您正苦于以下问题:C++ CodeBlob::oop_maps方法的具体用法?C++ CodeBlob::oop_maps怎么用?C++ CodeBlob::oop_maps使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CodeBlob
的用法示例。
在下文中一共展示了CodeBlob::oop_maps方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: stress_derived_pointers
void InterfaceSupport::stress_derived_pointers() {
#ifdef COMPILER2
JavaThread *thread = JavaThread::current();
if (!is_init_completed()) return;
ResourceMark rm(thread);
bool found = false;
for (StackFrameStream sfs(thread); !sfs.is_done() && !found; sfs.next()) {
CodeBlob* cb = sfs.current()->cb();
if (cb != NULL && cb->oop_maps() ) {
// Find oopmap for current method
const ImmutableOopMap* map = cb->oop_map_for_return_address(sfs.current()->pc());
assert(map != NULL, "no oopmap found for pc");
found = map->has_derived_pointer();
}
}
if (found) {
// $$$ Not sure what to do here.
/*
Scavenge::invoke(0);
*/
}
#endif
}