2017-09-27 02:35:56 +03:00
|
|
|
#ifndef INDEX_HEAP_H
|
|
|
|
#define INDEX_HEAP_H
|
|
|
|
|
|
|
|
#include "sc25519.h"
|
2022-05-31 01:41:03 +03:00
|
|
|
#include "compat.h"
|
2017-09-27 02:35:56 +03:00
|
|
|
|
2022-05-05 13:22:34 +00:00
|
|
|
#define heap_init CRYPTO_NAMESPACE(batch_heap_init)
|
|
|
|
#define heap_extend CRYPTO_NAMESPACE(batch_heap_extend)
|
|
|
|
#define heap_pop CRYPTO_NAMESPACE(batch_heap_pop)
|
|
|
|
#define heap_push CRYPTO_NAMESPACE(batch_heap_push)
|
|
|
|
#define heap_get2max CRYPTO_NAMESPACE(batch_heap_get2max)
|
|
|
|
#define heap_rootreplaced CRYPTO_NAMESPACE(batch_heap_rootreplaced)
|
|
|
|
#define heap_rootreplaced_3limbs CRYPTO_NAMESPACE(batch_heap_rootreplaced_3limbs)
|
|
|
|
#define heap_rootreplaced_2limbs CRYPTO_NAMESPACE(batch_heap_rootreplaced_2limbs)
|
|
|
|
#define heap_rootreplaced_1limb CRYPTO_NAMESPACE(batch_heap_rootreplaced_1limb)
|
2017-09-27 02:35:56 +03:00
|
|
|
|
|
|
|
void heap_init(unsigned long long *h, unsigned long long hlen, sc25519 *scalars);
|
|
|
|
|
|
|
|
void heap_extend(unsigned long long *h, unsigned long long oldlen, unsigned long long newlen, sc25519 *scalars);
|
|
|
|
|
|
|
|
unsigned long long heap_pop(unsigned long long *h, unsigned long long *hlen, sc25519 *scalars);
|
|
|
|
|
|
|
|
void heap_push(unsigned long long *h, unsigned long long *hlen, unsigned long long elem, sc25519 *scalars);
|
|
|
|
|
|
|
|
void heap_get2max(unsigned long long *h, unsigned long long *max1, unsigned long long *max2, sc25519 *scalars);
|
|
|
|
|
2022-05-31 01:41:03 +03:00
|
|
|
void heap_rootreplaced(unsigned long long *h, unsigned long long hlen, sc25519 *scalars) SYSVABI;
|
|
|
|
void heap_rootreplaced_3limbs(unsigned long long *h, unsigned long long hlen, sc25519 *scalars) SYSVABI;
|
|
|
|
void heap_rootreplaced_2limbs(unsigned long long *h, unsigned long long hlen, sc25519 *scalars) SYSVABI;
|
|
|
|
void heap_rootreplaced_1limb(unsigned long long *h, unsigned long long hlen, sc25519 *scalars) SYSVABI;
|
2017-09-27 02:35:56 +03:00
|
|
|
|
|
|
|
#endif
|