i += 2;
i += 3;
    final void lock() {        AddressPcEntry p = list;        int count = 0;        while (p != null) {            count++;            p = p.next;        }        final int[] table = new int[ count * 2];        p = list;        int i = 0;        int lastOffset = -1;        while (p != null) {            table[ i + 0] = p.pc;            table[ i + 1] = p.offset;            if (p.offset < lastOffset) { throw new VirtualMachineError(                    "unordered offset found"); }            lastOffset = p.offset;            i += 2;            p = p.next;        }        this.table = table;        this.list = null;    }