Subversion Repositories HelenOS

Rev

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

Rev 4156 Rev 4420
Line 112... Line 112...
112
    uint32_t tmp;
112
    uint32_t tmp;
113
   
113
   
114
    preemption_disable();
114
    preemption_disable();
115
    asm volatile (
115
    asm volatile (
116
        "0:\n"
116
        "0:\n"
117
#ifdef CONFIG_HT
-
 
118
        "pause\n"        /* Pentium 4's HT love this instruction */
117
        "pause\n"        /* Pentium 4's HT love this instruction */
119
#endif
-
 
120
        "mov %[count], %[tmp]\n"
118
        "mov %[count], %[tmp]\n"
121
        "testl %[tmp], %[tmp]\n"
119
        "testl %[tmp], %[tmp]\n"
122
        "jnz 0b\n"       /* lightweight looping on locked spinlock */
120
        "jnz 0b\n"       /* lightweight looping on locked spinlock */
123
       
121
       
124
        "incl %[tmp]\n"  /* now use the atomic operation */
122
        "incl %[tmp]\n"  /* now use the atomic operation */