Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6798785

Crash in OopFlow::build_oop_map: incorrect comparison of 64bit pointers

XMLWordPrintable

    • b02
    • x86, sparc
    • linux_redhat_5.2, solaris, solaris_10
    • Verified

        When defining a Dict you specify the compare and hash functions and Dict provides a couple useful default. In particular for pointers it provides this:

        // Slimey cheap key comparator.
        int32 cmpkey(const void *key1, const void *key2) {
          return (int32)((intptr_t)key1 - (intptr_t)key2);
        }

        Unforturnately in 64-bit mode this throws away the high 32 bits of the pointer.

              never Tom Rodriguez
              dsamersoff Dmitriy Samersoff
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved:
                Imported:
                Indexed: