#include <stddef.h>
#include <stdlib.h>
#include <string.h>
#include "utils/ellipsis-init.h"
#include "utils/ellipsis-malloc.h"
#include <stdio.h>
#include <stdint.h>
Macros | |
#define | ALLOC_ASSIGN_BREAK(T, C) case ellipsis‿init‿flex_ ## T: *(C*)lens = len;/* downgraded */ break |
#define | ALLOC_CHECK_OR_RETURN(T, M) case ellipsis‿init‿flex_ ## T: if (len <= M ## _MAX) /* downgraded */ break;else return ret |
#define | ALLOC_RETRIEVE_BREAK(T, C) case ellipsis‿init‿flex_ ## T: olen = *(C*)olens;/* downgraded */ break |
#define | ELLIPSIS_CONTRACT(COUNT, COND, ACTION, VERB, CSTR, CTYPE, ...) |
#define | ELLIPSIS_CONTRACT_CHECK_STATIC(CTYPE, COND, CSTR, ...) |
#define | ELLIPSIS_CONTRACT_ICE_OR_TRUE(...) |
#define | ELLIPSIS_CONTRACT_IMPL(COUNT, COND, ACTION, VERB, CSTR, CTYPE, ...) |
#define | ELLIPSIS_CONTRACT_VIOLATION(COUNT, VERB, CTYPE, CSTR, ...) |
#define | ELLIPSIS_TEST_ICE(...) (false ? ELLIPSIS_TO_VOIDS(__VA_ARGS__) : (ellipsis‿contracts‿is_ice*)nullptr) |
#define | ELLIPSIS_TO_VOIDS(...) ((void*)((uintptr_t)((__VA_ARGS__)-(__VA_ARGS__)))) |
#define | STRINGIFY(...) STRINGIFY_(__VA_ARGS__) |
#define | STRINGIFY_(...) #__VA_ARGS__ |
Typedefs | |
typedef struct ellipsis‿contracts‿is_ice | ellipsis‿contracts‿is_ice |
Functions | |
void * | ellipsis‿alloc‿flex_core_s‿_Inner (signed long long len, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char const base_init[restrict static 1], unsigned char const dat_init[restrict static 1]) |
void * | ellipsis‿alloc‿flex_core_s‿_Insta (signed long long len, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char const base_init[restrict static 1], unsigned char const dat_init[restrict static 1]) |
void * | ellipsis‿alloc‿flex_core_u‿_Inner (unsigned long long len, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char const base_init[restrict static 1], unsigned char const dat_init[restrict static 1]) |
void * | ellipsis‿alloc‿flex_core_u‿_Insta (unsigned long long len, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char const base_init[restrict static 1], unsigned char const dat_init[restrict static 1]) |
void * | ellipsis‿init‿flex_core_s‿_Inner (signed long long len, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char ret[restrict static(off_dat+len *size_dat)], unsigned char const base_init[restrict static 1], unsigned char const dat_init[restrict static 1]) |
void * | ellipsis‿init‿flex_core_s‿_Insta (signed long long len, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char ret[restrict static(off_dat+len *size_dat)], unsigned char const base_init[restrict static 1], unsigned char const dat_init[restrict static 1]) |
void * | ellipsis‿init‿flex_core_u‿_Inner (unsigned long long len, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char ret[restrict static(off_dat+len *size_dat)], unsigned char const base_init[restrict static 1], unsigned char const dat_init[restrict static 1]) |
void * | ellipsis‿init‿flex_core_u‿_Insta (unsigned long long len, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char ret[restrict static(off_dat+len *size_dat)], unsigned char const base_init[restrict static 1], unsigned char const dat_init[restrict static 1]) |
void *() | ellipsis‿init‿obfuscate (void *p) |
void | ellipsis‿init‿repeat‿_Inner (size_t n, unsigned char const sample[restrict static n], size_t m, unsigned char buffer[restrict static m]) |
void | ellipsis‿init‿repeat‿_Insta (size_t n, unsigned char const sample[restrict static n], size_t m, unsigned char buffer[restrict static m]) |
void * | ellipsis‿realloc‿flex_core_s‿_Inner (signed long long len, void *ostart_, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char const ini[restrict static 1]) |
void * | ellipsis‿realloc‿flex_core_s‿_Insta (signed long long len, void *ostart_, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char const ini[restrict static 1]) |
void * | ellipsis‿realloc‿flex_core_u‿_Inner (unsigned long long len, void *ostart_, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char const ini[restrict static 1]) |
void * | ellipsis‿realloc‿flex_core_u‿_Insta (unsigned long long len, void *ostart_, size_t size_base, ellipsis‿init‿flex type, size_t off_len, size_t size_dat, size_t off_dat, unsigned char const ini[restrict static 1]) |
Variables | |
ellipsis‿alloc‿flex_core_s | ellipsis‿alloc‿flex_core_s |
ellipsis‿alloc‿flex_core_u | ellipsis‿alloc‿flex_core_u |
thread_local bool volatile | ellipsis‿contracts‿ignore‿dynamic |
thread_local bool volatile | ellipsis‿contracts‿proceed‿dynamic |
thread_local bool volatile | ellipsis‿contracts‿verbose‿dynamic |
ellipsis‿realloc‿flex_core_s | ellipsis‿realloc‿flex_core_s |
ellipsis‿realloc‿flex_core_u | ellipsis‿realloc‿flex_core_u |
#define ALLOC_ASSIGN_BREAK | ( | T, | |
C | |||
) | case ellipsis‿init‿flex_ ## T: *(C*)lens = len;/* downgraded */ break |
#define ALLOC_CHECK_OR_RETURN | ( | T, | |
M | |||
) | case ellipsis‿init‿flex_ ## T: if (len <= M ## _MAX) /* downgraded */ break;else return ret |
#define ALLOC_RETRIEVE_BREAK | ( | T, | |
C | |||
) | case ellipsis‿init‿flex_ ## T: olen = *(C*)olens;/* downgraded */ break |
#define ELLIPSIS_CONTRACT | ( | COUNT, | |
COND, | |||
ACTION, | |||
VERB, | |||
CSTR, | |||
CTYPE, | |||
... | |||
) |
#define ELLIPSIS_CONTRACT_CHECK_STATIC | ( | CTYPE, | |
COND, | |||
CSTR, | |||
... | |||
) |
#define ELLIPSIS_CONTRACT_ICE_OR_TRUE | ( | ... | ) |
#define ELLIPSIS_CONTRACT_IMPL | ( | COUNT, | |
COND, | |||
ACTION, | |||
VERB, | |||
CSTR, | |||
CTYPE, | |||
... | |||
) |
#define ELLIPSIS_CONTRACT_VIOLATION | ( | COUNT, | |
VERB, | |||
CTYPE, | |||
CSTR, | |||
... | |||
) |
#define ELLIPSIS_TEST_ICE | ( | ... | ) | (false ? ELLIPSIS_TO_VOIDS(__VA_ARGS__) : (ellipsis‿contracts‿is_ice*)nullptr) |
#define ELLIPSIS_TO_VOIDS | ( | ... | ) | ((void*)((uintptr_t)((__VA_ARGS__)-(__VA_ARGS__)))) |
#define STRINGIFY | ( | ... | ) | STRINGIFY_(__VA_ARGS__) |
#define STRINGIFY_ | ( | ... | ) | #__VA_ARGS__ |
typedef struct ellipsis‿contracts‿is_ice ellipsis‿contracts‿is_ice |
void * ellipsis‿alloc‿flex_core_s‿_Inner | ( | signed long long | len, |
size_t | size_base, | ||
ellipsis‿init‿flex | type, | ||
size_t | off_len, | ||
size_t | size_dat, | ||
size_t | off_dat, | ||
unsigned char const | base_init[restrict static 1], | ||
unsigned char const | dat_init[restrict static 1] | ||
) |
References ellipsis‿alloc‿flex_core_u.
Referenced by ellipsis‿alloc‿flex_core_s‿_Ctra().
|
inline |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
end inner defer anchor, level 1
References ellipsis‿alloc‿flex_core_s‿_Ctra(), and ellipsis‿alloc‿flex_core_s‿_Insta().
Referenced by ellipsis‿alloc‿flex_core_s‿_Insta(), and ellipsis‿alloc‿flex_core_s().
void * ellipsis‿alloc‿flex_core_u‿_Inner | ( | unsigned long long | len, |
size_t | size_base, | ||
ellipsis‿init‿flex | type, | ||
size_t | off_len, | ||
size_t | size_dat, | ||
size_t | off_dat, | ||
unsigned char const | base_init[restrict static 1], | ||
unsigned char const | dat_init[restrict static 1] | ||
) |
References ALLOC_ASSIGN_BREAK, ellipsis‿init‿repeat(), and ellipsis‿malloc.
Referenced by ellipsis‿alloc‿flex_core_u‿_Ctra().
|
inline |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
end inner defer anchor, level 1
References ellipsis‿alloc‿flex_core_u‿_Ctra(), and ellipsis‿alloc‿flex_core_u‿_Insta().
Referenced by ellipsis‿alloc‿flex_core_u‿_Insta(), and ellipsis‿alloc‿flex_core_u().
void * ellipsis‿init‿flex_core_s‿_Inner | ( | signed long long | len, |
size_t | size_base, | ||
ellipsis‿init‿flex | type, | ||
size_t | off_len, | ||
size_t | size_dat, | ||
size_t | off_dat, | ||
unsigned char | ret[restrict static(off_dat+len *size_dat)], | ||
unsigned char const | base_init[restrict static 1], | ||
unsigned char const | dat_init[restrict static 1] | ||
) |
References ellipsis‿init‿flex_core_u().
Referenced by ellipsis‿init‿flex_core_s‿_Ctra().
|
inline |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
end inner defer anchor, level 1
References ellipsis‿init‿flex_core_s‿_Ctra(), and ellipsis‿init‿flex_core_s‿_Insta().
Referenced by ellipsis‿init‿flex_core_s‿_Insta(), and ellipsis‿init‿flex_core_s().
void * ellipsis‿init‿flex_core_u‿_Inner | ( | unsigned long long | len, |
size_t | size_base, | ||
ellipsis‿init‿flex | type, | ||
size_t | off_len, | ||
size_t | size_dat, | ||
size_t | off_dat, | ||
unsigned char | ret[restrict static(off_dat+len *size_dat)], | ||
unsigned char const | base_init[restrict static 1], | ||
unsigned char const | dat_init[restrict static 1] | ||
) |
References ALLOC_ASSIGN_BREAK, and ellipsis‿init‿repeat().
Referenced by ellipsis‿init‿flex_core_u‿_Ctra().
|
inline |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
end inner defer anchor, level 1
References ellipsis‿init‿flex_core_u‿_Ctra(), and ellipsis‿init‿flex_core_u‿_Insta().
Referenced by ellipsis‿init‿flex_core_u‿_Insta(), and ellipsis‿init‿flex_core_u().
void *() ellipsis‿init‿obfuscate | ( | void * | p | ) |
void ellipsis‿init‿repeat‿_Inner | ( | size_t | n, |
unsigned char const | sample[restrict static n], | ||
size_t | m, | ||
unsigned char | buffer[restrict static m] | ||
) |
|
inline |
References ellipsis‿init‿repeat‿_Ctra(), and ellipsis‿init‿repeat‿_Insta().
Referenced by ellipsis‿init‿repeat‿_Insta(), and ellipsis‿init‿repeat().
void * ellipsis‿realloc‿flex_core_s‿_Inner | ( | signed long long | len, |
void * | ostart_, | ||
size_t | size_base, | ||
ellipsis‿init‿flex | type, | ||
size_t | off_len, | ||
size_t | size_dat, | ||
size_t | off_dat, | ||
unsigned char const | ini[restrict static 1] | ||
) |
References ellipsis‿realloc‿flex_core_u.
Referenced by ellipsis‿realloc‿flex_core_s‿_Ctra().
|
inline |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
end inner defer anchor, level 1
References ellipsis‿realloc‿flex_core_s‿_Ctra(), and ellipsis‿realloc‿flex_core_s‿_Insta().
Referenced by ellipsis‿realloc‿flex_core_s‿_Insta(), and ellipsis‿realloc‿flex_core_s().
void * ellipsis‿realloc‿flex_core_u‿_Inner | ( | unsigned long long | len, |
void * | ostart_, | ||
size_t | size_base, | ||
ellipsis‿init‿flex | type, | ||
size_t | off_len, | ||
size_t | size_dat, | ||
size_t | off_dat, | ||
unsigned char const | ini[restrict static 1] | ||
) |
References ALLOC_ASSIGN_BREAK, ALLOC_RETRIEVE_BREAK, ellipsis‿init‿repeat(), and ellipsis‿realloc.
Referenced by ellipsis‿realloc‿flex_core_u‿_Ctra().
|
inline |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
end inner defer anchor, level 1
References ellipsis‿realloc‿flex_core_u‿_Ctra(), and ellipsis‿realloc‿flex_core_u‿_Insta().
Referenced by ellipsis‿realloc‿flex_core_u‿_Insta(), and ellipsis‿realloc‿flex_core_u().
ellipsis‿alloc‿flex_core_s ellipsis‿alloc‿flex_core_s |
Referenced by ellipsis‿alloc‿flex_core_s().
ellipsis‿alloc‿flex_core_u ellipsis‿alloc‿flex_core_u |
Referenced by ellipsis‿alloc‿flex_core_s‿_Inner(), and ellipsis‿alloc‿flex_core_u().
|
extern |
|
extern |
|
extern |
ellipsis‿realloc‿flex_core_s ellipsis‿realloc‿flex_core_s |
Referenced by ellipsis‿realloc‿flex_core_s().
ellipsis‿realloc‿flex_core_u ellipsis‿realloc‿flex_core_u |
Referenced by ellipsis‿realloc‿flex_core_s‿_Inner(), and ellipsis‿realloc‿flex_core_u().