mirror of
https://github.com/ClassiCube/ClassiCube.git
synced 2025-09-09 15:28:21 -04:00
Fix crashing on some 32 bit x86 systems
This commit is contained in:
parent
f4cf292899
commit
0d4b271fed
4
third_party/bearssl/aes_x86ni.c
vendored
4
third_party/bearssl/aes_x86ni.c
vendored
@ -205,7 +205,7 @@ x86ni_keysched(__m128i *sk, const void *key, size_t len)
|
||||
}
|
||||
|
||||
/* see inner.h */
|
||||
BR_TARGET("sse2,aes")
|
||||
BR_TARGET("sse2,aes") BR_SSE_FUNCTION
|
||||
unsigned
|
||||
br_aes_x86ni_keysched_enc(unsigned char *skni, const void *key, size_t len)
|
||||
{
|
||||
@ -218,7 +218,7 @@ br_aes_x86ni_keysched_enc(unsigned char *skni, const void *key, size_t len)
|
||||
}
|
||||
|
||||
/* see inner.h */
|
||||
BR_TARGET("sse2,aes")
|
||||
BR_TARGET("sse2,aes") BR_SSE_FUNCTION
|
||||
unsigned
|
||||
br_aes_x86ni_keysched_dec(unsigned char *skni, const void *key, size_t len)
|
||||
{
|
||||
|
2
third_party/bearssl/aes_x86ni_cbcdec.c
vendored
2
third_party/bearssl/aes_x86ni_cbcdec.c
vendored
@ -46,7 +46,7 @@ br_aes_x86ni_cbcdec_init(br_aes_x86ni_cbcdec_keys *ctx,
|
||||
BR_TARGETS_X86_UP
|
||||
|
||||
/* see bearssl_block.h */
|
||||
BR_TARGET("sse2,aes")
|
||||
BR_TARGET("sse2,aes") BR_SSE_FUNCTION
|
||||
void
|
||||
br_aes_x86ni_cbcdec_run(const br_aes_x86ni_cbcdec_keys *ctx,
|
||||
void *iv, void *data, size_t len)
|
||||
|
2
third_party/bearssl/aes_x86ni_cbcenc.c
vendored
2
third_party/bearssl/aes_x86ni_cbcenc.c
vendored
@ -46,7 +46,7 @@ br_aes_x86ni_cbcenc_init(br_aes_x86ni_cbcenc_keys *ctx,
|
||||
BR_TARGETS_X86_UP
|
||||
|
||||
/* see bearssl_block.h */
|
||||
BR_TARGET("sse2,aes")
|
||||
BR_TARGET("sse2,aes") BR_SSE_FUNCTION
|
||||
void
|
||||
br_aes_x86ni_cbcenc_run(const br_aes_x86ni_cbcenc_keys *ctx,
|
||||
void *iv, void *data, size_t len)
|
||||
|
2
third_party/bearssl/aes_x86ni_ctr.c
vendored
2
third_party/bearssl/aes_x86ni_ctr.c
vendored
@ -46,7 +46,7 @@ br_aes_x86ni_ctr_init(br_aes_x86ni_ctr_keys *ctx,
|
||||
BR_TARGETS_X86_UP
|
||||
|
||||
/* see bearssl_block.h */
|
||||
BR_TARGET("sse2,sse4.1,aes")
|
||||
BR_TARGET("sse2,sse4.1,aes") BR_SSE_FUNCTION
|
||||
uint32_t
|
||||
br_aes_x86ni_ctr_run(const br_aes_x86ni_ctr_keys *ctx,
|
||||
const void *iv, uint32_t cc, void *data, size_t len)
|
||||
|
8
third_party/bearssl/aes_x86ni_ctrcbc.c
vendored
8
third_party/bearssl/aes_x86ni_ctrcbc.c
vendored
@ -46,7 +46,7 @@ br_aes_x86ni_ctrcbc_init(br_aes_x86ni_ctrcbc_keys *ctx,
|
||||
BR_TARGETS_X86_UP
|
||||
|
||||
/* see bearssl_block.h */
|
||||
BR_TARGET("sse2,sse4.1,aes")
|
||||
BR_TARGET("sse2,sse4.1,aes") BR_SSE_FUNCTION
|
||||
void
|
||||
br_aes_x86ni_ctrcbc_ctr(const br_aes_x86ni_ctrcbc_keys *ctx,
|
||||
void *ctr, void *data, size_t len)
|
||||
@ -252,7 +252,7 @@ br_aes_x86ni_ctrcbc_ctr(const br_aes_x86ni_ctrcbc_keys *ctx,
|
||||
}
|
||||
|
||||
/* see bearssl_block.h */
|
||||
BR_TARGET("sse2,sse4.1,aes")
|
||||
BR_TARGET("sse2,sse4.1,aes") BR_SSE_FUNCTION
|
||||
void
|
||||
br_aes_x86ni_ctrcbc_mac(const br_aes_x86ni_ctrcbc_keys *ctx,
|
||||
void *cbcmac, const void *data, size_t len)
|
||||
@ -303,7 +303,7 @@ br_aes_x86ni_ctrcbc_mac(const br_aes_x86ni_ctrcbc_keys *ctx,
|
||||
}
|
||||
|
||||
/* see bearssl_block.h */
|
||||
BR_TARGET("sse2,sse4.1,aes")
|
||||
BR_TARGET("sse2,sse4.1,aes") BR_SSE_FUNCTION
|
||||
void
|
||||
br_aes_x86ni_ctrcbc_encrypt(const br_aes_x86ni_ctrcbc_keys *ctx,
|
||||
void *ctr, void *cbcmac, void *data, size_t len)
|
||||
@ -452,7 +452,7 @@ br_aes_x86ni_ctrcbc_encrypt(const br_aes_x86ni_ctrcbc_keys *ctx,
|
||||
}
|
||||
|
||||
/* see bearssl_block.h */
|
||||
BR_TARGET("sse2,sse4.1,aes")
|
||||
BR_TARGET("sse2,sse4.1,aes") BR_SSE_FUNCTION
|
||||
void
|
||||
br_aes_x86ni_ctrcbc_decrypt(const br_aes_x86ni_ctrcbc_keys *ctx,
|
||||
void *ctr, void *cbcmac, void *data, size_t len)
|
||||
|
2
third_party/bearssl/chacha20_sse2.c
vendored
2
third_party/bearssl/chacha20_sse2.c
vendored
@ -60,7 +60,7 @@ br_chacha20_sse2_get(void)
|
||||
BR_TARGETS_X86_UP
|
||||
|
||||
/* see bearssl_block.h */
|
||||
BR_TARGET("sse2")
|
||||
BR_TARGET("sse2") BR_SSE_FUNCTION
|
||||
uint32_t
|
||||
br_chacha20_sse2_run(const void *key,
|
||||
const void *iv, uint32_t cc, void *data, size_t len)
|
||||
|
2
third_party/bearssl/ghash_pclmul.c
vendored
2
third_party/bearssl/ghash_pclmul.c
vendored
@ -228,7 +228,7 @@ pclmulqdq11(__m128i x, __m128i y)
|
||||
} while (0)
|
||||
|
||||
/* see bearssl_hash.h */
|
||||
BR_TARGET("ssse3,pclmul")
|
||||
BR_TARGET("ssse3,pclmul") BR_SSE_FUNCTION
|
||||
void
|
||||
br_ghash_pclmul(void *y, const void *h, const void *data, size_t len)
|
||||
{
|
||||
|
12
third_party/bearssl/inner.h
vendored
12
third_party/bearssl/inner.h
vendored
@ -2400,6 +2400,18 @@ br_cpuid(uint32_t mask_eax, uint32_t mask_ebx,
|
||||
|
||||
#endif
|
||||
|
||||
/* BEG classicube specific */
|
||||
/* Fix issue where 32 bit GCC aligns stack to 4 bytes, but will still
|
||||
/* generate instructions expecting the stack to be _16_ byte aligned */
|
||||
/* https://gcc.gnu.org/onlinedocs/gcc/x86-Function-Attributes.html */
|
||||
/* TODO is this needed for MSVC ? */
|
||||
#if (BR_GCC || BR_CLANG) && BR_i386 && !BR_amd64
|
||||
#define BR_SSE_FUNCTION __attribute__((force_align_arg_pointer))
|
||||
#else
|
||||
#define BR_SSE_FUNCTION
|
||||
#endif
|
||||
/* END classicube specific
|
||||
|
||||
/* ==================================================================== */
|
||||
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user