diff -r f918d6096e23 -r cba7b5c2d53f src/cpu/sparc/vm/frame_sparc.cpp --- a/src/cpu/sparc/vm/frame_sparc.cpp Thu Jun 02 13:36:11 2011 -0700 +++ b/src/cpu/sparc/vm/frame_sparc.cpp Fri Jun 03 22:31:43 2011 -0700 @@ -513,6 +513,8 @@ // interpreted but its pc is in the code cache (for c1 -> osr_frame_return_id stub), so it must be // explicitly recognized. + if (is_ricochet_frame()) return sender_for_ricochet_frame(map); + bool frame_is_interpreted = is_interpreted_frame(); if (frame_is_interpreted) { map->make_integer_regs_unsaved();