--- a/hotspot/src/share/vm/compiler/oopMap.cpp Thu Jun 02 13:36:11 2011 -0700
+++ b/hotspot/src/share/vm/compiler/oopMap.cpp Fri Jun 03 22:31:43 2011 -0700
@@ -638,7 +638,9 @@
assert(*derived_loc != (oop)base_loc, "location already added");
assert(_list != NULL, "list must exist");
intptr_t offset = value_of_loc(derived_loc) - value_of_loc(base_loc);
- assert(offset >= -1000000, "wrong derived pointer info");
+ // This assert is invalid because derived pointers can be
+ // arbitrarily far away from their base.
+ // assert(offset >= -1000000, "wrong derived pointer info");
if (TraceDerivedPointers) {
tty->print_cr(