1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6 #include "primpl.h"
7
_MD_EarlyInit(void)8 void _MD_EarlyInit(void)
9 {
10 }
11
_MD_HomeGCRegisters(PRThread * t,int isCurrent,int * np)12 PRWord *_MD_HomeGCRegisters(PRThread *t, int isCurrent, int *np)
13 {
14 #ifndef _PR_PTHREADS
15 if (isCurrent) {
16 (void) setjmp(CONTEXT(t));
17 }
18 *np = sizeof(CONTEXT(t)) / sizeof(PRWord);
19 return (PRWord *) CONTEXT(t);
20 #else
21 *np = 0;
22 return NULL;
23 #endif
24 }
25
26 #ifndef _PR_PTHREADS
27 void
_MD_SET_PRIORITY(_MDThread * thread,PRUintn newPri)28 _MD_SET_PRIORITY(_MDThread *thread, PRUintn newPri)
29 {
30 return;
31 }
32
33 PRStatus
_MD_InitializeThread(PRThread * thread)34 _MD_InitializeThread(PRThread *thread)
35 {
36 return PR_SUCCESS;
37 }
38
39 PRStatus
_MD_WAIT(PRThread * thread,PRIntervalTime ticks)40 _MD_WAIT(PRThread *thread, PRIntervalTime ticks)
41 {
42 PR_ASSERT(!(thread->flags & _PR_GLOBAL_SCOPE));
43 _PR_MD_SWITCH_CONTEXT(thread);
44 return PR_SUCCESS;
45 }
46
47 PRStatus
_MD_WAKEUP_WAITER(PRThread * thread)48 _MD_WAKEUP_WAITER(PRThread *thread)
49 {
50 if (thread) {
51 PR_ASSERT(!(thread->flags & _PR_GLOBAL_SCOPE));
52 }
53 return PR_SUCCESS;
54 }
55
56 /* These functions should not be called for OSF1 */
57 void
_MD_YIELD(void)58 _MD_YIELD(void)
59 {
60 PR_NOT_REACHED("_MD_YIELD should not be called for OSF1.");
61 }
62
63 PRStatus
_MD_CREATE_THREAD(PRThread * thread,void (* start)(void *),PRThreadPriority priority,PRThreadScope scope,PRThreadState state,PRUint32 stackSize)64 _MD_CREATE_THREAD(
65 PRThread *thread,
66 void (*start) (void *),
67 PRThreadPriority priority,
68 PRThreadScope scope,
69 PRThreadState state,
70 PRUint32 stackSize)
71 {
72 PR_NOT_REACHED("_MD_CREATE_THREAD should not be called for OSF1.");
73 return PR_FAILURE;
74 }
75 #endif /* ! _PR_PTHREADS */
76