Mercurial > hg > truffle
comparison src/share/vm/runtime/frame.cpp @ 12873:4e7f99b70d9d
Merge
author | adlertz |
---|---|
date | Wed, 09 Oct 2013 05:03:34 -0700 |
parents | 190899198332 |
children | cefad50507d8 63a4eb8bcd23 2b8e28fdf503 6b207d038106 |
comparison
equal
deleted
inserted
replaced
12872:98692a2d36d7 | 12873:4e7f99b70d9d |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 1997, 2013, 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. |
1095 if (oop_adr == NULL) { | 1095 if (oop_adr == NULL) { |
1096 guarantee(oop_adr != NULL, "bad register save location"); | 1096 guarantee(oop_adr != NULL, "bad register save location"); |
1097 return NULL; | 1097 return NULL; |
1098 } | 1098 } |
1099 oop r = *oop_adr; | 1099 oop r = *oop_adr; |
1100 assert(Universe::heap()->is_in_or_null(r), err_msg("bad receiver: " INTPTR_FORMAT " (" INTX_FORMAT ")", (intptr_t) r, (intptr_t) r)); | 1100 assert(Universe::heap()->is_in_or_null(r), err_msg("bad receiver: " INTPTR_FORMAT " (" INTX_FORMAT ")", (void *) r, (void *) r)); |
1101 return r; | 1101 return r; |
1102 } | 1102 } |
1103 | 1103 |
1104 | 1104 |
1105 oop* frame::oopmapreg_to_location(VMReg reg, const RegisterMap* reg_map) const { | 1105 oop* frame::oopmapreg_to_location(VMReg reg, const RegisterMap* reg_map) const { |
1226 } | 1226 } |
1227 | 1227 |
1228 | 1228 |
1229 void frame::ZapDeadClosure::do_oop(oop* p) { | 1229 void frame::ZapDeadClosure::do_oop(oop* p) { |
1230 if (TraceZapDeadLocals) tty->print_cr("zapping @ " INTPTR_FORMAT " containing " INTPTR_FORMAT, p, (address)*p); | 1230 if (TraceZapDeadLocals) tty->print_cr("zapping @ " INTPTR_FORMAT " containing " INTPTR_FORMAT, p, (address)*p); |
1231 // Need cast because on _LP64 the conversion to oop is ambiguous. Constant | 1231 *p = cast_to_oop<intptr_t>(0xbabebabe); |
1232 // can be either long or int. | |
1233 *p = (oop)(int)0xbabebabe; | |
1234 } | 1232 } |
1235 frame::ZapDeadClosure frame::_zap_dead; | 1233 frame::ZapDeadClosure frame::_zap_dead; |
1236 | 1234 |
1237 void frame::zap_dead_locals(JavaThread* thread, const RegisterMap* map) { | 1235 void frame::zap_dead_locals(JavaThread* thread, const RegisterMap* map) { |
1238 assert(thread == Thread::current(), "need to synchronize to do this to another thread"); | 1236 assert(thread == Thread::current(), "need to synchronize to do this to another thread"); |