dist/include/ contains the MLX and MLX-C headers needed for CGo compilation. Without these, go-mlx cannot be used as a module dependency (headers not found in module cache). Libraries (dylib/metallib) are still gitignored — users build those locally via cmake. Co-Authored-By: Virgil <virgil@lethean.io>
26 lines
440 B
C
26 lines
440 B
C
/* Copyright © 2023-2024 Apple Inc. */
|
|
|
|
#ifndef MLX_HALF_H
|
|
#define MLX_HALF_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#if defined(__ARM_FEATURE_FP16_SCALAR_ARITHMETIC) || defined(__aarch64__)
|
|
#define HAS_FLOAT16
|
|
#include <arm_fp16.h>
|
|
typedef __fp16 float16_t;
|
|
#endif
|
|
|
|
#if defined(__ARM_FEATURE_BF16) || defined(__aarch64__)
|
|
#define HAS_BFLOAT16
|
|
#include <arm_bf16.h>
|
|
typedef __bf16 bfloat16_t;
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|