CL-USER> (disassemble (lambda (x) (declare ((simple-array (unsigned-byte 2) 1) x)) (setf (aref x 1) 3))) ; disassembly for (LAMBDA (X)) ; Size: 58 bytes. Origin: #x52C8D9ED ; (LAMBDA (X)) ; 9ED: 498B4510 MOV RAX, [R13+16] ; thread.binding-stack-pointer ; 9F1: 488945F8 MOV [RBP-8], RAX ; 9F5: 488B42F9 MOV RAX, [RDX-7] ; 9F9: 4883F802 CMP RAX, 2 ; 9FD: 7620 JBE L0 ; 9FF: 488B5A01 MOV RBX, [RDX+1] ; A03: B80C000000 MOV EAX, 12 ; A08: 4809C3 OR RBX, RAX ; A0B: 48895A01 MOV [RDX+1], RBX ; A0F: BA03000000 MOV EDX, 3 ; A14: 48D1E2 SHL RDX, 1 ; A17: 488BE5 MOV RSP, RBP ; A1A: F8 CLC ; A1B: 5D POP RBP ; A1C: C3 RET ; A1D: CC10 INT3 16 ; Invalid argument count trap ; A1F: L0: CC23 INT3 35 ; INVALID-ARRAY-INDEX-ERROR ; A21: 08 BYTE #X08 ; RDX ; A22: 01 BYTE #X01 ; RAX ; A23: 86808010 BYTE #X86, #X80, #X80, #X10 ; 1