Merge pull request #2279 from SparkiDev/test_fix

Fix for small stack in test.c
This commit is contained in:
toddouska
2019-06-17 13:36:03 -07:00
committed by GitHub
2 changed files with 17 additions and 13 deletions

View File

@ -22,9 +22,9 @@
#ifndef HAVE_INTEL_AVX1 #ifndef HAVE_INTEL_AVX1
#define HAVE_INTEL_AVX1 #define HAVE_INTEL_AVX1
#endif /* HAVE_INTEL_AVX1 */ #endif /* HAVE_INTEL_AVX1 */
#ifndef HAVE_INTEL_AVX2 #ifndef NO_AVX2_SUPPORT
#define HAVE_INTEL_AVX2 #define HAVE_INTEL_AVX2
#endif /* HAVE_INTEL_AVX2 */ #endif /* NO_AVX2_SUPPORT */
#ifndef __APPLE__ #ifndef __APPLE__
.text .text
@ -1293,7 +1293,7 @@ L_chacha20_avx2_loop256:
vperm2i128 $32, %ymm1, %ymm0, %ymm8 vperm2i128 $32, %ymm1, %ymm0, %ymm8
vperm2i128 $32, %ymm3, %ymm2, %ymm9 vperm2i128 $32, %ymm3, %ymm2, %ymm9
vperm2i128 $49, %ymm1, %ymm0, %ymm12 vperm2i128 $49, %ymm1, %ymm0, %ymm12
vperm2i128 $49, %ymm3, %ymm2, %ymm14 vperm2i128 $49, %ymm3, %ymm2, %ymm13
vperm2i128 $32, %ymm5, %ymm4, %ymm10 vperm2i128 $32, %ymm5, %ymm4, %ymm10
vperm2i128 $32, %ymm7, %ymm6, %ymm11 vperm2i128 $32, %ymm7, %ymm6, %ymm11
vperm2i128 $49, %ymm5, %ymm4, %ymm14 vperm2i128 $49, %ymm5, %ymm4, %ymm14
@ -1349,7 +1349,7 @@ L_chacha20_avx2_loop256:
vperm2i128 $32, %ymm1, %ymm0, %ymm8 vperm2i128 $32, %ymm1, %ymm0, %ymm8
vperm2i128 $32, %ymm3, %ymm2, %ymm9 vperm2i128 $32, %ymm3, %ymm2, %ymm9
vperm2i128 $49, %ymm1, %ymm0, %ymm12 vperm2i128 $49, %ymm1, %ymm0, %ymm12
vperm2i128 $49, %ymm3, %ymm2, %ymm14 vperm2i128 $49, %ymm3, %ymm2, %ymm13
vperm2i128 $32, %ymm5, %ymm4, %ymm10 vperm2i128 $32, %ymm5, %ymm4, %ymm10
vperm2i128 $32, %ymm7, %ymm6, %ymm11 vperm2i128 $32, %ymm7, %ymm6, %ymm11
vperm2i128 $49, %ymm5, %ymm4, %ymm14 vperm2i128 $49, %ymm5, %ymm4, %ymm14

View File

@ -4510,21 +4510,24 @@ int chacha_test(void)
#ifndef BENCH_EMBEDDED #ifndef BENCH_EMBEDDED
#ifdef WOLFSSL_SMALL_STACK #ifdef WOLFSSL_SMALL_STACK
cipher_big = (byte*)XMALLOC(CHACHA_BIG_TEST_SIZE, NULL, DYNAMIC_TYPE_TMP_BUFFER); cipher_big = (byte*)XMALLOC(CHACHA_BIG_TEST_SIZE, NULL,
DYNAMIC_TYPE_TMP_BUFFER);
if (cipher_big == NULL) { if (cipher_big == NULL) {
return MEMORY_E; return MEMORY_E;
} }
plain_big = (byte*)XMALLOC(CHACHA_BIG_TEST_SIZE, NULL, DYNAMIC_TYPE_TMP_BUFFER); plain_big = (byte*)XMALLOC(CHACHA_BIG_TEST_SIZE, NULL,
DYNAMIC_TYPE_TMP_BUFFER);
if (plain_big == NULL) { if (plain_big == NULL) {
return MEMORY_E; return MEMORY_E;
} }
input_big = (byte*)XMALLOC(CHACHA_BIG_TEST_SIZE, NULL, DYNAMIC_TYPE_TMP_BUFFER); input_big = (byte*)XMALLOC(CHACHA_BIG_TEST_SIZE, NULL,
DYNAMIC_TYPE_TMP_BUFFER);
if (input_big == NULL) { if (input_big == NULL) {
return MEMORY_E; return MEMORY_E;
} }
XMEMSET(cipher_big, 0, sizeof(CHACHA_BIG_TEST_SIZE)); XMEMSET(cipher_big, 0, CHACHA_BIG_TEST_SIZE);
XMEMSET(plain_big, 0, sizeof(CHACHA_BIG_TEST_SIZE)); XMEMSET(plain_big, 0, CHACHA_BIG_TEST_SIZE);
XMEMSET(input_big, 0, sizeof(CHACHA_BIG_TEST_SIZE)); XMEMSET(input_big, 0, CHACHA_BIG_TEST_SIZE);
#endif /* WOLFSSL_SMALL_STACK */ #endif /* WOLFSSL_SMALL_STACK */
#endif /* BENCH_EMBEDDED */ #endif /* BENCH_EMBEDDED */
@ -4602,12 +4605,13 @@ int chacha_test(void)
if (ret != 0) if (ret != 0)
return ret; return ret;
ret |= wc_Chacha_Process(&enc, cipher_big, plain_big, CHACHA_BIG_TEST_SIZE); ret |= wc_Chacha_Process(&enc, cipher_big, plain_big, CHACHA_BIG_TEST_SIZE);
ret |= wc_Chacha_Process(&dec, plain_big, cipher_big, CHACHA_BIG_TEST_SIZE); ret |= wc_Chacha_Process(&dec, plain_big, cipher_big,
CHACHA_BIG_TEST_SIZE);
if (ret != 0) if (ret != 0)
return ret; return ret;
if (XMEMCMP(plain_big, input_big, sizeof(input_big))) if (XMEMCMP(plain_big, input_big, CHACHA_BIG_TEST_SIZE))
return -4330; return -4330;
if (XMEMCMP(cipher_big, cipher_big_result, CHACHA_BIG_TEST_SIZE)) if (XMEMCMP(cipher_big, cipher_big_result, CHACHA_BIG_TEST_SIZE))