Pointer on clean card crosses boundary
Gary Benson
gbenson at redhat.com
Wed Aug 13 01:31:02 PDT 2008
Currently the only places I generate card marks are in putfield and
putstatic. The only other place I can think of where I store an oop
is in the implementation of new, where the klass pointer is stored in
the new object, but I didn't think you needed one there. Where
exactly do you need them? You don't need them if you store an oop in
the stack do you?
Cheers,
Gary
Tony Printezis wrote:
> Gary,
>
> Do you generate card marks for all reference stores?
>
> Tony
>
> Gary Benson wrote:
> > Hi Tony,
> >
> > I'm working on a new compiler, which uses a third-party compiler
> > toolkit (LLVM) rather than generating machine code directly. I'm
> > guessing I either allocated something incorrectly or I generated
> > a broken oopmap, but I just wondered if there's some common thing
> > that people do that would cause this error?
> >
> > Cheers,
> > Gary
> >
> > Tony Printezis wrote:
> > > Gary,
> > >
> > > I assume that the error happens with your changes? Can you give us a
> > > quick description of what your changes involve?
> > >
> > > Tony
> > >
> > > Gary Benson wrote:
> > >
> > > >Hi all,
> > > >
> > > >I'm working on some additions to HotSpot, and I just found the
> > > >VerifyBeforeGC and VerifyAfterGC options. I tried them, but I'm
> > > >seeing this failure:
> > > >
> > > > # Internal Error
> > > > (/home/gbenson/mixtec/openjdk-ecj/hotspot/src/share/vm/memory/cardTableRS.cpp:301), pid=19185, tid=3516646576
> > > > # Error: guarantee(*p == __null || (HeapWord*)p < boundary ||
> > > > (HeapWord*)(*p) >= boundary,"pointer on clean card crosses boundary")
> > > >
> > > >Does anyone know what I might be doing to cause this error?
> > > >
> > > >Cheers,
> > > >Gary
> > > >
> > > --
> > > ----------------------------------------------------------------------
> > > | Tony Printezis, Staff Engineer | Sun Microsystems Inc. |
> > > | | MS BUR02-311 |
> > > | e-mail: tony.printezis at sun.com | 35 Network Drive |
> > > | office: +1 781 442 0998 (x20998) | Burlington, MA01803-0902, USA |
> > > ----------------------------------------------------------------------
> > > e-mail client: Thunderbird (Solaris)
> > >
> >
> >
>
> --
> ----------------------------------------------------------------------
> | Tony Printezis, Staff Engineer | Sun Microsystems Inc. |
> | | MS BUR02-311 |
> | e-mail: tony.printezis at sun.com | 35 Network Drive |
> | office: +1 781 442 0998 (x20998) | Burlington, MA01803-0902, USA |
> ----------------------------------------------------------------------
> e-mail client: Thunderbird (Solaris)
>
>
>
--
http://gbenson.net/
More information about the hotspot-dev
mailing list