From 358dfee8002ab5d326bd7c07d19813c98a9acf2c Mon Sep 17 00:00:00 2001 From: "wtc%netscape.com" Date: Thu, 21 Oct 1999 22:36:35 +0000 Subject: [PATCH] Bugsplat bug #365031: moved the definition of PRStack from pratom.h to primpl.h so that it is not exported. Bugsplat bug #364813: declare 'prstk_head' volatile, to prevent compiler from optimizing away references in a loop. r=larryh,srinivas@netscape.com git-svn-id: svn://10.0.0.236/trunk@51444 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/nsprpub/pr/include/pratom.h | 9 --------- mozilla/nsprpub/pr/include/private/primpl.h | 14 ++++++++++++++ 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/mozilla/nsprpub/pr/include/pratom.h b/mozilla/nsprpub/pr/include/pratom.h index 4cdf6fbb5f1..35d6d163e60 100644 --- a/mozilla/nsprpub/pr/include/pratom.h +++ b/mozilla/nsprpub/pr/include/pratom.h @@ -87,15 +87,6 @@ struct PRStackElemStr { typedef struct PRStackStr PRStack; -struct PRStackStr { - PRStackElem prstk_head; /* head MUST be at offset 0; assembly - language code relies on this - */ - PRLock *prstk_lock; - char *prstk_name; -}; - - /* ** FUNCTION: PR_CreateStack ** DESCRIPTION: diff --git a/mozilla/nsprpub/pr/include/private/primpl.h b/mozilla/nsprpub/pr/include/private/primpl.h index 04e08b860f3..e61f50d0d60 100644 --- a/mozilla/nsprpub/pr/include/private/primpl.h +++ b/mozilla/nsprpub/pr/include/private/primpl.h @@ -1341,6 +1341,20 @@ struct PRSem { #endif }; +/*************************************************************************/ + +struct PRStackStr { + /* head MUST be at offset 0; assembly language code relies on this */ +#if defined(AIX) || defined(OSF1) + volatile PRStackElem prstk_head; +#else + PRStackElem prstk_head; +#endif + + PRLock *prstk_lock; + char *prstk_name; +}; + /************************************************************************/ /* XXX this needs to be exported (sigh) */