Mercurial > hg > truffle
diff src/share/vm/code/nmethod.cpp @ 931:72088be4b386
6873116: Modify reexecute implementation to use pcDesc to record the reexecute bit
Summary: use PcDesc to keep record of the reexecute bit instead of using DebugInfoStreams
Reviewed-by: kvn, never, twisti
author | cfang |
---|---|
date | Thu, 20 Aug 2009 12:42:57 -0700 |
parents | 98cb887364d3 |
children | b1606b3c0a8a 148e5441d916 |
line wrap: on
line diff
--- a/src/share/vm/code/nmethod.cpp Wed Aug 19 19:05:18 2009 -0700 +++ b/src/share/vm/code/nmethod.cpp Thu Aug 20 12:42:57 2009 -0700 @@ -1,5 +1,5 @@ /* - * Copyright 1997-2008 Sun Microsystems, Inc. All Rights Reserved. + * Copyright 1997-2009 Sun Microsystems, Inc. All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -966,7 +966,7 @@ PcDesc* pd = pc_desc_at(pc); guarantee(pd != NULL, "scope must be present"); return new ScopeDesc(this, pd->scope_decode_offset(), - pd->obj_decode_offset()); + pd->obj_decode_offset(), pd->should_reexecute()); } @@ -1932,7 +1932,7 @@ PcDesc* pd = pc_desc_at(ic->end_of_call()); assert(pd != NULL, "PcDesc must exist"); for (ScopeDesc* sd = new ScopeDesc(this, pd->scope_decode_offset(), - pd->obj_decode_offset()); + pd->obj_decode_offset(), pd->should_reexecute()); !sd->is_top(); sd = sd->sender()) { sd->verify(); } @@ -2181,7 +2181,7 @@ PcDesc* p = pc_desc_near(begin+1); if (p != NULL && p->real_pc(this) <= end) { return new ScopeDesc(this, p->scope_decode_offset(), - p->obj_decode_offset()); + p->obj_decode_offset(), p->should_reexecute()); } return NULL; }