Module openj9.dtfj

Class J9IndexableObjectHelper

    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static com.ibm.j9ddr.vm29.pointer.generated.J9ArrayClassPointer clazz​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)  
      static long contiguousHeaderSize()
      Get the header size of a contiguous indexable object.
      static long discontiguousHeaderSize()
      Get the header size of a discontiguous indexable object.
      static U32 flags​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)  
      static void getBooleanData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, boolean[] dst, int start, int length, int destStart)  
      static void getByteData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, byte[] dst, int start, int length, int destStart)  
      static void getCharData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, char[] dst, int start, int length, int destStart)  
      static String getClassName​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)  
      static Object getData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)  
      static void getData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, Object dst, int start, int length, int destStart)
      Get the requested array data elements and output these elements to the dst method parameter.
      static VoidPointer getDataAddrForIndexable​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
      Get the dataAddr field for the indexable object.
      static String getDataAsString​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer array)  
      static String getDataAsString​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer array, int dumpLimit, int characterDumpLimit)  
      static void getDoubleData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, double[] dst, int start, int length, int destStart)  
      static VoidPointer getElementEA​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, int index, int dataSize)
      Get the address for the desired element in the array.
      static void getFloatData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, float[] dst, int start, int length, int destStart)  
      static void getIntData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, int[] dst, int start, int length, int destStart)  
      static void getLongData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, long[] dst, int start, int length, int destStart)  
      static void getObjectData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer[] dst, int start, int length, int destStart)  
      static void getShortData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, short[] dst, int start, int length, int destStart)  
      static boolean hasCorrectDataAddrPointer​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
      Determine the validity of the data address belonging to objPointer.
      static UDATA monitor​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)  
      static U32 rawSize​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)  
      static U32 size​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)  
      static U32 size​(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer)  
    • Constructor Detail

      • J9IndexableObjectHelper

        public J9IndexableObjectHelper()
    • Method Detail

      • clazz

        public static com.ibm.j9ddr.vm29.pointer.generated.J9ArrayClassPointer clazz​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
                                                                              throws CorruptDataException
        Throws:
        CorruptDataException
      • contiguousHeaderSize

        public static long contiguousHeaderSize()
        Get the header size of a contiguous indexable object.
      • discontiguousHeaderSize

        public static long discontiguousHeaderSize()
        Get the header size of a discontiguous indexable object.
      • getDataAddrForIndexable

        public static VoidPointer getDataAddrForIndexable​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
                                                   throws CorruptDataException,
                                                          NoSuchFieldException
        Get the dataAddr field for the indexable object.
        Parameters:
        objPointer - the array object whose dataAddr field we are accessing
        Throws:
        CorruptDataException - if there's a problem accessing the indexable object dataAddr field
        NoSuchFieldException - if the indexable object dataAddr field does not exist on the build that generated the core file
      • getElementEA

        public static VoidPointer getElementEA​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                               int index,
                                               int dataSize)
                                        throws CorruptDataException
        Get the address for the desired element in the array.
        Parameters:
        objPointer - array object whose elements we are accessing
        index - the desired index within then array
        dataSize - size of the data held in the array
        Returns:
        the address for the desired element in the array
        Throws:
        CorruptDataException
      • hasCorrectDataAddrPointer

        public static boolean hasCorrectDataAddrPointer​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
                                                 throws CorruptDataException
        Determine the validity of the data address belonging to objPointer.
        Parameters:
        objPointer - array object who's data address validity we are checking
        Returns:
        true if the data address of objPointer is valid, false otherwise
        Throws:
        CorruptDataException - if there's a problem accessing the indexable object dataAddr field
      • getData

        public static void getData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                   Object dst,
                                   int start,
                                   int length,
                                   int destStart)
                            throws CorruptDataException
        Get the requested array data elements and output these elements to the dst method parameter.
        Parameters:
        objPointer - array object whose elements we are accessing
        dst - destination array where we will output the elements
        start - starting index of the elements we are interested in
        length - number of elements to output
        destStart - starting index of destination array where we will start outputting elements
        Throws:
        CorruptDataException
      • getByteData

        public static void getByteData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                       byte[] dst,
                                       int start,
                                       int length,
                                       int destStart)
                                throws CorruptDataException
        Throws:
        CorruptDataException
      • getCharData

        public static void getCharData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                       char[] dst,
                                       int start,
                                       int length,
                                       int destStart)
                                throws CorruptDataException
        Throws:
        CorruptDataException
      • getDoubleData

        public static void getDoubleData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                         double[] dst,
                                         int start,
                                         int length,
                                         int destStart)
                                  throws CorruptDataException
        Throws:
        CorruptDataException
      • getFloatData

        public static void getFloatData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                        float[] dst,
                                        int start,
                                        int length,
                                        int destStart)
                                 throws CorruptDataException
        Throws:
        CorruptDataException
      • getIntData

        public static void getIntData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                      int[] dst,
                                      int start,
                                      int length,
                                      int destStart)
                               throws CorruptDataException
        Throws:
        CorruptDataException
      • getLongData

        public static void getLongData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                       long[] dst,
                                       int start,
                                       int length,
                                       int destStart)
                                throws CorruptDataException
        Throws:
        CorruptDataException
      • getShortData

        public static void getShortData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                        short[] dst,
                                        int start,
                                        int length,
                                        int destStart)
                                 throws CorruptDataException
        Throws:
        CorruptDataException
      • getBooleanData

        public static void getBooleanData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                          boolean[] dst,
                                          int start,
                                          int length,
                                          int destStart)
                                   throws CorruptDataException
        Throws:
        CorruptDataException
      • getObjectData

        public static void getObjectData​(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer,
                                         com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer[] dst,
                                         int start,
                                         int length,
                                         int destStart)
                                  throws CorruptDataException
        Throws:
        CorruptDataException