Subversion Repositories HelenOS

Rev

Rev 4017 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4017 Rev 4402
Line 113... Line 113...
113
    uint64_t tmp;
113
    uint64_t tmp;
114
   
114
   
115
    preemption_disable();
115
    preemption_disable();
116
    asm volatile (
116
    asm volatile (
117
        "0:\n"
117
        "0:\n"
118
#ifdef CONFIG_HT
-
 
119
        "pause\n"
118
        "pause\n"
120
#endif
-
 
121
        "mov %[count], %[tmp]\n"
119
        "mov %[count], %[tmp]\n"
122
        "testq %[tmp], %[tmp]\n"
120
        "testq %[tmp], %[tmp]\n"
123
        "jnz 0b\n"       /* lightweight looping on locked spinlock */
121
        "jnz 0b\n"       /* lightweight looping on locked spinlock */
124
       
122
       
125
        "incq %[tmp]\n"  /* now use the atomic operation */
123
        "incq %[tmp]\n"  /* now use the atomic operation */