; compiling (DEFUN POP-MATRIX ...) CL-USER> (disassemble #'%gl:uniform-matrix-4fv) ; disassembly for CL-OPENGL-BINDINGS:UNIFORM-MATRIX-4FV ; Size: 979 bytes. Origin: #x1002ECB60F ; 60F: 498B442460 MOV RAX, [R12+96] ; thread.binding-stack-pointer ; no-arg-parsing entry point ; 614: 488945F8 MOV [RBP-8], RAX ; 618: 84042500F00F20 TEST AL, [#x200FF000] ; safepoint ; 61F: 488D4424F0 LEA RAX, [RSP-16] ; 624: 4883EC10 SUB RSP, 16 ; 628: 488B55F0 MOV RDX, [RBP-16] ; 62C: B902000000 MOV ECX, 2 ; 631: 488928 MOV [RAX], RBP ; 634: 488BE8 MOV RBP, RAX ; 637: B8F8E73320 MOV EAX, #x2033E7F8 ; # ; 63C: FFD0 CALL RAX ; 63E: 488955A8 MOV [RBP-88], RDX ; 642: 488D4424F0 LEA RAX, [RSP-16] ; 647: 4883EC10 SUB RSP, 16 ; 64B: 488B55E8 MOV RDX, [RBP-24] ; 64F: B902000000 MOV ECX, 2 ; 654: 488928 MOV [RAX], RBP ; 657: 488BE8 MOV RBP, RAX ; 65A: B8F8E73320 MOV EAX, #x2033E7F8 ; # ; 65F: FFD0 CALL RAX ; 661: 488955B0 MOV [RBP-80], RDX ; 665: 48817DE017001020 CMP QWORD PTR [RBP-32], 537919511 ; 66D: BA02000000 MOV EDX, 2 ; 672: 41BB00000000 MOV R11D, 0 ; 678: 490F44D3 CMOVEQ RDX, R11 ; 67C: 488955B8 MOV [RBP-72], RDX ; 680: 488B45D8 MOV RAX, [RBP-40] ; 684: 488945C0 MOV [RBP-64], RAX ; 688: 498B442458 MOV RAX, [R12+88] ; thread.alien-stack-pointer ; 68D: 83F851 CMP EAX, 81 ; 690: 0F8433030000 JEQ L10 ; 696: 488945A0 MOV [RBP-96], RAX ; 69A: 488B45A0 MOV RAX, [RBP-96] ; 69E: B910000000 MOV ECX, 16 ; 6A3: 490FC14C2460 XADD [R12+96], RCX ; thread.binding-stack-pointer ; 6A9: 498B542458 MOV RDX, [R12+88] ; thread.alien-stack-pointer ; 6AE: 488911 MOV [RCX], RDX ; 6B1: C7410858000000 MOV DWORD PTR [RCX+8], 88 ; 6B8: 4989442458 MOV [R12+88], RAX ; thread.alien-stack-pointer ; 6BD: 31C0 XOR EAX, EAX ; 6BF: 49896C2440 MOV [R12+64], RBP ; thread.pseudo-atomic-bits ; 6C4: 4D8B5C2418 MOV R11, [R12+24] ; thread.alloc-region ; 6C9: 498D4B10 LEA RCX, [R11+16] ; 6CD: 493B4C2420 CMP RCX, [R12+32] ; 6D2: 0F87FA020000 JNBE L11 ; 6D8: 49894C2418 MOV [R12+24], RCX ; thread.alloc-region ; 6DD: L0: 498D4B0F LEA RCX, [R11+15] ; 6E1: 66C741F14D01 MOV WORD PTR [RCX-15], 333 ; 6E7: 488941F9 MOV [RCX-7], RAX ; 6EB: 49316C2440 XOR [R12+64], RBP ; thread.pseudo-atomic-bits ; 6F0: 7402 JEQ L1 ; 6F2: CC09 BREAK 9 ; pending interrupt trap ; 6F4: L1: 84042500F00F20 TEST AL, [#x200FF000] ; safepoint ; 6FB: 48894DC8 MOV [RBP-56], RCX ; 6FF: 488B0562FEFFFF MOV RAX, [RIP-414] ; #.(SB-SYS:INT-SAP #X7FFFF18C5300) ; 706: 48894598 MOV [RBP-104], RAX ; 1/2829 samples ; 70A: 488B4598 MOV RAX, [RBP-104] ; 70E: 48894590 MOV [RBP-112], RAX ; 1/2829 samples ; 712: 488B0557FEFFFF MOV RAX, [RIP-425] ; # ; 719: 48894588 MOV [RBP-120], RAX ; 71D: 488D4424F0 LEA RAX, [RSP-16] ; 722: 4883EC10 SUB RSP, 16 ; 726: 488B5590 MOV RDX, [RBP-112] ; 72A: 488B7D88 MOV RDI, [RBP-120] ; 72E: B904000000 MOV ECX, 4 ; 733: 488928 MOV [RAX], RBP ; 736: 488BE8 MOV RBP, RAX ; 739: 49837C246800 CMP QWORD PTR [R12+104], 0 ; thread.stepping ; 73F: 7402 JEQ L2 ; 741: CC0E BREAK 14 ; single-step trap (around) ; 743: L2: B898803320 MOV EAX, #x20338098 ; # ; 748: FFD0 CALL RAX ; 74A: 48895580 MOV [RBP-128], RDX ; 74E: 488D4424F0 LEA RAX, [RSP-16] ; 753: 4883EC10 SUB RSP, 16 ; 757: 488B5580 MOV RDX, [RBP-128] ; 75B: 488B7D88 MOV RDI, [RBP-120] ; 75F: B904000000 MOV ECX, 4 ; 764: 488928 MOV [RAX], RBP ; 767: 488BE8 MOV RBP, RAX ; 76A: 49837C246800 CMP QWORD PTR [R12+104], 0 ; thread.stepping ; 770: 7402 JEQ L3 ; 772: CC0E BREAK 14 ; single-step trap (around) ; 774: L3: B858803320 MOV EAX, #x20338058 ; # ; 779: FFD0 CALL RAX ; 77B: 488955C8 MOV [RBP-56], RDX ; 77F: 488B45C8 MOV RAX, [RBP-56] ; 2/2829 samples ; 783: 488945D0 MOV [RBP-48], RAX ; 787: 488B4DD0 MOV RCX, [RBP-48] ; 78B: 8D41F1 LEA EAX, [RCX-15] ; 78E: A80F TEST AL, 15 ; 790: 0F8529020000 JNE L9 ; 796: 8079F14D CMP BYTE PTR [RCX-15], 77 ; 79A: 0F851F020000 JNE L9 ; 7A0: 4C8BC4 MOV R8, RSP ; 7A3: 4883EC20 SUB RSP, 32 ; 7A7: 4883E4F0 AND RSP, -16 ; 7AB: 488D54240F LEA RDX, [RSP+15] ; 7B0: 48C742F1AD000000 MOV QWORD PTR [RDX-15], 173 ; 7B8: 48C742F904000000 MOV QWORD PTR [RDX-7], 4 ; 7C0: 660F57C0 XORPD XMM0, XMM0 ; 7C4: 660F294201 MOVAPD [RDX+1], XMM0 ; 7C9: 488B4500 MOV RAX, [RBP] ; 7CD: 48894201 MOV [RDX+1], RAX ; 7D1: 488B4508 MOV RAX, [RBP+8] ; 7D5: 48894209 MOV [RDX+9], RAX ; 7D9: 488B0DA8FDFFFF MOV RCX, [RIP-600] ; 'SB-ALIEN-INTERNALS:*SAVED-FP-AND-PCS* ; 7E0: 498B9C2470220000 MOV RBX, [R12+8816] ; tls: SB-ALIEN-INTERNALS:*SAVED-FP-AND-PCS* ; 7E8: 83FB61 CMP EBX, 97 ; 7EB: 480F4459F9 CMOVEQ RBX, [RCX-7] ; 7F0: 488BC4 MOV RAX, RSP ; 7F3: 4883EC10 SUB RSP, 16 ; 7F7: 4883E4F0 AND RSP, -16 ; 7FB: 488D442407 LEA RAX, [RSP+7] ; 800: 488950F9 MOV [RAX-7], RDX ; 804: 48895801 MOV [RAX+1], RBX ; 808: B910000000 MOV ECX, 16 ; 80D: 490FC14C2460 XADD [R12+96], RCX ; thread.binding-stack-pointer ; 813: 498B942470220000 MOV RDX, [R12+8816] ; tls: SB-ALIEN-INTERNALS:*SAVED-FP-AND-PCS* ; 81B: 488911 MOV [RCX], RDX ; 81E: C7410870220000 MOV DWORD PTR [RCX+8], 8816 ; 825: 4989842470220000 MOV [R12+8816], RAX ; tls: SB-ALIEN-INTERNALS:*SAVED-FP-AND-PCS* ; 82D: F645A801 TEST BYTE PTR [RBP-88], 1 ; 831: 0F8580010000 JNE L8 ; 837: 488B55A8 MOV RDX, [RBP-88] ; 83B: 483B155EFDFFFF CMP RDX, [RIP-674] ; [#x1002ECB5A0] = FFFFFFFF00000000 ; 842: 0F8C6F010000 JL L8 ; 848: 488B55A8 MOV RDX, [RBP-88] ; 84C: 483B1555FDFFFF CMP RDX, [RIP-683] ; [#x1002ECB5A8] = FFFFFFFE ; 853: 0F8F5E010000 JNLE L8 ; 859: F645B001 TEST BYTE PTR [RBP-80], 1 ; 85D: 0F854C010000 JNE L7 ; 863: 488B55B0 MOV RDX, [RBP-80] ; 867: 483B1532FDFFFF CMP RDX, [RIP-718] ; [#x1002ECB5A0] = FFFFFFFF00000000 ; 86E: 0F8C3B010000 JL L7 ; 874: 488B55B0 MOV RDX, [RBP-80] ; 878: 483B1529FDFFFF CMP RDX, [RIP-727] ; [#x1002ECB5A8] = FFFFFFFE ; 87F: 0F8F2A010000 JNLE L7 ; 885: 488B4DC0 MOV RCX, [RBP-64] ; 889: 8D41F1 LEA EAX, [RCX-15] ; 88C: A80F TEST AL, 15 ; 88E: 0F8513010000 JNE L6 ; 894: 8079F14D CMP BYTE PTR [RCX-15], 77 ; 898: 0F8509010000 JNE L6 ; 89E: 4C898570FFFFFF MOV [RBP-144], R8 ; 8A5: 4C8BCC MOV R9, RSP ; 8A8: 4C898D78FFFFFF MOV [RBP-136], R9 ; 8AF: 4883E4F0 AND RSP, -16 ; 8B3: 488B55A8 MOV RDX, [RBP-88] ; 8B7: 48D1FA SAR RDX, 1 ; 8BA: 488BFA MOV RDI, RDX ; 8BD: 488B55B0 MOV RDX, [RBP-80] ; 8C1: 48D1FA SAR RDX, 1 ; 1/2829 samples ; 8C4: 488BF2 MOV RSI, RDX ; 8C7: 488B55B8 MOV RDX, [RBP-72] ; 8CB: 48D1FA SAR RDX, 1 ; 8CE: 488B45C0 MOV RAX, [RBP-64] ; 8D2: 488B48F9 MOV RCX, [RAX-7] ; 8D6: 488B45D0 MOV RAX, [RBP-48] ; 8DA: 488B58F9 MOV RBX, [RAX-7] ; 8DE: 4C8D3500000000 LEA R14, [RIP] ; = L4 ; 8E5: L4: 31C0 XOR EAX, EAX ; 8E7: 4989A4240080FFFF MOV [R12-32768], RSP ; 8EF: 4D89B424E0000000 MOV [R12+224], R14 ; thread.pc-around-foreign-call ; 8F7: FFD3 CALL RBX ; 8F9: 4D31F6 XOR R14, R14 ; 8FC: 4D89B4240080FFFF MOV [R12-32768], R14 ; 904: 4D89B424E0000000 MOV [R12+224], R14 ; thread.pc-around-foreign-call ; 90C: 4C8B8570FFFFFF MOV R8, [RBP-144] ; 913: 4C8B8D78FFFFFF MOV R9, [RBP-136] ; 91A: 498BE1 MOV RSP, R9 ; 91D: 498B542460 MOV RDX, [R12+96] ; thread.binding-stack-pointer ; 922: 660F57C0 XORPD XMM0, XMM0 ; 926: 4883EA10 SUB RDX, 16 ; 92A: 8B7A08 MOV EDI, [RDX+8] ; 92D: 488B0A MOV RCX, [RDX] ; 930: 49890C3C MOV [R12+RDI], RCX ; 934: 660F2902 MOVAPD [RDX], XMM0 ; 938: 4989542460 MOV [R12+96], RDX ; thread.binding-stack-pointer ; 93D: 498B542460 MOV RDX, [R12+96] ; thread.binding-stack-pointer ; 942: 660F57C0 XORPD XMM0, XMM0 ; 946: 4883EA10 SUB RDX, 16 ; 94A: 8B7A08 MOV EDI, [RDX+8] ; 94D: 488B0A MOV RCX, [RDX] ; 950: 49890C3C MOV [R12+RDI], RCX ; 954: 660F2902 MOVAPD [RDX], XMM0 ; 958: 4989542460 MOV [R12+96], RDX ; thread.binding-stack-pointer ; 95D: 498BE0 MOV RSP, R8 ; 960: 488D4424F0 LEA RAX, [RSP-16] ; 965: 4883EC10 SUB RSP, 16 ; 969: 488B1520FCFFFF MOV RDX, [RIP-992] ; 'CL-OPENGL-BINDINGS:UNIFORM-MATRIX-4FV ; 970: B902000000 MOV ECX, 2 ; 975: 488928 MOV [RAX], RBP ; 978: 488BE8 MOV RBP, RAX ; 97B: 49837C246800 CMP QWORD PTR [R12+104], 0 ; thread.stepping ; 981: 7402 JEQ L5 ; 983: CC0E BREAK 14 ; single-step trap (around) ; 985: L5: B8B8245020 MOV EAX, #x205024B8 ; # ; 98A: FFD0 CALL RAX ; 98C: 480F42E3 CMOVB RSP, RBX ; 990: 488D5D10 LEA RBX, [RBP+16] ; 994: 31C9 XOR ECX, ECX ; 996: BA17001020 MOV EDX, 537919511 ; 99B: 488BFA MOV RDI, RDX ; 99E: 488BF2 MOV RSI, RDX ; 9A1: F9 STC ; 9A2: 488BE5 MOV RSP, RBP ; 9A5: 5D POP RBP ; 9A6: C3 RET ; 9A7: L6: 488B45C0 MOV RAX, [RBP-64] ; 9AB: CC0A BREAK 10 ; error trap ; 9AD: 44 BYTE #X44 ; OBJECT-NOT-SAP-ERROR ; 9AE: 00 BYTE #X00 ; RAX ; 9AF: L7: 488B45B0 MOV RAX, [RBP-80] ; 9B3: CC0A BREAK 10 ; error trap ; 9B5: 46 BYTE #X46 ; OBJECT-NOT-SIGNED-BYTE-32-ERROR ; 9B6: 00 BYTE #X00 ; RAX ; 9B7: L8: 488B45A8 MOV RAX, [RBP-88] ; 9BB: CC0A BREAK 10 ; error trap ; 9BD: 46 BYTE #X46 ; OBJECT-NOT-SIGNED-BYTE-32-ERROR ; 9BE: 00 BYTE #X00 ; RAX ; 9BF: L9: 488B45D0 MOV RAX, [RBP-48] ; 9C3: CC0A BREAK 10 ; error trap ; 9C5: 44 BYTE #X44 ; OBJECT-NOT-SAP-ERROR ; 9C6: 00 BYTE #X00 ; RAX ; 9C7: CC10 BREAK 16 ; Invalid argument count trap ; 9C9: L10: B80F0A1020 MOV EAX, 537922063 ; SB-VM::*ALIEN-STACK-POINTER* ; 9CE: CC0A BREAK 10 ; error trap ; 9D0: 06 BYTE #X06 ; UNBOUND-SYMBOL-ERROR ; 9D1: 00 BYTE #X00 ; RAX ; 9D2: L11: 6A10 PUSH 16 ; 9D4: B970F74200 MOV ECX, #x42F770 ; alloc_tramp ; 9D9: FFD1 CALL RCX ; 9DB: 415B POP R11 ; 9DD: E9FBFCFFFF JMP L0