Changeset 4949
- Timestamp:
- Aug 18, 2006, 8:19:51 AM (18 years ago)
- File:
-
- 1 edited
-
trunk/ccl/lisp-kernel/x86-spentry64.s (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ccl/lisp-kernel/x86-spentry64.s
r4858 r4949 186 186 _startfn(C(misc_ref_common)) 187 187 __(movzbl %imm1_b,%imm1_l) 188 __(jmp *local_label(misc_ref_jmp)(,%imm1,8)) 188 __(lea local_label(misc_ref_jmp)(%rip),%temp2) 189 __(jmp *(%temp2,%imm1,8)) 189 190 .p2align 3 190 191 local_label(misc_ref_jmp): … … 620 621 _startfn(C(misc_set_common)) 621 622 __(movzbl %imm1_b,%imm1_l) 622 __(jmp *local_label(misc_set_jmp)(,%imm1,8)) 623 __(lea local_label(misc_set_jmp)(%rip),%temp2) 624 __(jmp *(%temp2,%imm1,8)) 623 625 .p2align 3 624 626 local_label(misc_set_jmp): … … 1720 1722 __(shrq $bitmap_shift,%imm1) 1721 1723 __(xorb $63,%imm0_b) 1722 __(lock btsq %imm0,(%temp0,%imm1,8)) 1724 __(lock) 1725 __(btsq %imm0,(%temp0,%imm1,8)) 1723 1726 __(jmp *%ra0) 1724 1727 _endsubp(rplaca) … … 1741 1744 __(shrq $bitmap_shift,%imm1) 1742 1745 __(xorb $63,%imm0_b) 1743 __(lock btsq %imm0,(%temp0,%imm1,8)) 1746 __(lock) 1747 __(btsq %imm0,(%temp0,%imm1,8)) 1744 1748 __(jmp *%ra0) 1745 1749 _endsubp(rplacd) … … 1765 1769 __(shrq $bitmap_shift,%imm1) 1766 1770 __(xorb $63,%imm0_b) 1767 __(lock btsq %imm0,(%temp0,%imm1,8)) 1771 __(lock) 1772 __(btsq %imm0,(%temp0,%imm1,8)) 1768 1773 __(jmp *%ra0) 1769 1774 _endsubp(gvset) … … 1791 1796 __(shrq $bitmap_shift,%imm1) 1792 1797 __(xorb $63,%imm0_b) 1793 __(lock btsq %imm0,(%temp0,%imm1,8)) 1798 __(lock) 1799 __( btsq %imm0,(%temp0,%imm1,8)) 1794 1800 /* Now memoize the address of the hash vector */ 1795 1801 __(movq %arg_x,%imm0) … … 1800 1806 __(shrq $bitmap_shift,%imm1) 1801 1807 __(xorb $63,%imm0_b) 1802 __(lock btsq %imm0,(%temp0,%imm1,8)) 1808 __(lock) 1809 __(btsq %imm0,(%temp0,%imm1,8)) 1803 1810 __(jmp *%ra0) 1804 1811 _endsubp(set_hash_key) … … 1818 1825 __(movq %temp1,%imm0) 1819 1826 __(jne 3f) 1820 __(lock cmpxchgq %arg_z,(%arg_x,%imm1)) 1827 __(lock) 1828 __(cmpxchgq %arg_z,(%arg_x,%imm1)) 1821 1829 .globl C(egc_store_node_conditional_success_test) 1822 1830 C(egc_store_node_conditional_success_test): … … 1832 1840 __(shrq $bitmap_shift,%imm1) 1833 1841 __(xorb $63,%imm0_b) 1834 __(lock btsq %imm0,(%temp1,%imm1,8)) 1842 __(lock) 1843 __(btsq %imm0,(%temp1,%imm1,8)) 1835 1844 .globl C(egc_write_barrier_end) 1836 1845 C(egc_write_barrier_end): … … 4194 4203 __(push %rbx) 4195 4204 __(push %rbp) 4196 /* TCR initialized for lisp ? */ 4197 __(movq %fs:current_tcr@TPOFF+tcr.linear,%rax) 4198 __(testq %rax,%rax) 4199 __(jne 1f) 4205 __ifdef([HAVE_TLS]) 4206 /* TCR initialized for lisp ? */ 4207 __(movq %fs:current_tcr@TPOFF+tcr.linear,%rax) 4208 __(testq %rax,%rax) 4209 __(jne 1f) 4210 __endif 4200 4211 __(movq %r11,%r12) 4201 4212 __(ref_global(get_tcr,%rax))
Note:
See TracChangeset
for help on using the changeset viewer.
