Subject: Support of cmpxchg

From: Wayne Gowcher <[email-masked]>
Date: Tue, 22 Jul 2003 15:12:52 -0700 (PDT)

I am trying to get some DRM ( direct rendering module
? ) code to work with XFree86 on a mips system and
have come across the function cmpxchg(). On x86
systems 486 and higher this is an assembly
instruction. Other architectures like sparc have some
inline assembly to preform the same task. Yet other
architectures like the parisc have generic c code to
implement the function. MIPS it seems has nothing.

Has anyone ever implemented this for mips2 and higher
architecture ?

If no, does anyone think it is possible to use ll / sc
to implement this function similar to the spinlock
case. Or should I just stick with the generic c
versions ?

Any thoughts / code / comments welcome

__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com

---

From: "Maciej W. Rozycki" <[email-masked]>
Date: Wed, 23 Jul 2003 00:43:42 +0200 (MET DST)

> case. Or should I just stick with the generic c

 Doing it with ll/sc should be straightforward.

-- 
+  Maciej W. Rozycki, Technical University of Gdansk, Poland   +
+--------------------------------------------------------------+
+        e-mail: [email-masked], PGP key available        +