亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? tls.h

?? linux下的C語言庫源碼有一百多M解壓后很不錯
?? H
字號:
/* Definitions for thread-local data handling.  NPTL/sparc version.   Copyright (C) 2003, 2005, 2006, 2007 Free Software Foundation, Inc.   This file is part of the GNU C Library.   The GNU C Library is free software; you can redistribute it and/or   modify it under the terms of the GNU Lesser General Public   License as published by the Free Software Foundation; either   version 2.1 of the License, or (at your option) any later version.   The GNU C Library is distributed in the hope that it will be useful,   but WITHOUT ANY WARRANTY; without even the implied warranty of   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU   Lesser General Public License for more details.   You should have received a copy of the GNU Lesser General Public   License along with the GNU C Library; if not, write to the Free   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA   02111-1307 USA.  */#ifndef _TLS_H#define _TLS_H#include <dl-sysdep.h>#ifndef __ASSEMBLER__# include <stdbool.h># include <stddef.h># include <stdint.h># include <stdlib.h># include <list.h># include <kernel-features.h>/* Type for the dtv.  */typedef union dtv{  size_t counter;  struct  {    void *val;    bool is_static;  } pointer;} dtv_t;typedef struct{  void *tcb;		/* Pointer to the TCB.  Not necessary the			   thread descriptor used by libpthread.  */  dtv_t *dtv;  void *self;  int multiple_threads;#if __WORDSIZE == 64  int gscope_flag;#endif  uintptr_t sysinfo;  uintptr_t stack_guard;  uintptr_t pointer_guard;#if __WORDSIZE != 64  int gscope_flag;#endif#ifndef __ASSUME_PRIVATE_FUTEX  int private_futex;#endif} tcbhead_t;#else /* __ASSEMBLER__ */# include <tcb-offsets.h>#endif /* __ASSEMBLER__ *//* We require TLS support in the tools.  */#ifndef HAVE_TLS_SUPPORT# error "TLS support is required."#endif#ifndef __ASSEMBLER__/* Get system call information.  */# include <sysdep.h>/* Get the thread descriptor definition.  */# include <nptl/descr.h>register struct pthread *__thread_self __asm__("%g7");/* This is the size of the initial TCB.  Can't be just sizeof (tcbhead_t),   because NPTL getpid, __libc_alloca_cutoff etc. need (almost) the whole   struct pthread even when not linked with -lpthread.  */# define TLS_INIT_TCB_SIZE sizeof (struct pthread)/* Alignment requirements for the initial TCB.  */# define TLS_INIT_TCB_ALIGN __alignof__ (struct pthread)/* This is the size of the TCB.  */# define TLS_TCB_SIZE sizeof (struct pthread)/* Alignment requirements for the TCB.  */# define TLS_TCB_ALIGN __alignof__ (struct pthread)/* The TCB can have any size and the memory following the address the   thread pointer points to is unspecified.  Allocate the TCB there.  */# define TLS_TCB_AT_TP	1/* Install the dtv pointer.  The pointer passed is to the element with   index -1 which contain the length.  */# define INSTALL_DTV(descr, dtvp) \  ((tcbhead_t *) (descr))->dtv = (dtvp) + 1/* Install new dtv for current thread.  */# define INSTALL_NEW_DTV(DTV) \  (((tcbhead_t *) __thread_self)->dtv = (DTV))/* Return dtv of given thread descriptor.  */# define GET_DTV(descr) \  (((tcbhead_t *) (descr))->dtv)/* Code to initially initialize the thread pointer.  */# define TLS_INIT_TP(descr, secondcall) \  (__thread_self = (__typeof (__thread_self)) (descr), NULL)/* Return the address of the dtv for the current thread.  */# define THREAD_DTV() \  (((tcbhead_t *) __thread_self)->dtv)/* Return the thread descriptor for the current thread.  */#define THREAD_SELF  __thread_self/* Magic for libthread_db to know how to do THREAD_SELF.  */# define DB_THREAD_SELF_INCLUDE <sys/ucontext.h># define DB_THREAD_SELF \  REGISTER (32, 32, REG_G7 * 4, 0) REGISTER (64, 64, REG_G7 * 8, 0)/* Access to data in the thread descriptor is easy.  */#define THREAD_GETMEM(descr, member) \  descr->member#define THREAD_GETMEM_NC(descr, member, idx) \  descr->member[idx]#define THREAD_SETMEM(descr, member, value) \  descr->member = (value)#define THREAD_SETMEM_NC(descr, member, idx, value) \  descr->member[idx] = (value)/* Set the stack guard field in TCB head.  */#define THREAD_SET_STACK_GUARD(value) \  THREAD_SETMEM (THREAD_SELF, header.stack_guard, value)# define THREAD_COPY_STACK_GUARD(descr) \  ((descr)->header.stack_guard \   = THREAD_GETMEM (THREAD_SELF, header.stack_guard))/* Get/set the stack guard field in TCB head.  */#define THREAD_GET_POINTER_GUARD() \  THREAD_GETMEM (THREAD_SELF, header.pointer_guard)#define THREAD_SET_POINTER_GUARD(value) \  THREAD_SETMEM (THREAD_SELF, header.pointer_guard, value)# define THREAD_COPY_POINTER_GUARD(descr) \  ((descr)->header.pointer_guard = THREAD_GET_POINTER_GUARD ())/* Get and set the global scope generation counter in struct pthread.  */#define THREAD_GSCOPE_FLAG_UNUSED 0#define THREAD_GSCOPE_FLAG_USED   1#define THREAD_GSCOPE_FLAG_WAIT   2#define THREAD_GSCOPE_RESET_FLAG() \  do									     \    { int __res								     \	= atomic_exchange_rel (&THREAD_SELF->header.gscope_flag,	     \			       THREAD_GSCOPE_FLAG_UNUSED);		     \      if (__res == THREAD_GSCOPE_FLAG_WAIT)				     \	lll_futex_wake (&THREAD_SELF->header.gscope_flag, 1, LLL_PRIVATE);   \    }									     \  while (0)#define THREAD_GSCOPE_SET_FLAG() \  do									     \    {									     \      THREAD_SELF->header.gscope_flag = THREAD_GSCOPE_FLAG_USED;	     \      atomic_write_barrier ();						     \    }									     \  while (0)#define THREAD_GSCOPE_WAIT() \  GL(dl_wait_lookup_done) ()#endif /* !ASSEMBLER */#endif	/* tls.h */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本久久综合亚洲鲁鲁五月天| 在线不卡免费av| 在线免费亚洲电影| 久久看人人爽人人| 视频在线在亚洲| av福利精品导航| 久久精品欧美日韩精品 | 国产清纯在线一区二区www| 午夜不卡av免费| 色成人在线视频| 国产精品美女久久久久aⅴ| 卡一卡二国产精品| 欧美麻豆精品久久久久久| 中文字幕一区二| 成人精品鲁一区一区二区| 精品福利一区二区三区免费视频| 午夜精品一区二区三区三上悠亚| 97se亚洲国产综合自在线不卡 | 日韩一级在线观看| 亚洲一区二区在线免费看| 99久久精品久久久久久清纯| 国产精品全国免费观看高清| 国产在线国偷精品免费看| 日韩限制级电影在线观看| 日韩精品电影在线| 欧美日本一区二区在线观看| 亚洲综合在线电影| 欧美午夜电影一区| 亚洲成人av资源| 欧美视频三区在线播放| 亚洲一区二区欧美激情| 色综合色综合色综合| 亚洲视频资源在线| 一本大道久久a久久精二百| 亚洲欧美电影院| 91在线视频官网| 一区二区三区四区不卡在线 | 国产精品久久一级| 成人午夜在线免费| 成人欧美一区二区三区在线播放| av色综合久久天堂av综合| 亚洲欧美日本韩国| 欧美日韩一区不卡| 美女视频黄免费的久久| 久久亚洲精品小早川怜子| 高清不卡一区二区| 日韩理论片网站| 欧美色爱综合网| 日韩av电影天堂| 久久欧美中文字幕| 北条麻妃国产九九精品视频| 亚洲激情图片小说视频| 91久久精品一区二区二区| 日韩黄色小视频| 国产午夜精品理论片a级大结局| 99天天综合性| 亚洲成av人片一区二区梦乃 | 亚洲精选视频免费看| 欧美日韩一区二区三区不卡| 国产美女主播视频一区| 国产精品视频九色porn| 欧美日韩www| 国产精品一区二区三区网站| 亚洲免费视频成人| 欧美成人猛片aaaaaaa| 本田岬高潮一区二区三区| 日韩精品亚洲专区| 国产精品欧美经典| 欧美一区二区视频在线观看2022| 国产精品1区2区| 一区二区三区在线观看动漫| 精品国精品自拍自在线| 欧美亚洲国产bt| 国产酒店精品激情| 亚洲国产一二三| 国产视频在线观看一区二区三区 | 亚洲chinese男男1069| 久久久www成人免费毛片麻豆 | 久久蜜桃av一区二区天堂| 在线国产亚洲欧美| 国产精品 欧美精品| 日本大胆欧美人术艺术动态| 亚洲欧美日韩精品久久久久| 欧美va亚洲va香蕉在线| 在线亚洲精品福利网址导航| 国产99一区视频免费| 久久成人久久鬼色| 午夜久久久久久电影| 亚洲欧美激情插| 国产精品久线观看视频| 精品处破学生在线二十三| 欧美老肥妇做.爰bbww视频| 99精品视频一区二区三区| 国产传媒日韩欧美成人| 狠狠色丁香婷综合久久| 天天av天天翘天天综合网| 亚洲免费大片在线观看| 中文在线一区二区| 精品国产一区二区三区四区四 | 蜜臀av国产精品久久久久 | 亚洲人成精品久久久久久| 久久久久国产成人精品亚洲午夜| 日韩精品最新网址| 欧美一区二区三级| 在线不卡中文字幕播放| 欧美日韩亚洲不卡| 91高清视频在线| 在线精品视频小说1| 欧美在线小视频| 欧美亚州韩日在线看免费版国语版| 91小视频免费观看| av电影在线不卡| 91美女片黄在线观看| 91在线免费视频观看| 99麻豆久久久国产精品免费| www.日韩av| 91麻豆精品秘密| 91久久免费观看| 色综合视频在线观看| 国产精品1区二区.| 美女精品自拍一二三四| 99久久精品一区二区| 日韩一区二区三区观看| 91精品国产综合久久久久久久久久| 欧美日韩五月天| 91精品免费在线| 日韩欧美国产一区二区在线播放 | 婷婷国产在线综合| 日本大胆欧美人术艺术动态| 国内成人自拍视频| 成人aa视频在线观看| 欧美主播一区二区三区| 欧美日韩国产bt| 精品99久久久久久| 亚洲视频图片小说| 午夜视频一区二区| 国产麻豆一精品一av一免费| 成人国产在线观看| 欧美美女一区二区在线观看| 精品国产91九色蝌蚪| 1024国产精品| 日本成人在线看| 成人久久18免费网站麻豆| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 在线不卡一区二区| 国产午夜亚洲精品不卡| 亚洲一级二级三级| 国产在线精品一区二区夜色| 91视频xxxx| 欧美xxxxxxxx| 亚洲免费在线观看| 国精产品一区一区三区mba视频 | 一区二区国产视频| 免费看欧美女人艹b| 99精品视频免费在线观看| 日韩视频不卡中文| 亚洲综合无码一区二区| 国产精品综合二区| 欧美日本乱大交xxxxx| 国产午夜精品一区二区三区四区| 伊人开心综合网| 国产精品主播直播| 欧美久久一区二区| 亚洲色图在线视频| 狠狠色综合播放一区二区| 欧美三级午夜理伦三级中视频| 国产亚洲综合性久久久影院| 亚洲不卡一区二区三区| 北岛玲一区二区三区四区| 精品免费视频.| 亚洲电影在线播放| 91精品国产欧美一区二区成人| 国产精品国产三级国产普通话三级 | 日韩精品色哟哟| 91久久一区二区| 综合久久一区二区三区| 国产一本一道久久香蕉| 日韩欧美一二三区| 午夜伦欧美伦电影理论片| 日本高清无吗v一区| 中文字幕不卡的av| 国产成人综合网站| 精品精品国产高清a毛片牛牛| 丝袜美腿一区二区三区| 欧美性淫爽ww久久久久无| 亚洲同性同志一二三专区| 国产精品自拍一区| 久久久久久久久蜜桃| 精品一区二区三区日韩| 日韩免费一区二区三区在线播放| 亚洲电影第三页| 欧美影院一区二区三区| 亚洲午夜免费福利视频| 在线一区二区观看| 夜夜精品视频一区二区| 色噜噜狠狠成人网p站| 亚洲免费观看高清| 精品视频1区2区| 亚洲一区二区精品视频| 欧美高清www午色夜在线视频|