Messages in this thread |  | | | Date | Mon, 19 Dec 2005 09:49:32 -0800 (PST) | | From | Zwane Mwaikambo <> | | Subject | Re: [patch 04/15] Generic Mutex Subsystem, add-atomic-call-func-x86_64.patch |
| |
On Mon, 19 Dec 2005, Ingo Molnar wrote:
> +#define atomic_dec_call_if_negative(v, fn_name) \ > +do { \ > + fastcall void (*__tmp)(atomic_t *) = fn_name; \ > + \ > + (void)__tmp; \ > + typecheck(atomic_t *, v); \ > + \ > + __asm__ __volatile__( \ > + LOCK "decl (%%rdi)\n" \ > + "js 2f\n" \ > + "1:\n" \ > + LOCK_SECTION_START("") \ > + "2: call "#fn_name"\n\t" \ > + "jmp 1b\n" \ > + LOCK_SECTION_END \ > + : \ > + :"D" (v) \ > + :"memory"); \ > +} while (0)
Hi Ingo, Doesn't this corrupt caller saved registers? - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |