Fix Clang support

The amalgamated release is now confirmed to be working with Clang,
including its integrated assembler.

Fixes #41
This commit is contained in:
Justine Tunney 2021-02-06 00:24:35 -08:00
parent e06c90fafc
commit d7733579d3
103 changed files with 384 additions and 359 deletions

View file

@ -20,7 +20,7 @@
#include "libc/crypto/rijndael.h"
#include "libc/nexgen32e/x86feature.h"
forceinline aes_block_t rijndael$westmere(uint32_t n, aes_block_t x,
forceinline aes_block_t rijndael_westmere(uint32_t n, aes_block_t x,
const struct Rijndael *ctx) {
uint32_t i;
x ^= ctx->rk[0].xmm;
@ -31,7 +31,7 @@ forceinline aes_block_t rijndael$westmere(uint32_t n, aes_block_t x,
return x;
}
static noinline aes_block_t rijndael$pure(uint32_t n, aes_block_t x,
static noinline aes_block_t rijndael_pure(uint32_t n, aes_block_t x,
const struct Rijndael *ctx) {
uint32_t i, j;
__v16qu b1, b2;
@ -65,8 +65,8 @@ static noinline aes_block_t rijndael$pure(uint32_t n, aes_block_t x,
*/
aes_block_t rijndael(uint32_t n, aes_block_t x, const struct Rijndael *ctx) {
if (X86_HAVE(AES)) {
return rijndael$westmere(n, x, ctx);
return rijndael_westmere(n, x, ctx);
} else {
return rijndael$pure(n, x, ctx);
return rijndael_pure(n, x, ctx);
}
}

View file

@ -20,7 +20,7 @@
#include "libc/crypto/rijndael.h"
#include "libc/nexgen32e/x86feature.h"
forceinline aes_block_t unrijndael$westmere(uint32_t n, aes_block_t x,
forceinline aes_block_t unrijndael_westmere(uint32_t n, aes_block_t x,
const struct Rijndael *ctx) {
x ^= ctx->rk[n--].xmm;
do {
@ -30,7 +30,7 @@ forceinline aes_block_t unrijndael$westmere(uint32_t n, aes_block_t x,
return x;
}
static noinline aes_block_t unrijndael$pure(uint32_t n, aes_block_t x,
static noinline aes_block_t unrijndael_pure(uint32_t n, aes_block_t x,
const struct Rijndael *ctx) {
uint32_t j;
__v16qu b1, b2;
@ -57,8 +57,8 @@ static noinline aes_block_t unrijndael$pure(uint32_t n, aes_block_t x,
*/
aes_block_t unrijndael(uint32_t n, aes_block_t x, const struct Rijndael *ctx) {
if (X86_HAVE(AES)) {
return unrijndael$westmere(n, x, ctx);
return unrijndael_westmere(n, x, ctx);
} else {
return unrijndael$pure(n, x, ctx);
return unrijndael_pure(n, x, ctx);
}
}

View file

@ -21,7 +21,7 @@
#include "libc/crypto/rijndael.h"
#include "libc/nexgen32e/x86feature.h"
static void unrijndaelinit$westmere(struct Rijndael *ctx, uint32_t n,
static void unrijndaelinit_westmere(struct Rijndael *ctx, uint32_t n,
aes_block_t k1, aes_block_t k2) {
uint32_t i;
aes_block_t x;
@ -36,7 +36,7 @@ static void unrijndaelinit$westmere(struct Rijndael *ctx, uint32_t n,
XMM_DESTROY(x);
}
static relegated noinline void unrijndaelinit$pure(struct Rijndael *ctx,
static relegated noinline void unrijndaelinit_pure(struct Rijndael *ctx,
uint32_t n, aes_block_t k1,
aes_block_t k2) {
uint32_t i;
@ -62,8 +62,8 @@ static relegated noinline void unrijndaelinit$pure(struct Rijndael *ctx,
void unrijndaelinit(struct Rijndael *ctx, uint32_t n, aes_block_t k1,
aes_block_t k2) {
if (X86_HAVE(AES)) {
return unrijndaelinit$westmere(ctx, n, k1, k2);
return unrijndaelinit_westmere(ctx, n, k1, k2);
} else {
return unrijndaelinit$pure(ctx, n, k1, k2);
return unrijndaelinit_pure(ctx, n, k1, k2);
}
}