Home
last modified time | relevance | path

Searched refs:si (Results 1 – 25 of 25) sorted by relevance

/bionic/linker/
Dlinker_cfi.cpp135 for (soinfo* si = solist; si != nullptr; si = si->next) { in find_libdl() local
136 const char* soname = si->get_soname(); in find_libdl()
138 return si; in find_libdl()
144 static uintptr_t soinfo_find_symbol(soinfo* si, const char* s) { in soinfo_find_symbol() argument
146 if (const ElfW(Sym)* sym = si->find_symbol_by_name(name, nullptr)) { in soinfo_find_symbol()
147 return si->resolve_symbol_address(sym); in soinfo_find_symbol()
152 uintptr_t soinfo_find_cfi_check(soinfo* si) { in soinfo_find_cfi_check() argument
153 return soinfo_find_symbol(si, "__cfi_check"); in soinfo_find_cfi_check()
163 bool CFIShadowWriter::AddLibrary(soinfo* si) { in AddLibrary() argument
165 if (si->base == 0 || si->size == 0) { in AddLibrary()
[all …]
Dlinker_main.cpp67 static void set_bss_vma_name(soinfo* si);
80 void solist_add_soinfo(soinfo* si) { in solist_add_soinfo() argument
81 sonext->next = si; in solist_add_soinfo()
82 sonext = si; in solist_add_soinfo()
85 bool solist_remove_soinfo(soinfo* si) { in solist_remove_soinfo() argument
88 if (trav == si) { in solist_remove_soinfo()
96 PRINT("name \"%s\"@%p is not in solist!", si->get_realpath(), si); in solist_remove_soinfo()
103 prev->next = si->next; in solist_remove_soinfo()
104 if (si == sonext) { in solist_remove_soinfo()
163 soinfo* si = soinfo_alloc(&g_default_namespace, "[vdso]", nullptr, 0, 0); in add_vdso() local
[all …]
Dlinker.cpp287 soinfo* si = new (g_soinfo_allocator.alloc()) soinfo(ns, name, file_stat, in soinfo_alloc() local
290 solist_add_soinfo(si); in soinfo_alloc()
292 si->generate_handle(); in soinfo_alloc()
293 ns->add_soinfo(si); in soinfo_alloc()
295 TRACE("name %s: allocated soinfo @ %p", name, si); in soinfo_alloc()
296 return si; in soinfo_alloc()
299 static void soinfo_free(soinfo* si) { in soinfo_free() argument
300 if (si == nullptr) { in soinfo_free()
304 if (si->base != 0 && si->size != 0) { in soinfo_free()
305 if (!si->is_mapped_by_caller()) { in soinfo_free()
[all …]
Dlinker_namespaces.cpp74 auto is_accessible_ftor = [this] (soinfo* si, bool allow_secondary) { in is_accessible() argument
77 if (!si->has_min_version(3)) { in is_accessible()
79 si->get_soname()); in is_accessible()
83 if (si->get_primary_namespace() == this) { in is_accessible()
103 const android_namespace_list_t& secondary_namespaces = si->get_secondary_namespaces(); in is_accessible()
116 return !s->get_parents().visit([&](soinfo* si) { in is_accessible() argument
117 return !is_accessible_ftor(si, false); in is_accessible()
130 soinfo_list().for_each([&](soinfo* si) { in get_global_group() argument
131 if ((si->get_dt_flags_1() & DF_1_GLOBAL) != 0) { in get_global_group()
132 global_group.push_back(si); in get_global_group()
[all …]
Dlinker_tls.cpp58 static void register_tls_module(soinfo* si, size_t static_offset) { in register_tls_module() argument
68 soinfo_tls* si_tls = si->get_tls(); in register_tls_module()
81 .soinfo_ptr = si, in register_tls_module()
85 static void unregister_tls_module(soinfo* si) { in unregister_tls_module() argument
89 soinfo_tls* si_tls = si->get_tls(); in unregister_tls_module()
92 CHECK(mod.soinfo_ptr == si); in unregister_tls_module()
133 void register_soinfo_tls(soinfo* si) { in register_soinfo_tls() argument
134 soinfo_tls* si_tls = si->get_tls(); in register_soinfo_tls()
143 register_tls_module(si, static_offset); in register_soinfo_tls()
146 void unregister_soinfo_tls(soinfo* si) { in unregister_soinfo_tls() argument
[all …]
Dlinker_relocate.cpp65 soinfo* si = nullptr; member in Relocator
87 si->get_realpath(), si_strtab_size, index); in get_string()
103 if (!relocator.si->lookup_version_info(relocator.version_tracker, r_sym, sym_name, &vi)) { in lookup_symbol()
119 …DL_ERR("cannot locate symbol \"%s\" referenced by \"%s\"...", sym_name, relocator.si->get_realpath… in lookup_symbol()
163 void* const rel_target = reinterpret_cast<void*>(reloc.r_offset + relocator.si->load_bias); in process_relocation_impl()
184 const bool handle_text_relocs = IsGeneral && relocator.si->has_text_relocations; in process_relocation_impl()
187 if (phdr_table_protect_segments(relocator.si->phdr, relocator.si->phnum, in process_relocation_impl()
188 relocator.si->load_bias) < 0) { in process_relocation_impl()
190 relocator.si->get_realpath(), strerror(errno)); in process_relocation_impl()
197 if (phdr_table_unprotect_segments(relocator.si->phdr, relocator.si->phnum, in process_relocation_impl()
[all …]
Dlinker_namespaces.h141 void add_soinfo(soinfo* si) { in add_soinfo()
142 soinfo_list_.push_back(si); in add_soinfo()
146 for (auto si : soinfos) { in add_soinfos() local
147 add_soinfo(si); in add_soinfos()
151 void remove_soinfo(soinfo* si) { in remove_soinfo()
153 return si == candidate; in remove_soinfo()
166 bool is_accessible(soinfo* si);
Dlinker_relocate.h60 inline bool is_symbol_global_and_defined(const soinfo* si, const ElfW(Sym)* s) { in is_symbol_global_and_defined() argument
66 ELF_ST_BIND(s->st_info), si->get_string(s->st_name), si->get_realpath()); in is_symbol_global_and_defined()
Dlinker_cfi.h64 bool AddLibrary(soinfo* si);
92 bool AfterLoad(soinfo* si, soinfo *solist);
95 void BeforeUnload(soinfo* si);
Dlinker_tls.h41 void register_soinfo_tls(soinfo* si);
42 void unregister_soinfo_tls(soinfo* si);
Dlinker_main.h68 void solist_add_soinfo(soinfo* si);
69 bool solist_remove_soinfo(soinfo* si);
Dlinker_soinfo.h105 explicit SymbolLookupList(soinfo* si);
444 void for_each_dt_needed(const soinfo* si, F action) { in for_each_dt_needed() argument
445 for (const ElfW(Dyn)* d = si->dynamic; d->d_tag != DT_NULL; ++d) { in for_each_dt_needed()
447 action(fix_dt_needed(si->get_string(d->d_un.d_val), si->get_realpath())); in for_each_dt_needed()
Dlinker_soinfo.cpp53 SymbolLookupList::SymbolLookupList(soinfo* si) in SymbolLookupList() argument
54 : sole_lib_(si->get_lookup_lib()), begin_(&sole_lib_), end_(&sole_lib_ + 1) { in SymbolLookupList()
55 CHECK(si != nullptr); in SymbolLookupList()
67 global_group.for_each([this](soinfo* si) { in SymbolLookupList() argument
68 libs_.push_back(si->get_lookup_lib()); in SymbolLookupList()
72 local_group.for_each([this](soinfo* si) { in SymbolLookupList() argument
73 libs_.push_back(si->get_lookup_lib()); in SymbolLookupList()
541 get_children().for_each([] (soinfo* si) { in call_constructors() argument
542 si->call_constructors(); in call_constructors()
Dlinker.h182 ElfW(Versym) find_verdef_version_index(const soinfo* si, const version_info* vi);
183 bool validate_verdef_section(const soinfo* si);
Dlinked_list.h156 visit([&] (T* si) { in for_each()
157 action(si); in for_each()
/bionic/libc/bionic/
Dsysinfo.cpp81 struct sysinfo si; in get_phys_pages() local
82 sysinfo(&si); in get_phys_pages()
83 return (static_cast<int64_t>(si.totalram) * si.mem_unit) / PAGE_SIZE; in get_phys_pages()
87 struct sysinfo si; in get_avphys_pages() local
88 sysinfo(&si); in get_avphys_pages()
89 return ((static_cast<int64_t>(si.freeram) + si.bufferram) * si.mem_unit) / PAGE_SIZE; in get_avphys_pages()
Dgetloadavg.cpp37 struct sysinfo si; in getloadavg() local
38 if (sysinfo(&si) == -1) return -1; in getloadavg()
41 averages[i] = static_cast<double>(si.loads[i]) / static_cast<double>(1 << SI_LOAD_SHIFT); in getloadavg()
Dposix_timers.cpp81 siginfo_t si = {}; in __timer_thread_start() local
82 if (__rt_sigtimedwait(&sigset, &si, nullptr, sizeof(sigset)) == -1) continue; in __timer_thread_start()
84 if (si.si_code == SI_TIMER) { in __timer_thread_start()
92 } else if (si.si_code == SI_TKILL) { in __timer_thread_start()
/bionic/libm/upstream-freebsd/lib/msun/src/
Ds_nan.c55 int si; /* index into s */ local
65 for (si = 0; isxdigit(s[si]); si++)
74 if (--si < 0)
76 words[bitpos / 32] |= digittoint(s[si]) << (bitpos % 32);
/bionic/tests/
Dsys_sysinfo_test.cpp42 struct sysinfo si; in TEST() local
43 memset(&si, 0, sizeof(si)); in TEST()
44 ASSERT_EQ(0, sysinfo(&si)); in TEST()
/bionic/libc/upstream-openbsd/lib/libc/gdtoa/
Ddmisc.c124 ULong si, z, zs; local
156 si = *sx++;
157 ys = (si & 0xffff) * q + carry;
158 zs = (si >> 16) * q + (ys >> 16);
197 si = *sx++;
198 ys = (si & 0xffff) + carry;
199 zs = (si >> 16) + (ys >> 16);
/bionic/libc/upstream-netbsd/lib/libc/gen/
Dpsignal.c82 psiginfo(const siginfo_t *si, const char *s) in psiginfo() argument
84 psignal(si->si_signo, s); in psiginfo()
/bionic/libc/kernel/uapi/linux/
Dnilfs2_api.h52 …ILFS_SUINFO_FNS(flag,name) static inline int nilfs_suinfo_ ##name(const struct nilfs_suinfo * si) \
53 { return si->sui_flags & (1UL << NILFS_SUINFO_ ##flag); \
/bionic/libc/kernel/uapi/asm-x86/asm/
Dsigcontext.h112 __u32 si; member
140 __u64 si; member
/bionic/libc/arch-x86_64/string/
Dsse2-memmove-slm.S278 movw %si, -2(%r8,%rdx)
304 movw %si, (%rdi)