Overview
Comment: | lookup-asm-x86_64-win64.S: Support tagged pointers |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | tagged-pointers |
Files: | files | file ages | folders |
SHA3-256: |
2cec2f2e8d8010dbc860432fe8971987 |
User & Date: | js on 2020-06-30 21:12:19 |
Other Links: | branch diff | manifest | tags |
Context
2020-06-30
| ||
21:24 | lookup-asm-x86-win32.S: Support tagged pointers check-in: b1ee7629b5 user: js tags: tagged-pointers | |
21:12 | lookup-asm-x86_64-win64.S: Support tagged pointers check-in: 2cec2f2e8d user: js tags: tagged-pointers | |
20:52 | Merge trunk into branch "tagged-pointers" check-in: c4a12e3fa1 user: js tags: tagged-pointers | |
Changes
Modified src/runtime/lookup-asm/lookup-asm-x86_64-win64.S from [47f8ccf7d6] to [c889c864a2].
︙ | ︙ | |||
23 24 25 26 27 28 29 | .globl objc_msg_lookup_stret .globl objc_msg_lookup_super .globl objc_msg_lookup_super_stret .section .text .macro generate_lookup name not_found \name: | | > > > | 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | .globl objc_msg_lookup_stret .globl objc_msg_lookup_super .globl objc_msg_lookup_super_stret .section .text .macro generate_lookup name not_found \name: test rcx, rcx jz short ret_nil bt ecx, 0 jc short .Ltagged_pointer_\name mov r8, [rcx] mov r8, [r8+56] .Lmain_\name: mov r10, rcx mov r11, rdx |
︙ | ︙ | |||
53 54 55 56 57 58 59 60 61 62 63 64 65 66 | ret 0: mov rcx, r10 mov rdx, r11 jmp \not_found .endm .macro generate_lookup_super name lookup \name: mov r8, rcx mov rcx, [rcx] test rcx, rcx | > > > > > > > > > > | 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | ret 0: mov rcx, r10 mov rdx, r11 jmp \not_found .Ltagged_pointer_\name: movzx r8, cl shr r8, 1 mov rax, offset objc_tagged_pointer_classes mov r8, [rax+r8*8] mov r8, [r8+56] jmp short .Lmain_\name .endm .macro generate_lookup_super name lookup \name: mov r8, rcx mov rcx, [rcx] test rcx, rcx |
︙ | ︙ |