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

NPG: Implement verify_oops equivalent for metadata - verify_method_ptr, verify_klass_ptr

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: Closed
    • Priority: P3
    • Resolution: Won't Fix
    • Affects Version/s: hs25
    • Fix Version/s: 10
    • Component/s: hotspot
    • Subcomponent:
    • CPU:
      generic
    • OS:
      generic

      Description

      From assembler_x86.hpp:

          // only if +VerifyOops
      + // TODO: Make these macros with file and line like sparc version!
          void verify_oop(Register reg, const char* s = "broken oop");
          void verify_oop_addr(Address addr, const char * s = "broken oop addr");
        
      + // TODO: verify method and klass metadata (compare against vptr?)
      + void _verify_method_ptr(Register reg, const char * msg, const char * file, int line) {}
      + void _verify_klass_ptr(Register reg, const char * msg, const char * file, int line){}
      +
      + #define verify_method_ptr(reg) _verify_method_ptr(reg, "broken method " #reg, __FILE__, __LINE__)
      + #define verify_klass_ptr(reg) _verify_klass_ptr(reg, "broken klass " #reg, __FILE__, __LINE__)
      +


      There were some verify_oops() calls removed during permgen removal that should be added back to verify_method_ptr, etc, once implemented.

      And the x86 version doesn't pass FILE and LINE to verify_oop which is really useful.

        Attachments

          Activity

            People

            Assignee:
            mockner Max Ockner (Inactive)
            Reporter:
            coleenp Coleen Phillimore
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: