Home
last modified time | relevance | path

Searched refs:alignment (Results 1 – 24 of 24) sorted by relevance

/bionic/benchmarks/tests/
Dbenchmark_test.cpp22 for (size_t alignment = 1; alignment <= 32; alignment *= 2) { in TEST() local
23 for (size_t or_mask = 0; or_mask < alignment; ++or_mask) { in TEST()
24 uintptr_t aligned_ptr = reinterpret_cast<uintptr_t>(GetAlignedMemory(buf.data(), alignment, in TEST()
26 ASSERT_EQ(aligned_ptr % alignment, or_mask); in TEST()
27 ASSERT_EQ(aligned_ptr & alignment, alignment); in TEST()
34 for (size_t alignment = 1; alignment <= 2048; alignment *= 2) { in TEST() local
35 uintptr_t aligned_ptr = reinterpret_cast<uintptr_t>(GetAlignedPtr(&buf, alignment, 100)); in TEST()
36 ASSERT_EQ(aligned_ptr & alignment, alignment); in TEST()
37 ASSERT_EQ(aligned_ptr & (alignment - 1), 0u); in TEST()
/bionic/benchmarks/
Dutil.cpp29 char* GetAlignedMemory(char* orig_ptr, size_t alignment, size_t or_mask) { in GetAlignedMemory() argument
30 if ((alignment & (alignment - 1)) != 0) { in GetAlignedMemory()
33 if (or_mask > alignment) { in GetAlignedMemory()
37 if (alignment > 0) { in GetAlignedMemory()
41 ptr += alignment - (ptr & (alignment - 1)); in GetAlignedMemory()
42 ptr |= alignment | or_mask; in GetAlignedMemory()
48 char* GetAlignedPtr(std::vector<char>* buf, size_t alignment, size_t nbytes) { in GetAlignedPtr() argument
49 buf->resize(nbytes + 3 * alignment); in GetAlignedPtr()
50 return GetAlignedMemory(buf->data(), alignment, 0); in GetAlignedPtr()
53 wchar_t* GetAlignedPtr(std::vector<wchar_t>* buf, size_t alignment, size_t nchars) { in GetAlignedPtr() argument
[all …]
Dutil.h55 char* GetAlignedMemory(char* orig_ptr, size_t alignment, size_t or_mask);
57 char* GetAlignedPtr(std::vector<char>* buf, size_t alignment, size_t nbytes);
59 wchar_t* GetAlignedPtr(std::vector<wchar_t>* buf, size_t alignment, size_t nbytes);
61 char* GetAlignedPtrFilled(std::vector<char>* buf, size_t alignment, size_t nbytes, char fill_byte);
Dstring_benchmark.cpp81 const size_t alignment = state.range(1); in BM_string_memmove_overlap_dst_before_src() local
83 std::vector<char> buf(3 * alignment + nbytes + 1, 'x'); in BM_string_memmove_overlap_dst_before_src()
84 char* buf_aligned = GetAlignedPtrFilled(&buf, alignment, nbytes + 1, 'x'); in BM_string_memmove_overlap_dst_before_src()
96 const size_t alignment = state.range(1); in BM_string_memmove_overlap_src_before_dst() local
99 char* buf_aligned = GetAlignedPtrFilled(&buf, alignment, nbytes + 1, 'x'); in BM_string_memmove_overlap_src_before_dst()
111 const size_t alignment = state.range(1); in BM_string_memset() local
114 char* buf_aligned = GetAlignedPtr(&buf, alignment, nbytes + 1); in BM_string_memset()
126 const size_t alignment = state.range(1); in BM_string_strlen() local
129 char* buf_aligned = GetAlignedPtrFilled(&buf, alignment, nbytes + 1, 'x'); in BM_string_strlen()
/bionic/libc/malloc_hooks/
Dmalloc_hooks.cpp61 void* hooks_memalign(size_t alignment, size_t bytes);
62 void* hooks_aligned_alloc(size_t alignment, size_t bytes);
67 int hooks_posix_memalign(void** memptr, size_t alignment, size_t size);
90 static void* default_memalign_hook(size_t alignment, size_t bytes, const void*) { in default_memalign_hook() argument
91 return g_dispatch->memalign(alignment, bytes); in default_memalign_hook()
139 void* hooks_memalign(size_t alignment, size_t bytes) { in hooks_memalign() argument
141 return __memalign_hook(alignment, bytes, __builtin_return_address(0)); in hooks_memalign()
143 return g_dispatch->memalign(alignment, bytes); in hooks_memalign()
176 void* hooks_aligned_alloc(size_t alignment, size_t size) { in hooks_aligned_alloc() argument
178 if (!powerof2(alignment)) { in hooks_aligned_alloc()
[all …]
DREADME.md48 called, but only if alignment is a power of 2.
51 called, but only if alignment is a power of 2.
57 has been set, then the hook is called with an appropriate alignment value.
/bionic/tests/libs/
Dbionic_tests_zipalign.cpp68 static bool CreateAlignedZip(ZipArchiveHandle& handle, FILE* zip_dst, uint32_t alignment) { in CreateAlignedZip() argument
88 error = writer.StartAlignedEntry(zip_name.c_str(), flags, alignment); in CreateAlignedZip()
128 unsigned long int alignment = strtoul(argv[1], &end, 10); in main() local
129 if ((alignment == ULONG_MAX && errno == ERANGE) || *end != '\0') { in main()
134 if (((alignment - 1) & alignment) != 0) { in main()
154 bool success = CreateAlignedZip(handle, zip_dst, static_cast<uint32_t>(alignment)); in main()
/bionic/libc/malloc_debug/
Dmalloc_debug.cpp79 void* debug_aligned_alloc(size_t alignment, size_t size);
80 void* debug_memalign(size_t alignment, size_t bytes);
85 int debug_posix_memalign(void** memptr, size_t alignment, size_t size);
452 void* debug_memalign(size_t alignment, size_t bytes) { in debug_memalign() argument
454 return g_dispatch->memalign(alignment, bytes); in debug_memalign()
470 if (!powerof2(alignment)) { in debug_memalign()
471 alignment = BIONIC_ROUND_UP_POWER_OF_2(alignment); in debug_memalign()
475 if (alignment < MINIMUM_ALIGNMENT_BYTES) { in debug_memalign()
476 alignment = MINIMUM_ALIGNMENT_BYTES; in debug_memalign()
482 size_t real_size = alignment + bytes + g_debug->extra_bytes(); in debug_memalign()
[all …]
DRecordData.cpp84 MemalignEntry::MemalignEntry(void* pointer, size_t size, size_t alignment) in MemalignEntry() argument
85 : MallocEntry(pointer, size), alignment_(alignment) {} in MemalignEntry()
DRecordData.h134 MemalignEntry(void* pointer, size_t size, size_t alignment);
DREADME.md335 pointer = memalign(alignment, size)
337 **THREAD\_ID**: memalign pointer alignment size
339 pointer = aligned\_alloc(alignment, size)
341 **THREAD\_ID**: memalign pointer alignment size
343 posix\_memalign(&pointer, alignment, size)
345 **THREAD\_ID**: memalign pointer alignment size
/bionic/libc/bionic/
Dmalloc_common.cpp136 extern "C" void* memalign(size_t alignment, size_t bytes) { in memalign() argument
139 return _memalign(alignment, bytes); in memalign()
141 return Malloc(memalign)(alignment, bytes); in memalign()
144 extern "C" int posix_memalign(void** memptr, size_t alignment, size_t size) { in posix_memalign() argument
147 return _posix_memalign(memptr, alignment, size); in posix_memalign()
149 return Malloc(posix_memalign)(memptr, alignment, size); in posix_memalign()
152 extern "C" void* aligned_alloc(size_t alignment, size_t size) { in aligned_alloc() argument
155 return _aligned_alloc(alignment, size); in aligned_alloc()
157 return Malloc(aligned_alloc)(alignment, size); in aligned_alloc()
/bionic/tests/
Dmalloc_test.cpp79 for (size_t alignment = 1 << i; alignment < (1U << (i+1)); alignment++) { in TEST() local
80 char *ptr = reinterpret_cast<char*>(memalign(alignment, 100)); in TEST()
81 ASSERT_TRUE(ptr != NULL) << "Failed at alignment " << alignment; in TEST()
82 ASSERT_LE(100U, malloc_usable_size(ptr)) << "Failed at alignment " << alignment; in TEST()
84 << "Failed at alignment " << alignment; in TEST()
105 for (size_t alignment = 1; alignment <= 4096; alignment <<= 1) { in TEST() local
106 char *ptr = (char*)memalign(alignment, 100); in TEST()
109 ASSERT_EQ(0U, (intptr_t)ptr % alignment); in TEST()
Dbuffer_tests.cpp195 static void *GetAlignedPtr(void *orig_ptr, int alignment, int or_mask) { in GetAlignedPtr() argument
197 if (alignment > 0) { in GetAlignedPtr()
201 ptr += alignment - (ptr & (alignment - 1)); in GetAlignedPtr()
202 ptr |= alignment | or_mask; in GetAlignedPtr()
Dpthread_test.cpp2216 void* allocate(size_t size, size_t alignment) { in allocate() argument
2217 char* p = new char[size + alignment * 2]; in allocate()
2219 while (!is_strict_aligned(p, alignment)) { in allocate()
2232 bool is_strict_aligned(char* p, size_t alignment) { in is_strict_aligned() argument
2233 return (reinterpret_cast<uintptr_t>(p) % (alignment * 2)) == alignment; in is_strict_aligned()
/bionic/libc/kernel/uapi/mtd/
Dubi-user.h61 __s32 alignment; member
/bionic/linker/
Dlinker_phdr.h68 bool CheckFileRange(ElfW(Addr) offset, size_t size, size_t alignment);
Dlinker_phdr.cpp294 bool ElfReader::CheckFileRange(ElfW(Addr) offset, size_t size, size_t alignment) { in CheckFileRange() argument
307 ((offset % alignment) == 0); in CheckFileRange()
/bionic/libc/kernel/uapi/drm/
Di915_drm.h322 int alignment; member
416 __u64 alignment; member
433 __u64 alignment; member
503 __u64 alignment; member
Dradeon_drm.h560 int alignment; member
614 __u64 alignment; member
Damdgpu_drm.h72 __u64 alignment; member
/bionic/libc/malloc_debug/tests/
Dmalloc_debug_unit_tests.cpp351 for (size_t alignment = 1; alignment <= 256; alignment++) { in TEST_F() local
352 pointer = reinterpret_cast<uint8_t*>(debug_memalign(alignment, 100)); in TEST_F()
356 size_t alignment_mask = alignment - 1; in TEST_F()
357 if (!powerof2(alignment)) { in TEST_F()
358 alignment_mask = BIONIC_ROUND_UP_POWER_OF_2(alignment) - 1; in TEST_F()
448 for (size_t alignment = 1; alignment <= 256; alignment++) { in TEST_F() local
449 pointer = reinterpret_cast<uint8_t*>(debug_memalign(alignment, 100)); in TEST_F()
454 size_t alignment_mask = alignment - 1; in TEST_F()
455 if (!powerof2(alignment)) { in TEST_F()
456 alignment_mask = BIONIC_ROUND_UP_POWER_OF_2(alignment) - 1; in TEST_F()
[all …]
/bionic/libc/malloc_hooks/tests/
Dmalloc_hooks_tests.cpp167 void* MallocHooksTest::test_memalign_hook(size_t alignment, size_t size, const void* arg) { in test_memalign_hook() argument
170 return orig_memalign_hook_(alignment, size, arg); in test_memalign_hook()
/bionic/
Dandroid-changes-for-ndk-developers.md112 Current versions of the zipalign tool take care of alignment.