Index: src/runtime/lookup-asm/lookup-asm-x86-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-x86-elf.S +++ src/runtime/lookup-asm/lookup-asm-x86-elf.S @@ -27,12 +27,12 @@ \name: movl 4(%esp), %edx testl %edx, %edx jz ret_nil - btl $0, %edx - jc .Ltagged_pointer_\name + testb $1, %dl + jnz .Ltagged_pointer_\name movl (%edx), %edx movl 32(%edx), %edx .Lmain_\name: Index: src/runtime/lookup-asm/lookup-asm-x86-win32.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-x86-win32.S +++ src/runtime/lookup-asm/lookup-asm-x86-win32.S @@ -25,12 +25,12 @@ \name: movl 4(%esp), %edx testl %edx, %edx jz ret_nil - btl $0, %edx - jc .Ltagged_pointer_\name + testb $1, %dl + jnz .Ltagged_pointer_\name movl (%edx), %edx movl 32(%edx), %edx .Lmain_\name: Index: src/runtime/lookup-asm/lookup-asm-x86_64-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-x86_64-elf.S +++ src/runtime/lookup-asm/lookup-asm-x86_64-elf.S @@ -26,12 +26,12 @@ .macro generate_lookup name not_found \name: testq %rdi, %rdi jz ret_nil - btl $0, %edi - jc .Ltagged_pointer_\name + testb $1, %dil + jnz .Ltagged_pointer_\name movq (%rdi), %r8 movq 64(%r8), %r8 .Lmain_\name: Index: src/runtime/lookup-asm/lookup-asm-x86_64-macho.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-x86_64-macho.S +++ src/runtime/lookup-asm/lookup-asm-x86_64-macho.S @@ -24,12 +24,12 @@ .macro generate_lookup $0: testq %rdi, %rdi jz ret_nil - btl $$0, %edi - jc Ltagged_pointer_$0 + testb $$1, %dil + jnz Ltagged_pointer_$0 movq (%rdi), %r8 movq 64(%r8), %r8 Lmain_$0: Index: src/runtime/lookup-asm/lookup-asm-x86_64-win64.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-x86_64-win64.S +++ src/runtime/lookup-asm/lookup-asm-x86_64-win64.S @@ -26,12 +26,12 @@ .macro generate_lookup name not_found \name: test rcx, rcx jz short ret_nil - bt ecx, 0 - jc short .Ltagged_pointer_\name + test cl, 1 + jnz short .Ltagged_pointer_\name mov r8, [rcx] mov r8, [r8+56] .Lmain_\name: