diff options
author | Tor Egge <Tor.Egge@online.no> | 2022-05-31 13:39:14 +0200 |
---|---|---|
committer | Tor Egge <Tor.Egge@online.no> | 2022-05-31 13:39:14 +0200 |
commit | ebbf3c89030caedfa694f1ce6a77c94eab76762a (patch) | |
tree | 0f69e5b41e0ce07e03e741c459a8056af9e53360 /vespamalloc | |
parent | da8c0d839fb45fddd4b59efa5a469d0b7e948d3f (diff) |
Use clang attribute to turn off optimization when compiling with clang.
Diffstat (limited to 'vespamalloc')
-rw-r--r-- | vespamalloc/src/vespamalloc/malloc/load_as_huge.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/vespamalloc/src/vespamalloc/malloc/load_as_huge.cpp b/vespamalloc/src/vespamalloc/malloc/load_as_huge.cpp index a5d595a8486..8494689ba85 100644 --- a/vespamalloc/src/vespamalloc/malloc/load_as_huge.cpp +++ b/vespamalloc/src/vespamalloc/malloc/load_as_huge.cpp @@ -29,8 +29,13 @@ mmap_huge(size_t sz) { size_t round_huge_down(size_t v) { return v & ~(HUGEPAGE_SIZE - 1); } size_t round_huge_up(size_t v) { return round_huge_down(v + (HUGEPAGE_SIZE - 1)); } +#ifdef __clang__ +void +non_optimized_non_inlined_memcpy(void *dest_in, const void *src_in, size_t n) __attribute__((noinline, optnone)) ; +#else void non_optimized_non_inlined_memcpy(void *dest_in, const void *src_in, size_t n) __attribute__((noinline, optimize(1))) ; +#endif // Simple memcpy replacement to avoid calling code in other dso. void |