Add wasm tacle-bench targets
This commit is contained in:
@ -0,0 +1,64 @@
|
||||
/*
|
||||
|
||||
This program is part of the TACLeBench benchmark suite.
|
||||
Version V 1.x
|
||||
|
||||
Name: sha.h
|
||||
|
||||
Author: Peter C. Gutmann's (heavily modified by Uwe Hollerbach)
|
||||
|
||||
NIST Secure Hash Algorithm
|
||||
|
||||
Source: Peter C. Gutmann's implementation as found in Applied Cryptography by
|
||||
Bruce Schneier
|
||||
|
||||
Changes: no major functional changes
|
||||
|
||||
License: May be used, modified, and re-distributed freely.
|
||||
*/
|
||||
|
||||
#ifndef SHA_H
|
||||
#define SHA_H
|
||||
|
||||
/* Useful defines & typedefs */
|
||||
|
||||
typedef unsigned char BYTE;
|
||||
typedef unsigned long LONG;
|
||||
typedef unsigned size_t;
|
||||
|
||||
/* Type to use for unaligned operations. */
|
||||
#define SHA_BLOCKSIZE 64
|
||||
#define SHA_DIGESTSIZE 20
|
||||
#define LITTLE_ENDIAN
|
||||
#define NULL ((void *) 0)
|
||||
|
||||
extern unsigned volatile char sha_data[32743];
|
||||
|
||||
struct SHA_MY_FILE {
|
||||
unsigned volatile char *data;
|
||||
size_t size;
|
||||
unsigned cur_pos;
|
||||
};
|
||||
|
||||
struct SHA_INFO {
|
||||
LONG digest[5]; /* message digest */
|
||||
LONG count_lo, count_hi; /* 64-bit bit count */
|
||||
LONG data[16]; /* SHA data buffer */
|
||||
};
|
||||
|
||||
/*
|
||||
Forward declaration of functions
|
||||
*/
|
||||
void sha_transform(struct SHA_INFO *);
|
||||
void sha_byte_reverse(LONG *buffer, int count);
|
||||
void sha_init(void);
|
||||
size_t sha_fread(void *, size_t, size_t, struct SHA_MY_FILE *);
|
||||
void sha_update(struct SHA_INFO *, BYTE *, int);
|
||||
void sha_final(struct SHA_INFO *);
|
||||
void sha_stream(struct SHA_INFO *, struct SHA_MY_FILE *);
|
||||
__attribute__((noinline)) __attribute__((export_name("entrypoint"))) void
|
||||
sha_main(void);
|
||||
int sha_return(void);
|
||||
__attribute__((noinline)) __attribute__((export_name("main"))) int main(void);
|
||||
|
||||
#endif // SHA_H
|
||||
Reference in New Issue
Block a user