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

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

?? dl-machine.h

?? glibc 2.9,最新版的C語言庫函數(shù)
?? H
?? 第 1 頁 / 共 2 頁
字號(hào):
  PPC_DCBT (&plt->fd_func);  PPC_DCBT (&rel->fd_aux);  PPC_DCBT (&rel->fd_func);  /* If sym_map is NULL, it's a weak undefined sym;  Leave the plt zero.  */  if (sym_map == NULL)    return 0;  /* If the opd entry is not yet relocated (because it's from a shared     object that hasn't been processed yet), then manually reloc it.  */  if (map != sym_map && !sym_map->l_relocated#if !defined RTLD_BOOTSTRAP && defined SHARED      /* Bootstrap map doesn't have l_relocated set for it.  */      && sym_map != &GL(dl_rtld_map)#endif      )    offset = sym_map->l_addr;  /* For PPC64, fixup_plt copies the function descriptor from opd     over the corresponding PLT entry.     Initially, PLT Entry[i] is set up for lazy linking, or is zero.     For lazy linking, the fd_toc and fd_aux entries are irrelevant,     so for thread safety we write them before changing fd_func.  */  plt->fd_aux = rel->fd_aux + offset;  plt->fd_toc = rel->fd_toc + offset;  PPC_DCBF (&plt->fd_toc);  PPC_ISYNC;  plt->fd_func = rel->fd_func + offset;  PPC_DCBST (&plt->fd_func);  PPC_ISYNC;  return finaladdr;}static inline void __attribute__ ((always_inline))elf_machine_plt_conflict (Elf64_Addr *reloc_addr, Elf64_Addr finaladdr){  Elf64_FuncDesc *plt = (Elf64_FuncDesc *) reloc_addr;  Elf64_FuncDesc *rel = (Elf64_FuncDesc *) finaladdr;  plt->fd_func = rel->fd_func;  plt->fd_aux = rel->fd_aux;  plt->fd_toc = rel->fd_toc;  PPC_DCBST (&plt->fd_func);  PPC_DCBST (&plt->fd_aux);  PPC_DCBST (&plt->fd_toc);  PPC_SYNC;}/* Return the final value of a plt relocation.  */static inline Elf64_Addrelf_machine_plt_value (struct link_map *map, const Elf64_Rela *reloc,		       Elf64_Addr value){  return value + reloc->r_addend;}/* Names of the architecture-specific auditing callback functions.  */#define ARCH_LA_PLTENTER ppc64_gnu_pltenter#define ARCH_LA_PLTEXIT ppc64_gnu_pltexit#endif /* dl_machine_h */#ifdef RESOLVE_MAP#define PPC_LO(v) ((v) & 0xffff)#define PPC_HI(v) (((v) >> 16) & 0xffff)#define PPC_HA(v) PPC_HI ((v) + 0x8000)#define PPC_HIGHER(v) (((v) >> 32) & 0xffff)#define PPC_HIGHERA(v) PPC_HIGHER ((v) + 0x8000)#define PPC_HIGHEST(v) (((v) >> 48) & 0xffff)#define PPC_HIGHESTA(v) PPC_HIGHEST ((v) + 0x8000)#define BIT_INSERT(var, val, mask) \  ((var) = ((var) & ~(Elf64_Addr) (mask)) | ((val) & (mask)))#define dont_expect(X) __builtin_expect ((X), 0)extern void _dl_reloc_overflow (struct link_map *map,                                const char *name,                                Elf64_Addr *const reloc_addr,                                const Elf64_Sym *refsym)                                attribute_hidden;auto inline void __attribute__ ((always_inline))elf_machine_rela_relative (Elf64_Addr l_addr, const Elf64_Rela *reloc,			   void *const reloc_addr_arg){  Elf64_Addr *const reloc_addr = reloc_addr_arg;  *reloc_addr = l_addr + reloc->r_addend;}#if !defined RTLD_BOOTSTRAP || USE___THREAD/* This computes the value used by TPREL* relocs.  */auto inline Elf64_Addr __attribute__ ((always_inline, const))elf_machine_tprel (struct link_map *map,		   struct link_map *sym_map,		   const Elf64_Sym *sym,		   const Elf64_Rela *reloc){# ifndef RTLD_BOOTSTRAP  if (sym_map)    {      CHECK_STATIC_TLS (map, sym_map);# endif      return TLS_TPREL_VALUE (sym_map, sym, reloc);# ifndef RTLD_BOOTSTRAP    }# endif  return 0;}#endif/* Perform the relocation specified by RELOC and SYM (which is fully   resolved).  MAP is the object containing the reloc.  */auto inline void __attribute__ ((always_inline))elf_machine_rela (struct link_map *map,		  const Elf64_Rela *reloc,		  const Elf64_Sym *sym,		  const struct r_found_version *version,		  void *const reloc_addr_arg){  Elf64_Addr *const reloc_addr = reloc_addr_arg;  const int r_type = ELF64_R_TYPE (reloc->r_info);#ifndef RTLD_BOOTSTRAP  const Elf64_Sym *const refsym = sym;#endif  if (r_type == R_PPC64_RELATIVE)    {      *reloc_addr = map->l_addr + reloc->r_addend;      return;    }  if (__builtin_expect (r_type == R_PPC64_NONE, 0))    return;  /* We need SYM_MAP even in the absence of TLS, for elf_machine_fixup_plt.  */  struct link_map *sym_map = RESOLVE_MAP (&sym, version, r_type);  Elf64_Addr value = ((sym_map == NULL ? 0 : sym_map->l_addr + sym->st_value)		      + reloc->r_addend);  /* For relocs that don't edit code, return.     For relocs that might edit instructions, break from the switch.  */  switch (r_type)    {    case R_PPC64_ADDR64:    case R_PPC64_GLOB_DAT:      *reloc_addr = value;      return;    case R_PPC64_JMP_SLOT:#ifdef RESOLVE_CONFLICT_FIND_MAP      elf_machine_plt_conflict (reloc_addr, value);#else      elf_machine_fixup_plt (map, sym_map, reloc, reloc_addr, value);#endif      return;#if !defined RTLD_BOOTSTRAP || USE___THREAD    case R_PPC64_DTPMOD64:# ifdef RTLD_BOOTSTRAP      /* During startup the dynamic linker is always index 1.  */      *reloc_addr = 1;# else      /* Get the information from the link map returned by the	 resolve function.  */      if (sym_map != NULL)        *reloc_addr = sym_map->l_tls_modid;# endif      return;    case R_PPC64_DTPREL64:      /* During relocation all TLS symbols are defined and used.         Therefore the offset is already correct.  */# ifndef RTLD_BOOTSTRAP      if (sym_map != NULL)	*reloc_addr = TLS_DTPREL_VALUE (sym, reloc);# endif      return;    case R_PPC64_TPREL64:      *reloc_addr = elf_machine_tprel (map, sym_map, sym, reloc);      return;    case R_PPC64_TPREL16_LO_DS:      value = elf_machine_tprel (map, sym_map, sym, reloc);      if (dont_expect ((value & 3) != 0))        _dl_reloc_overflow (map, "R_PPC64_TPREL16_LO_DS", reloc_addr, refsym);      *(Elf64_Half *) reloc_addr = BIT_INSERT (*(Elf64_Half *) reloc_addr,					       value, 0xfffc);      break;    case R_PPC64_TPREL16_DS:      value = elf_machine_tprel (map, sym_map, sym, reloc);      if (dont_expect ((value + 0x8000) >= 0x10000 || (value & 3) != 0))        _dl_reloc_overflow (map, "R_PPC64_TPREL16_DS", reloc_addr, refsym);      *(Elf64_Half *) reloc_addr = BIT_INSERT (*(Elf64_Half *) reloc_addr,					       value, 0xfffc);      break;    case R_PPC64_TPREL16:      value = elf_machine_tprel (map, sym_map, sym, reloc);      if (dont_expect ((value + 0x8000) >= 0x10000))        _dl_reloc_overflow (map, "R_PPC64_TPREL16", reloc_addr, refsym);      *(Elf64_Half *) reloc_addr = PPC_LO (value);      break;    case R_PPC64_TPREL16_LO:      value = elf_machine_tprel (map, sym_map, sym, reloc);      *(Elf64_Half *) reloc_addr = PPC_LO (value);      break;    case R_PPC64_TPREL16_HI:      value = elf_machine_tprel (map, sym_map, sym, reloc);      *(Elf64_Half *) reloc_addr = PPC_HI (value);      break;    case R_PPC64_TPREL16_HA:      value = elf_machine_tprel (map, sym_map, sym, reloc);      *(Elf64_Half *) reloc_addr = PPC_HA (value);      break;    case R_PPC64_TPREL16_HIGHER:      value = elf_machine_tprel (map, sym_map, sym, reloc);      *(Elf64_Half *) reloc_addr = PPC_HIGHER (value);      break;    case R_PPC64_TPREL16_HIGHEST:      value = elf_machine_tprel (map, sym_map, sym, reloc);      *(Elf64_Half *) reloc_addr = PPC_HIGHEST (value);      break;    case R_PPC64_TPREL16_HIGHERA:      value = elf_machine_tprel (map, sym_map, sym, reloc);      *(Elf64_Half *) reloc_addr = PPC_HIGHERA (value);      break;    case R_PPC64_TPREL16_HIGHESTA:      value = elf_machine_tprel (map, sym_map, sym, reloc);      *(Elf64_Half *) reloc_addr = PPC_HIGHESTA (value);      break;#endif#ifndef RTLD_BOOTSTRAP /* None of the following appear in ld.so */    case R_PPC64_ADDR16_LO_DS:      if (dont_expect ((value & 3) != 0))        _dl_reloc_overflow (map, "R_PPC64_ADDR16_LO_DS", reloc_addr, refsym);      BIT_INSERT (*(Elf64_Half *) reloc_addr, value, 0xfffc);      break;    case R_PPC64_ADDR16_LO:      *(Elf64_Half *) reloc_addr = PPC_LO (value);      break;    case R_PPC64_ADDR16_HI:      *(Elf64_Half *) reloc_addr = PPC_HI (value);      break;    case R_PPC64_ADDR16_HA:      *(Elf64_Half *) reloc_addr = PPC_HA (value);      break;    case R_PPC64_ADDR30:      {        Elf64_Addr delta = value - (Elf64_Xword) reloc_addr;        if (dont_expect ((delta + 0x80000000) >= 0x10000000			 || (delta & 3) != 0))          _dl_reloc_overflow (map, "R_PPC64_ADDR30", reloc_addr, refsym);        BIT_INSERT (*(Elf64_Word *) reloc_addr, delta, 0xfffffffc);      }      break;    case R_PPC64_COPY:      if (dont_expect (sym == NULL))	/* This can happen in trace mode when an object could not be found. */        return;      if (dont_expect (sym->st_size > refsym->st_size		       || (GLRO(dl_verbose)			   && sym->st_size < refsym->st_size)))	{          const char *strtab;          strtab = (const void *) D_PTR (map, l_info[DT_STRTAB]);          _dl_error_printf ("%s: Symbol `%s' has different size" \                            " in shared object," \                            " consider re-linking\n",                            _dl_argv[0] ?: "<program name unknown>",			    strtab + refsym->st_name);	}      memcpy (reloc_addr_arg, (char *) value,	      MIN (sym->st_size, refsym->st_size));      return;    case R_PPC64_UADDR64:      /* We are big-endian.  */      ((char *) reloc_addr_arg)[0] = (value >> 56) & 0xff;      ((char *) reloc_addr_arg)[1] = (value >> 48) & 0xff;      ((char *) reloc_addr_arg)[2] = (value >> 40) & 0xff;      ((char *) reloc_addr_arg)[3] = (value >> 32) & 0xff;      ((char *) reloc_addr_arg)[4] = (value >> 24) & 0xff;      ((char *) reloc_addr_arg)[5] = (value >> 16) & 0xff;      ((char *) reloc_addr_arg)[6] = (value >> 8) & 0xff;      ((char *) reloc_addr_arg)[7] = (value >> 0) & 0xff;      return;    case R_PPC64_UADDR32:      /* We are big-endian.  */      ((char *) reloc_addr_arg)[0] = (value >> 24) & 0xff;      ((char *) reloc_addr_arg)[1] = (value >> 16) & 0xff;      ((char *) reloc_addr_arg)[2] = (value >> 8) & 0xff;      ((char *) reloc_addr_arg)[3] = (value >> 0) & 0xff;      return;    case R_PPC64_ADDR32:      if (dont_expect ((value + 0x80000000) >= 0x10000000))        _dl_reloc_overflow (map, "R_PPC64_ADDR32", reloc_addr, refsym);      *(Elf64_Word *) reloc_addr = value;      return;    case R_PPC64_ADDR24:      if (dont_expect ((value + 0x2000000) >= 0x4000000 || (value & 3) != 0))        _dl_reloc_overflow (map, "R_PPC64_ADDR24", reloc_addr, refsym);      BIT_INSERT (*(Elf64_Word *) reloc_addr, value, 0x3fffffc);      break;    case R_PPC64_ADDR16:      if (dont_expect ((value + 0x8000) >= 0x10000))        _dl_reloc_overflow (map, "R_PPC64_ADDR16", reloc_addr, refsym);      *(Elf64_Half *) reloc_addr = value;      break;    case R_PPC64_UADDR16:      if (dont_expect ((value + 0x8000) >= 0x10000))        _dl_reloc_overflow (map, "R_PPC64_UADDR16", reloc_addr, refsym);      /* We are big-endian.  */      ((char *) reloc_addr_arg)[0] = (value >> 8) & 0xff;      ((char *) reloc_addr_arg)[1] = (value >> 0) & 0xff;      break;    case R_PPC64_ADDR16_DS:      if (dont_expect ((value + 0x8000) >= 0x10000 || (value & 3) != 0))        _dl_reloc_overflow (map, "R_PPC64_ADDR16_DS", reloc_addr, refsym);      BIT_INSERT (*(Elf64_Half *) reloc_addr, value, 0xfffc);      break;    case R_PPC64_ADDR16_HIGHER:      *(Elf64_Half *) reloc_addr = PPC_HIGHER (value);      break;    case R_PPC64_ADDR16_HIGHEST:      *(Elf64_Half *) reloc_addr = PPC_HIGHEST (value);      break;    case R_PPC64_ADDR16_HIGHERA:      *(Elf64_Half *) reloc_addr = PPC_HIGHERA (value);      break;    case R_PPC64_ADDR16_HIGHESTA:      *(Elf64_Half *) reloc_addr = PPC_HIGHESTA (value);      break;    case R_PPC64_ADDR14:    case R_PPC64_ADDR14_BRTAKEN:    case R_PPC64_ADDR14_BRNTAKEN:      {        if (dont_expect ((value + 0x8000) >= 0x10000 || (value & 3) != 0))	  _dl_reloc_overflow (map, "R_PPC64_ADDR14", reloc_addr, refsym);        Elf64_Word insn = *(Elf64_Word *) reloc_addr;        BIT_INSERT (insn, value, 0xfffc);        if (r_type != R_PPC64_ADDR14)	  {	    insn &= ~(1 << 21);	    if (r_type == R_PPC64_ADDR14_BRTAKEN)	      insn |= 1 << 21;	    if ((insn & (0x14 << 21)) == (0x04 << 21))	      insn |= 0x02 << 21;	    else if ((insn & (0x14 << 21)) == (0x10 << 21))	      insn |= 0x08 << 21;	  }        *(Elf64_Word *) reloc_addr = insn;      }      break;    case R_PPC64_REL32:      *(Elf64_Word *) reloc_addr = value - (Elf64_Addr) reloc_addr;      return;    case R_PPC64_REL64:      *reloc_addr = value - (Elf64_Addr) reloc_addr;      return;#endif /* !RTLD_BOOTSTRAP */    default:      _dl_reloc_bad_type (map, r_type, 0);      return;    }  MODIFIED_CODE_NOQUEUE (reloc_addr);}auto inline void __attribute__ ((always_inline))elf_machine_lazy_rel (struct link_map *map,		      Elf64_Addr l_addr, const Elf64_Rela *reloc){  /* elf_machine_runtime_setup handles this.  */}#endif /* RESOLVE */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩一本到| 日韩av电影免费观看高清完整版在线观看| 欧美日韩精品电影| 91网站在线观看视频| 成人久久18免费网站麻豆| 国产福利一区在线| 波多野结衣中文字幕一区| 不卡av在线免费观看| 91麻豆swag| 欧美色综合久久| 欧美日韩精品一区二区| 欧美一区二区三区免费在线看| 欧美日韩和欧美的一区二区| 日韩欧美中文一区| 欧美极品少妇xxxxⅹ高跟鞋| 国产三级精品视频| 成人免费高清在线观看| 日本aⅴ亚洲精品中文乱码| 国产精品人妖ts系列视频| 欧美成人aa大片| 88在线观看91蜜桃国自产| 色综合咪咪久久| 成人永久看片免费视频天堂| 国产老女人精品毛片久久| 蜜桃在线一区二区三区| 日韩一级高清毛片| 555www色欧美视频| 在线观看网站黄不卡| 色综合天天综合在线视频| 国产成人av在线影院| 国产精品77777| 成人黄色免费短视频| 成人av影视在线观看| 国产91富婆露脸刺激对白| 亚洲色图清纯唯美| ●精品国产综合乱码久久久久| 中文字幕制服丝袜成人av| 国产精品国产三级国产有无不卡| 国产精品灌醉下药二区| 国产精品毛片久久久久久| 欧美国产日本视频| 中文字幕在线免费不卡| 久久这里都是精品| 国产精品免费丝袜| 亚洲欧洲综合另类在线 | 日韩国产精品大片| 久久精品国产99久久6| 久久99国产精品久久99| 成人精品视频网站| 欧美色男人天堂| 精品国产乱码久久久久久老虎| 日韩欧美在线一区二区三区| 久久精品水蜜桃av综合天堂| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 激情综合色播五月| 久久精品国产澳门| 不卡的av网站| 欧美猛男gaygay网站| 成人天堂资源www在线| 欧美精品在线观看播放| 久久久亚洲欧洲日产国码αv| **网站欧美大片在线观看| 久久久.com| 亚洲女与黑人做爰| 三级精品在线观看| 成人av免费网站| 日韩亚洲欧美中文三级| 中文在线资源观看网站视频免费不卡| 亚洲精品一二三| 蜜臀av一区二区在线观看| 成人综合激情网| 制服丝袜亚洲色图| 亚洲视频香蕉人妖| 天堂精品中文字幕在线| 成人午夜视频在线观看| 91精品国产欧美一区二区 | 美女任你摸久久| 99久久国产免费看| 欧美成人在线直播| 亚洲高清中文字幕| 免费黄网站欧美| 国产一区二区美女诱惑| 欧美亚洲国产一卡| 国产精品久久午夜| 国产精品69毛片高清亚洲| 欧美一级二级在线观看| 亚洲一区免费观看| av一区二区三区在线| 欧美性色欧美a在线播放| 欧美国产欧美亚州国产日韩mv天天看完整| 日本美女一区二区三区| 91国产视频在线观看| 日韩欧美高清一区| 石原莉奈一区二区三区在线观看| a亚洲天堂av| 中文字幕高清一区| 国产一区二区91| 精品国产免费一区二区三区香蕉| 亚洲va韩国va欧美va精品| 欧美中文字幕不卡| 亚洲欧美区自拍先锋| 日本女人一区二区三区| 欧美一区二区三区公司| 日韩国产高清在线| 欧美成人精品3d动漫h| 偷拍亚洲欧洲综合| 日韩一区二区三区免费观看| 日韩电影在线观看电影| 色欧美片视频在线观看在线视频| 在线国产电影不卡| 亚洲影院久久精品| 欧美日韩一区三区| 日韩精品视频网站| 91精品黄色片免费大全| 蜜臀av一区二区在线免费观看| 欧美日韩久久一区| 久久国产乱子精品免费女| 精品88久久久久88久久久| 18成人在线视频| 91国内精品野花午夜精品 | 色呦呦网站一区| 亚洲成a人片在线不卡一二三区| 在线免费观看日本一区| 五月天激情小说综合| 欧美一区二区精品| 国产在线乱码一区二区三区| 日本一区二区三级电影在线观看| 成人91在线观看| 中文字幕在线免费不卡| 久久精品久久综合| 亚洲国产精品ⅴa在线观看| 成人激情动漫在线观看| 亚洲综合激情另类小说区| 911精品国产一区二区在线| 久久成人久久爱| 国产精品情趣视频| 91丨九色丨国产丨porny| 欧美国产日韩亚洲一区| 色老汉av一区二区三区| 蜜臀av性久久久久蜜臀aⅴ流畅 | 一区二区三区精品| 日韩一区二区免费视频| 不卡视频免费播放| 亚洲国产欧美一区二区三区丁香婷| 欧美一区二区久久久| 99久久精品免费| **性色生活片久久毛片| 欧美一区二区三区成人| 97超碰欧美中文字幕| 蜜臀精品久久久久久蜜臀| 久久久久国产精品麻豆| 精品一区二区三区久久久| 一区二区三区日韩| 久久麻豆一区二区| 欧美三级日韩三级| 国产精品亚洲一区二区三区在线 | 欧美日韩综合在线| 国产成人h网站| 激情都市一区二区| 亚洲精品久久久久久国产精华液| 成人黄色在线网站| 国产精品自拍在线| 日日夜夜精品视频免费| 亚洲欧美日韩中文字幕一区二区三区| 欧美一区二区女人| 欧美二区三区的天堂| 99精品久久久久久| 国产aⅴ综合色| 亚洲午夜一二三区视频| 91精品午夜视频| 色婷婷国产精品久久包臀 | 粉嫩av亚洲一区二区图片| 中文字幕av一区二区三区免费看 | 久久久久久久网| 欧美一卡二卡在线| 欧日韩精品视频| 日韩精品乱码免费| 久久中文娱乐网| 欧美成人官网二区| 91精品欧美福利在线观看| 欧美日韩一区二区三区视频| www.色精品| 国产精品18久久久久久久网站| 日韩理论片中文av| 中文字幕一区二区三中文字幕| 欧美大片在线观看| 欧美成人三级在线| 91福利视频网站| 成人综合在线网站| 成人一区在线观看| 成人免费高清视频| 97se亚洲国产综合在线| 99精品视频一区二区| 欧美伊人久久久久久久久影院| 色呦呦网站一区| 蜜桃91丨九色丨蝌蚪91桃色| 久久亚洲免费视频| 国产女主播视频一区二区| 国产精品第13页| 日韩视频免费观看高清完整版 |