public class com.oracle.svm.core.posix.PosixVirtualMemoryProvider implements com.oracle.svm.core.os.VirtualMemoryProvider
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.svm.core.posix.PosixVirtualMemoryProvider
  super_class: java.lang.Object
{
  protected static final int NO_FD;
    descriptor: I
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  protected static final int NO_FD_OFFSET;
    descriptor: I
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final com.oracle.svm.core.c.CGlobalData<org.graalvm.nativeimage.c.type.WordPointer> CACHED_PAGE_SIZE;
    descriptor: Lcom/oracle/svm/core/c/CGlobalData;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lcom/oracle/svm/core/c/CGlobalData<Lorg/graalvm/nativeimage/c/type/WordPointer;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 74
            invokestatic com.oracle.svm.core.c.CGlobalDataFactory.createWord:()Lcom/oracle/svm/core/c/CGlobalData;
            putstatic com.oracle.svm.core.posix.PosixVirtualMemoryProvider.CACHED_PAGE_SIZE:Lcom/oracle/svm/core/c/CGlobalData;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
         0: .line 70
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/core/posix/PosixVirtualMemoryProvider;

  public static org.graalvm.word.UnsignedWord getPageSize();
    descriptor: ()Lorg/graalvm/word/UnsignedWord;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=0
         0: .line 78
            getstatic com.oracle.svm.core.posix.PosixVirtualMemoryProvider.CACHED_PAGE_SIZE:Lcom/oracle/svm/core/c/CGlobalData;
            invokevirtual com.oracle.svm.core.c.CGlobalData.get:()Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.nativeimage.c.type.WordPointer
            invokeinterface org.graalvm.nativeimage.c.type.WordPointer.read:()Lorg/graalvm/word/WordBase;
            checkcast org.graalvm.compiler.word.Word
            astore 0 /* value */
        start local 0 // org.graalvm.compiler.word.Word value
         1: .line 79
            aload 0 /* value */
            invokestatic org.graalvm.word.WordFactory.zero:()Lorg/graalvm/word/WordBase;
            checkcast org.graalvm.compiler.word.Word
            invokevirtual org.graalvm.compiler.word.Word.equal:(Lorg/graalvm/compiler/word/Word;)Z
            ifeq 5
         2: .line 80
            invokestatic com.oracle.svm.core.posix.headers.Unistd._SC_PAGE_SIZE:()I
            invokestatic com.oracle.svm.core.posix.headers.Unistd$NoTransitions.sysconf:(I)J
            lstore 1 /* queried */
        start local 1 // long queried
         3: .line 81
            lload 1 /* queried */
            invokestatic org.graalvm.word.WordFactory.unsigned:(J)Lorg/graalvm/word/UnsignedWord;
            checkcast org.graalvm.compiler.word.Word
            astore 0 /* value */
         4: .line 82
            getstatic com.oracle.svm.core.posix.PosixVirtualMemoryProvider.CACHED_PAGE_SIZE:Lcom/oracle/svm/core/c/CGlobalData;
            invokevirtual com.oracle.svm.core.c.CGlobalData.get:()Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.nativeimage.c.type.WordPointer
            aload 0 /* value */
            invokeinterface org.graalvm.nativeimage.c.type.WordPointer.write:(Lorg/graalvm/word/WordBase;)V
        end local 1 // long queried
         5: .line 84
      StackMap locals: org.graalvm.compiler.word.Word
      StackMap stack:
            aload 0 /* value */
            areturn
        end local 0 // org.graalvm.compiler.word.Word value
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            1    6     0    value  Lorg/graalvm/compiler/word/Word;
            3    5     1  queried  J
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.Uninterruptible(reason = "Called from uninterruptible code.", mayBeInlined = true)

  protected static int accessAsProt(int);
    descriptor: (I)I
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // int access
         0: .line 89
            iconst_0
            istore 1 /* prot */
        start local 1 // int prot
         1: .line 90
            iload 0 /* access */
            iconst_1
            iand
            ifeq 3
         2: .line 91
            iload 1 /* prot */
            invokestatic com.oracle.svm.core.posix.headers.Mman.PROT_READ:()I
            ior
            istore 1 /* prot */
         3: .line 93
      StackMap locals: int
      StackMap stack:
            iload 0 /* access */
            iconst_2
            iand
            ifeq 5
         4: .line 94
            iload 1 /* prot */
            invokestatic com.oracle.svm.core.posix.headers.Mman.PROT_WRITE:()I
            ior
            istore 1 /* prot */
         5: .line 96
      StackMap locals:
      StackMap stack:
            iload 0 /* access */
            iconst_4
            iand
            ifeq 7
         6: .line 97
            iload 1 /* prot */
            invokestatic com.oracle.svm.core.posix.headers.Mman.PROT_EXEC:()I
            ior
            istore 1 /* prot */
         7: .line 99
      StackMap locals:
      StackMap stack:
            iload 1 /* prot */
            ireturn
        end local 1 // int prot
        end local 0 // int access
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0  access  I
            1    8     1    prot  I
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.Uninterruptible(reason = "May be called from uninterruptible code.", mayBeInlined = true)
    MethodParameters:
        Name  Flags
      access  

  public org.graalvm.word.UnsignedWord getGranularity();
    descriptor: ()Lorg/graalvm/word/UnsignedWord;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
         0: .line 105
            invokestatic com.oracle.svm.core.posix.PosixVirtualMemoryProvider.getPageSize:()Lorg/graalvm/word/UnsignedWord;
            areturn
        end local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/core/posix/PosixVirtualMemoryProvider;
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.Uninterruptible(reason = "May be called from uninterruptible code.", mayBeInlined = true)

  public org.graalvm.word.Pointer reserve(org.graalvm.word.UnsignedWord, org.graalvm.word.UnsignedWord);
    descriptor: (Lorg/graalvm/word/UnsignedWord;Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/Pointer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=12, args_size=3
        start local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
        start local 1 // org.graalvm.word.UnsignedWord nbytes
        start local 2 // org.graalvm.word.UnsignedWord alignment
         0: .line 111
            aload 0 /* this */
            invokevirtual com.oracle.svm.core.posix.PosixVirtualMemoryProvider.getGranularity:()Lorg/graalvm/word/UnsignedWord;
            astore 3 /* granularity */
        start local 3 // org.graalvm.word.UnsignedWord granularity
         1: .line 112
            aload 3 /* granularity */
            aload 2 /* alignment */
            invokestatic com.oracle.svm.core.util.UnsignedUtils.isAMultiple:(Lorg/graalvm/word/UnsignedWord;Lorg/graalvm/word/UnsignedWord;)Z
            ifeq 2
            iconst_0
            goto 3
      StackMap locals: org.graalvm.word.UnsignedWord
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: istore 4 /* customAlignment */
        start local 4 // boolean customAlignment
         4: .line 113
            aload 1 /* nbytes */
            astore 5 /* mappingSize */
        start local 5 // org.graalvm.word.UnsignedWord mappingSize
         5: .line 114
            iload 4 /* customAlignment */
            ifeq 7
         6: .line 115
            aload 5 /* mappingSize */
            aload 2 /* alignment */
            invokeinterface org.graalvm.word.UnsignedWord.add:(Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/UnsignedWord;
            astore 5 /* mappingSize */
         7: .line 117
      StackMap locals: int org.graalvm.word.UnsignedWord
      StackMap stack:
            aload 5 /* mappingSize */
            aload 3 /* granularity */
            invokestatic com.oracle.svm.core.util.UnsignedUtils.roundUp:(Lorg/graalvm/word/UnsignedWord;Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/UnsignedWord;
            astore 5 /* mappingSize */
         8: .line 118
            invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
            aload 5 /* mappingSize */
            invokestatic com.oracle.svm.core.posix.headers.Mman.PROT_NONE:()I
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_ANON:()I
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_PRIVATE:()I
            ior
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_NORESERVE:()I
            ior
            iconst_m1
            lconst_0
            invokestatic com.oracle.svm.core.posix.headers.Mman$NoTransitions.mmap:(Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;IIIJ)Lorg/graalvm/word/Pointer;
            astore 6 /* mappingBegin */
        start local 6 // org.graalvm.word.Pointer mappingBegin
         9: .line 119
            aload 6 /* mappingBegin */
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_FAILED:()Lorg/graalvm/word/PointerBase;
            invokeinterface org.graalvm.word.Pointer.equal:(Lorg/graalvm/word/ComparableWord;)Z
            ifeq 11
        10: .line 120
            invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.word.Pointer
            areturn
        11: .line 122
      StackMap locals: org.graalvm.word.Pointer
      StackMap stack:
            iload 4 /* customAlignment */
            ifne 13
        12: .line 123
            aload 6 /* mappingBegin */
            areturn
        13: .line 125
      StackMap locals:
      StackMap stack:
            aload 6 /* mappingBegin */
            aload 2 /* alignment */
            invokestatic com.oracle.svm.core.util.PointerUtils.roundUp:(Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/Pointer;
            astore 7 /* begin */
        start local 7 // org.graalvm.word.Pointer begin
        14: .line 126
            aload 7 /* begin */
            aload 6 /* mappingBegin */
            invokeinterface org.graalvm.word.Pointer.subtract:(Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/Pointer;
            astore 8 /* clippedBegin */
        start local 8 // org.graalvm.word.UnsignedWord clippedBegin
        15: .line 127
            aload 8 /* clippedBegin */
            aload 3 /* granularity */
            invokeinterface org.graalvm.word.UnsignedWord.aboveOrEqual:(Lorg/graalvm/word/UnsignedWord;)Z
            ifeq 17
        16: .line 128
            aload 6 /* mappingBegin */
            aload 8 /* clippedBegin */
            aload 3 /* granularity */
            invokestatic com.oracle.svm.core.util.UnsignedUtils.roundDown:(Lorg/graalvm/word/UnsignedWord;Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/UnsignedWord;
            invokestatic com.oracle.svm.core.posix.headers.Mman$NoTransitions.munmap:(Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;)I
            pop
        17: .line 130
      StackMap locals: org.graalvm.word.Pointer org.graalvm.word.UnsignedWord
      StackMap stack:
            aload 6 /* mappingBegin */
            aload 5 /* mappingSize */
            invokeinterface org.graalvm.word.Pointer.add:(Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/Pointer;
            astore 9 /* mappingEnd */
        start local 9 // org.graalvm.word.Pointer mappingEnd
        18: .line 131
            aload 9 /* mappingEnd */
            aload 7 /* begin */
            aload 1 /* nbytes */
            invokeinterface org.graalvm.word.Pointer.add:(Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/Pointer;
            invokeinterface org.graalvm.word.Pointer.subtract:(Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/Pointer;
            astore 10 /* clippedEnd */
        start local 10 // org.graalvm.word.UnsignedWord clippedEnd
        19: .line 132
            aload 10 /* clippedEnd */
            aload 3 /* granularity */
            invokeinterface org.graalvm.word.UnsignedWord.aboveOrEqual:(Lorg/graalvm/word/UnsignedWord;)Z
            ifeq 22
        20: .line 133
            aload 10 /* clippedEnd */
            aload 3 /* granularity */
            invokestatic com.oracle.svm.core.util.UnsignedUtils.roundDown:(Lorg/graalvm/word/UnsignedWord;Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/UnsignedWord;
            astore 11 /* rounded */
        start local 11 // org.graalvm.word.UnsignedWord rounded
        21: .line 134
            aload 9 /* mappingEnd */
            aload 11 /* rounded */
            invokeinterface org.graalvm.word.Pointer.subtract:(Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/Pointer;
            aload 11 /* rounded */
            invokestatic com.oracle.svm.core.posix.headers.Mman$NoTransitions.munmap:(Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;)I
            pop
        end local 11 // org.graalvm.word.UnsignedWord rounded
        22: .line 136
      StackMap locals: org.graalvm.word.Pointer org.graalvm.word.UnsignedWord
      StackMap stack:
            aload 7 /* begin */
            areturn
        end local 10 // org.graalvm.word.UnsignedWord clippedEnd
        end local 9 // org.graalvm.word.Pointer mappingEnd
        end local 8 // org.graalvm.word.UnsignedWord clippedBegin
        end local 7 // org.graalvm.word.Pointer begin
        end local 6 // org.graalvm.word.Pointer mappingBegin
        end local 5 // org.graalvm.word.UnsignedWord mappingSize
        end local 4 // boolean customAlignment
        end local 3 // org.graalvm.word.UnsignedWord granularity
        end local 2 // org.graalvm.word.UnsignedWord alignment
        end local 1 // org.graalvm.word.UnsignedWord nbytes
        end local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   23     0             this  Lcom/oracle/svm/core/posix/PosixVirtualMemoryProvider;
            0   23     1           nbytes  Lorg/graalvm/word/UnsignedWord;
            0   23     2        alignment  Lorg/graalvm/word/UnsignedWord;
            1   23     3      granularity  Lorg/graalvm/word/UnsignedWord;
            4   23     4  customAlignment  Z
            5   23     5      mappingSize  Lorg/graalvm/word/UnsignedWord;
            9   23     6     mappingBegin  Lorg/graalvm/word/Pointer;
           14   23     7            begin  Lorg/graalvm/word/Pointer;
           15   23     8     clippedBegin  Lorg/graalvm/word/UnsignedWord;
           18   23     9       mappingEnd  Lorg/graalvm/word/Pointer;
           19   23    10       clippedEnd  Lorg/graalvm/word/UnsignedWord;
           21   22    11          rounded  Lorg/graalvm/word/UnsignedWord;
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.Uninterruptible(reason = "May be called from uninterruptible code.", mayBeInlined = true)
    MethodParameters:
           Name  Flags
      nbytes     
      alignment  

  public org.graalvm.word.Pointer mapFile(org.graalvm.word.PointerBase, org.graalvm.word.UnsignedWord, org.graalvm.word.WordBase, org.graalvm.word.UnsignedWord, int);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;Lorg/graalvm/word/WordBase;Lorg/graalvm/word/UnsignedWord;I)Lorg/graalvm/word/Pointer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=9, args_size=6
        start local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
        start local 1 // org.graalvm.word.PointerBase start
        start local 2 // org.graalvm.word.UnsignedWord nbytes
        start local 3 // org.graalvm.word.WordBase fileHandle
        start local 4 // org.graalvm.word.UnsignedWord offset
        start local 5 // int access
         0: .line 142
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_PRIVATE:()I
            istore 6 /* flags */
        start local 6 // int flags
         1: .line 143
            aload 1 /* start */
            invokeinterface org.graalvm.word.PointerBase.isNonNull:()Z
            ifeq 3
         2: .line 144
            iload 6 /* flags */
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_FIXED:()I
            ior
            istore 6 /* flags */
         3: .line 146
      StackMap locals: int
      StackMap stack:
            aload 3 /* fileHandle */
            invokeinterface org.graalvm.word.WordBase.rawValue:()J
            l2i
            istore 7 /* fd */
        start local 7 // int fd
         4: .line 147
            aload 1 /* start */
            aload 2 /* nbytes */
            iload 5 /* access */
            invokestatic com.oracle.svm.core.posix.PosixVirtualMemoryProvider.accessAsProt:(I)I
            iload 6 /* flags */
            iload 7 /* fd */
            aload 4 /* offset */
            invokeinterface org.graalvm.word.UnsignedWord.rawValue:()J
            invokestatic com.oracle.svm.core.posix.headers.Mman$NoTransitions.mmap:(Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;IIIJ)Lorg/graalvm/word/Pointer;
            astore 8 /* result */
        start local 8 // org.graalvm.word.Pointer result
         5: .line 148
            aload 8 /* result */
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_FAILED:()Lorg/graalvm/word/PointerBase;
            invokeinterface org.graalvm.word.Pointer.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
            ifeq 6
            aload 8 /* result */
            goto 7
      StackMap locals: int org.graalvm.word.Pointer
      StackMap stack:
         6: invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.word.Pointer
      StackMap locals:
      StackMap stack: org.graalvm.word.Pointer
         7: areturn
        end local 8 // org.graalvm.word.Pointer result
        end local 7 // int fd
        end local 6 // int flags
        end local 5 // int access
        end local 4 // org.graalvm.word.UnsignedWord offset
        end local 3 // org.graalvm.word.WordBase fileHandle
        end local 2 // org.graalvm.word.UnsignedWord nbytes
        end local 1 // org.graalvm.word.PointerBase start
        end local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lcom/oracle/svm/core/posix/PosixVirtualMemoryProvider;
            0    8     1       start  Lorg/graalvm/word/PointerBase;
            0    8     2      nbytes  Lorg/graalvm/word/UnsignedWord;
            0    8     3  fileHandle  Lorg/graalvm/word/WordBase;
            0    8     4      offset  Lorg/graalvm/word/UnsignedWord;
            0    8     5      access  I
            1    8     6       flags  I
            4    8     7          fd  I
            5    8     8      result  Lorg/graalvm/word/Pointer;
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.Uninterruptible(reason = "May be called from uninterruptible code.", mayBeInlined = true)
    MethodParameters:
            Name  Flags
      start       
      nbytes      
      fileHandle  
      offset      
      access      

  public org.graalvm.word.Pointer commit(org.graalvm.word.PointerBase, org.graalvm.word.UnsignedWord, int);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;I)Lorg/graalvm/word/Pointer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
        start local 1 // org.graalvm.word.PointerBase start
        start local 2 // org.graalvm.word.UnsignedWord nbytes
        start local 3 // int access
         0: .line 154
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_ANON:()I
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_PRIVATE:()I
            ior
            istore 4 /* flags */
        start local 4 // int flags
         1: .line 155
            aload 1 /* start */
            invokeinterface org.graalvm.word.PointerBase.isNonNull:()Z
            ifeq 3
         2: .line 156
            iload 4 /* flags */
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_FIXED:()I
            ior
            istore 4 /* flags */
         3: .line 158
      StackMap locals: int
      StackMap stack:
            aload 1 /* start */
            aload 2 /* nbytes */
            iload 3 /* access */
            invokestatic com.oracle.svm.core.posix.PosixVirtualMemoryProvider.accessAsProt:(I)I
            iload 4 /* flags */
            iconst_m1
            lconst_0
            invokestatic com.oracle.svm.core.posix.headers.Mman$NoTransitions.mmap:(Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;IIIJ)Lorg/graalvm/word/Pointer;
            astore 5 /* result */
        start local 5 // org.graalvm.word.Pointer result
         4: .line 159
            aload 5 /* result */
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_FAILED:()Lorg/graalvm/word/PointerBase;
            invokeinterface org.graalvm.word.Pointer.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
            ifeq 5
            aload 5 /* result */
            goto 6
      StackMap locals: org.graalvm.word.Pointer
      StackMap stack:
         5: invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.word.Pointer
      StackMap locals:
      StackMap stack: org.graalvm.word.Pointer
         6: areturn
        end local 5 // org.graalvm.word.Pointer result
        end local 4 // int flags
        end local 3 // int access
        end local 2 // org.graalvm.word.UnsignedWord nbytes
        end local 1 // org.graalvm.word.PointerBase start
        end local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lcom/oracle/svm/core/posix/PosixVirtualMemoryProvider;
            0    7     1   start  Lorg/graalvm/word/PointerBase;
            0    7     2  nbytes  Lorg/graalvm/word/UnsignedWord;
            0    7     3  access  I
            1    7     4   flags  I
            4    7     5  result  Lorg/graalvm/word/Pointer;
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.Uninterruptible(reason = "May be called from uninterruptible code.", mayBeInlined = true)
    MethodParameters:
        Name  Flags
      start   
      nbytes  
      access  

  public int protect(org.graalvm.word.PointerBase, org.graalvm.word.UnsignedWord, int);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
        start local 1 // org.graalvm.word.PointerBase start
        start local 2 // org.graalvm.word.UnsignedWord nbytes
        start local 3 // int access
         0: .line 165
            aload 1 /* start */
            aload 2 /* nbytes */
            iload 3 /* access */
            invokestatic com.oracle.svm.core.posix.PosixVirtualMemoryProvider.accessAsProt:(I)I
            invokestatic com.oracle.svm.core.posix.headers.Mman$NoTransitions.mprotect:(Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;I)I
            ireturn
        end local 3 // int access
        end local 2 // org.graalvm.word.UnsignedWord nbytes
        end local 1 // org.graalvm.word.PointerBase start
        end local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lcom/oracle/svm/core/posix/PosixVirtualMemoryProvider;
            0    1     1   start  Lorg/graalvm/word/PointerBase;
            0    1     2  nbytes  Lorg/graalvm/word/UnsignedWord;
            0    1     3  access  I
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.Uninterruptible(reason = "May be called from uninterruptible code.", mayBeInlined = true)
    MethodParameters:
        Name  Flags
      start   
      nbytes  
      access  

  public int uncommit(org.graalvm.word.PointerBase, org.graalvm.word.UnsignedWord);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
        start local 1 // org.graalvm.word.PointerBase start
        start local 2 // org.graalvm.word.UnsignedWord nbytes
         0: .line 171
            aload 1 /* start */
            aload 2 /* nbytes */
            invokestatic com.oracle.svm.core.posix.headers.Mman.PROT_NONE:()I
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_ANON:()I
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_PRIVATE:()I
            ior
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_NORESERVE:()I
            ior
            iconst_m1
            lconst_0
            invokestatic com.oracle.svm.core.posix.headers.Mman$NoTransitions.mmap:(Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;IIIJ)Lorg/graalvm/word/Pointer;
            astore 3 /* result */
        start local 3 // org.graalvm.word.Pointer result
         1: .line 172
            aload 3 /* result */
            invokestatic com.oracle.svm.core.posix.headers.Mman.MAP_FAILED:()Lorg/graalvm/word/PointerBase;
            invokeinterface org.graalvm.word.Pointer.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
            ifeq 2
            iconst_0
            goto 3
      StackMap locals: org.graalvm.word.Pointer
      StackMap stack:
         2: iconst_m1
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 3 // org.graalvm.word.Pointer result
        end local 2 // org.graalvm.word.UnsignedWord nbytes
        end local 1 // org.graalvm.word.PointerBase start
        end local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lcom/oracle/svm/core/posix/PosixVirtualMemoryProvider;
            0    4     1   start  Lorg/graalvm/word/PointerBase;
            0    4     2  nbytes  Lorg/graalvm/word/UnsignedWord;
            1    4     3  result  Lorg/graalvm/word/Pointer;
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.Uninterruptible(reason = "May be called from uninterruptible code.", mayBeInlined = true)
    MethodParameters:
        Name  Flags
      start   
      nbytes  

  public int free(org.graalvm.word.PointerBase, org.graalvm.word.UnsignedWord);
    descriptor: (Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
        start local 1 // org.graalvm.word.PointerBase start
        start local 2 // org.graalvm.word.UnsignedWord nbytes
         0: .line 178
            aload 0 /* this */
            invokevirtual com.oracle.svm.core.posix.PosixVirtualMemoryProvider.getGranularity:()Lorg/graalvm/word/UnsignedWord;
            astore 3 /* granularity */
        start local 3 // org.graalvm.word.UnsignedWord granularity
         1: .line 179
            aload 1 /* start */
            aload 3 /* granularity */
            invokestatic com.oracle.svm.core.util.PointerUtils.roundDown:(Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/Pointer;
            astore 4 /* mappingBegin */
        start local 4 // org.graalvm.word.Pointer mappingBegin
         2: .line 180
            aload 2 /* nbytes */
            aload 3 /* granularity */
            invokestatic com.oracle.svm.core.util.UnsignedUtils.roundUp:(Lorg/graalvm/word/UnsignedWord;Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/UnsignedWord;
            astore 5 /* mappingSize */
        start local 5 // org.graalvm.word.UnsignedWord mappingSize
         3: .line 181
            aload 4 /* mappingBegin */
            aload 5 /* mappingSize */
            invokestatic com.oracle.svm.core.posix.headers.Mman$NoTransitions.munmap:(Lorg/graalvm/word/PointerBase;Lorg/graalvm/word/UnsignedWord;)I
            ireturn
        end local 5 // org.graalvm.word.UnsignedWord mappingSize
        end local 4 // org.graalvm.word.Pointer mappingBegin
        end local 3 // org.graalvm.word.UnsignedWord granularity
        end local 2 // org.graalvm.word.UnsignedWord nbytes
        end local 1 // org.graalvm.word.PointerBase start
        end local 0 // com.oracle.svm.core.posix.PosixVirtualMemoryProvider this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lcom/oracle/svm/core/posix/PosixVirtualMemoryProvider;
            0    4     1         start  Lorg/graalvm/word/PointerBase;
            0    4     2        nbytes  Lorg/graalvm/word/UnsignedWord;
            1    4     3   granularity  Lorg/graalvm/word/UnsignedWord;
            2    4     4  mappingBegin  Lorg/graalvm/word/Pointer;
            3    4     5   mappingSize  Lorg/graalvm/word/UnsignedWord;
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.Uninterruptible(reason = "May be called from uninterruptible code.", mayBeInlined = true)
    MethodParameters:
        Name  Flags
      start   
      nbytes  
}
SourceFile: "PosixVirtualMemoryProvider.java"
InnerClasses:
  public NoTransitions = com.oracle.svm.core.posix.headers.Mman$NoTransitions of com.oracle.svm.core.posix.headers.Mman
  public NoTransitions = com.oracle.svm.core.posix.headers.Unistd$NoTransitions of com.oracle.svm.core.posix.headers.Unistd