aboutsummaryrefslogtreecommitdiffstats
path: root/test/monniaux/sha-2
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-01-22 19:54:53 +0100
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-01-22 19:54:53 +0100
commit1451c1269ec670e068ac0a4c083b116e35ae2bea (patch)
tree1195e551554e7726a5090212a2905a80acc039ea /test/monniaux/sha-2
parent0511adf1024647271e230ca13c6f8801d0313efd (diff)
downloadcompcert-kvx-1451c1269ec670e068ac0a4c083b116e35ae2bea.tar.gz
compcert-kvx-1451c1269ec670e068ac0a4c083b116e35ae2bea.zip
correct measurement
Diffstat (limited to 'test/monniaux/sha-2')
-rw-r--r--test/monniaux/sha-2/sha-256_run.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/test/monniaux/sha-2/sha-256_run.c b/test/monniaux/sha-2/sha-256_run.c
index 6017712c..546b7dbc 100644
--- a/test/monniaux/sha-2/sha-256_run.c
+++ b/test/monniaux/sha-2/sha-256_run.c
@@ -44,6 +44,7 @@ static const struct string_vector STRING_VECTORS[] = {
};
#define LARGE_MESSAGES 0
+#define LARGER_MESSAGES 0
static uint8_t data1[] = { 0xbd };
static uint8_t data2[] = { 0xc9, 0x8c, 0x8e, 0x55 };
@@ -110,14 +111,14 @@ static struct vector vectors[] = {
data9,
sizeof data9,
"f4d62ddec0f3dd90ea1380fa16a5ff8dc4c54b21740650f24afc4120903552b0"
- }
+ },
#if LARGE_MESSAGES
- ,
{
NULL,
1000000,
"d29751f2649b32ff572b5e0a9f541ea660a50f94ff0beedfb0b692b924cc8025"
},
+#if LARGER_MESSAGES
{
NULL,
SIZEOF_DATA11,
@@ -134,6 +135,7 @@ static struct vector vectors[] = {
"c23ce8a7895f4b21ec0daf37920ac0a262a220045a03eb2dfed48ef9b05aabea"
}
#endif
+#endif
};
#if LARGE_MESSAGES
@@ -153,6 +155,7 @@ static void construct_binary_messages(void)
memset(data8, 0x41, sizeof data8);
memset(data9, 0x55, sizeof data9);
#if LARGE_MESSAGES
+#if LARGER_MESSAGES
/*
* Heap allocation as a workaround for some linkers not liking
* large BSS segments.
@@ -167,15 +170,23 @@ static void construct_binary_messages(void)
vectors[10].input = data11;
vectors[11].input = data12;
vectors[12].input = data13;
+#else
+ vectors[9].input = data12 = my_malloc(vectors[9].input_len);
+ memset(data12, 0x00, vectors[9].input_len);
+#endif
#endif
}
static void destruct_binary_messages(void)
{
#if LARGE_MESSAGES
+#if LARGER_MESSAGES
free(data11);
free(data12);
free(data13);
+#else
+ free(data12);
+#endif
#endif
}
@@ -229,7 +240,11 @@ static int test(const uint8_t * input, size_t input_len, const char output[])
{
uint8_t hash[32];
char hash_string[65];
+
+ cycle_count_start();
calc_sha_256(hash, input, input_len);
+ cycle_count_end();
+
hash_to_string(hash_string, hash);
printf("input starts with 0x%02x, length %lu\n", *input, (unsigned long) input_len);
printf("hash : %s\n", hash_string);