LCOV - code coverage report
Current view: top level - nsprpub/pr/src/md/unix - linux.c (source / functions) Hit Total Coverage
Test: output.info Lines: 2 8 25.0 %
Date: 2017-07-14 16:53:18 Functions: 1 3 33.3 %
Legend: Lines: hit not hit

          Line data    Source code
       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             : 
       8           3 : void _MD_EarlyInit(void)
       9             : {
      10           3 : }
      11             : 
      12           0 : 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           0 :         *np = 0;
      22           0 :         return NULL;
      23             : #endif
      24             : }
      25             : 
      26             : #ifdef _PR_PTHREADS
      27             : 
      28             : extern void _MD_unix_terminate_waitpid_daemon(void);
      29             : 
      30           0 : void _MD_CleanupBeforeExit(void)
      31             : {
      32           0 :     _MD_unix_terminate_waitpid_daemon();
      33           0 : }
      34             : 
      35             : #else /* ! _PR_PTHREADS */
      36             : 
      37             : void
      38             : _MD_SET_PRIORITY(_MDThread *thread, PRUintn newPri)
      39             : {
      40             :     return;
      41             : }
      42             : 
      43             : PRStatus
      44             : _MD_InitializeThread(PRThread *thread)
      45             : {
      46             :         /*
      47             :          * set the pointers to the stack-pointer and frame-pointer words in the
      48             :          * context structure; this is for debugging use.
      49             :          */
      50             :         thread->md.sp = _MD_GET_SP_PTR(thread);
      51             :         thread->md.fp = _MD_GET_FP_PTR(thread);
      52             :         return PR_SUCCESS;
      53             : }
      54             : 
      55             : PRStatus
      56             : _MD_WAIT(PRThread *thread, PRIntervalTime ticks)
      57             : {
      58             :     PR_ASSERT(!(thread->flags & _PR_GLOBAL_SCOPE));
      59             :     _PR_MD_SWITCH_CONTEXT(thread);
      60             :     return PR_SUCCESS;
      61             : }
      62             : 
      63             : PRStatus
      64             : _MD_WAKEUP_WAITER(PRThread *thread)
      65             : {
      66             :     if (thread) {
      67             :         PR_ASSERT(!(thread->flags & _PR_GLOBAL_SCOPE));
      68             :     }
      69             :     return PR_SUCCESS;
      70             : }
      71             : 
      72             : /* These functions should not be called for Linux */
      73             : void
      74             : _MD_YIELD(void)
      75             : {
      76             :     PR_NOT_REACHED("_MD_YIELD should not be called for Linux.");
      77             : }
      78             : 
      79             : PRStatus
      80             : _MD_CREATE_THREAD(
      81             :     PRThread *thread,
      82             :     void (*start) (void *),
      83             :     PRThreadPriority priority,
      84             :     PRThreadScope scope,
      85             :     PRThreadState state,
      86             :     PRUint32 stackSize)
      87             : {
      88             :     PR_NOT_REACHED("_MD_CREATE_THREAD should not be called for Linux.");
      89             :         return PR_FAILURE;
      90             : }
      91             : #endif /* ! _PR_PTHREADS */

Generated by: LCOV version 1.13