Messages in this thread |  | | | Date | Sat, 17 Sep 2005 23:03:46 -0700 (PDT) | | Subject | Re: [PATCH 2/5] atomic: introduce atomic_inc_not_zero | | From | "David S. Miller" <> |
| |
From: Russell King <rmk+lkml@arm.linux.org.uk> Date: Sat, 17 Sep 2005 08:27:36 +0100
> gcc did have some support to pass condition codes into assembly. > On ARM, you used to be able to do things like: > > if (foo) > asm("blah%? whatever"); > > and gcc would replace %? with whatever condition was appropriate > for the current block of code. You can still write it as the > above. > > However, this optimisation was disabled on ARM apparantly because > it was very hard to for people to get correct - if you forgot the > %?, you need to add a "cc" clobber, and if you forget that as well > you might get unconditional behaviour.
Yes, that is an error prone syntax to use, that's for sure. That is, incidentally, why I said the condition test should be an explicit input arg to the asm. - 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/
|  |