ocamlPackages.hacl-star-raw: use _mm_malloc on darwin

This commit is contained in:
Weijia Wang 2023-05-05 16:02:28 +03:00
parent 360ab51ee7
commit 093fcd1629
2 changed files with 18 additions and 0 deletions

View file

@ -0,0 +1,14 @@
diff --git a/hacl-star-raw/karamel/include/krml/internal/target.h b/hacl-star-raw/karamel/include/krml/internal/target.h
index 695873a..c0aed18 100644
--- a/hacl-star-raw/karamel/include/krml/internal/target.h
+++ b/hacl-star-raw/karamel/include/krml/internal/target.h
@@ -82,6 +82,9 @@
# endif
# if (defined(_MSC_VER) || (defined(__MINGW32__) && defined(__MINGW64_VERSION_MAJOR)))
# define KRML_ALIGNED_MALLOC(X, Y) _aligned_malloc(Y, X)
+# elif defined(__APPLE__)
+# include <mm_malloc.h>
+# define KRML_ALIGNED_MALLOC(X, Y) _mm_malloc(Y, X)
# else
# define KRML_ALIGNED_MALLOC(X, Y) aligned_alloc(X, Y)
# endif

View file

@ -20,6 +20,10 @@ stdenv.mkDerivation rec {
stripRoot = false;
};
patches = [
./aligned-alloc.patch
];
minimalOCamlVersion = "4.08";
# strictoverflow is disabled because it breaks aarch64-darwin