#include <string> | |
void __attribute__((noinline)) memcpy_noinline(void *dst, void *src, size_t size) | |
{ | |
memcpy(dst,src,size); | |
} | |
void __attribute__((noinline)) memset_noinline(void *dst, int value, size_t size) | |
{ | |
memset(dst, value, size); | |
} | |
uint64_t __attribute__((noinline)) sum(volatile void *src, size_t size) | |
{ | |
uint64_t *src_ptr = (uint64_t*)src; | |
uint64_t sum = 0; | |
size_t len = size / sizeof(uint64_t); | |
for (size_t i = 0; i < len; i+=1) | |
sum += src_ptr[i]; | |
return sum; | |
} |