Mercurial > hg > truffle
comparison src/share/vm/memory/genOopClosures.hpp @ 3274:2a23b1b5a0a8
7018355: JSR 292: VM crash in DefNewGeneration::copy_to_survivor_space
Reviewed-by: kvn, jrose
author | twisti |
---|---|
date | Mon, 18 Apr 2011 01:33:28 -0700 |
parents | f95d63e2154a |
children | 8d944991dbf9 |
comparison
equal
deleted
inserted
replaced
2485:97e8046e2562 | 3274:2a23b1b5a0a8 |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
173 | 173 |
174 class VerifyOopClosure: public OopClosure { | 174 class VerifyOopClosure: public OopClosure { |
175 protected: | 175 protected: |
176 template <class T> inline void do_oop_work(T* p) { | 176 template <class T> inline void do_oop_work(T* p) { |
177 oop obj = oopDesc::load_decode_heap_oop(p); | 177 oop obj = oopDesc::load_decode_heap_oop(p); |
178 guarantee(obj->is_oop_or_null(), "invalid oop"); | 178 guarantee(obj->is_oop_or_null(), err_msg("invalid oop: " INTPTR_FORMAT, obj)); |
179 } | 179 } |
180 public: | 180 public: |
181 virtual void do_oop(oop* p); | 181 virtual void do_oop(oop* p); |
182 virtual void do_oop(narrowOop* p); | 182 virtual void do_oop(narrowOop* p); |
183 static VerifyOopClosure verify_oop; | 183 static VerifyOopClosure verify_oop; |