1%default { "load":"movl", "wide":"0"}
2    /* For: iget-quick, iget-boolean-quick, iget-byte-quick, iget-char-quick, iget-short-quick, iget-wide-quick */
3    /* op vA, vB, offset@CCCC */
4    movl    rINST, %ecx                     # rcx <- BA
5    sarl    $$4, %ecx                       # ecx <- B
6    GET_VREG %ecx, %rcx                     # vB (object we're operating on)
7    movzwq  2(rPC), %rax                    # eax <- field byte offset
8    testl   %ecx, %ecx                      # is object null?
9    je      common_errNullObject
10    andb    $$0xf,rINSTbl                   # rINST <- A
11    .if $wide
12    movq (%rcx,%rax,1), %rax
13    SET_WIDE_VREG %rax, rINSTq              # fp[A] <- value
14    .else
15    ${load} (%rcx,%rax,1), %eax
16    SET_VREG %eax, rINSTq                   # fp[A] <- value
17    .endif
18    ADVANCE_PC_FETCH_AND_GOTO_NEXT 2
19