From 16fde28a8b3cd3ab0c41581c342cd462bc07b1b4 Mon Sep 17 00:00:00 2001 From: PoliEcho Date: Fri, 25 Sep 2026 13:02:22 +0200 Subject: [PATCH] more limits --- kernel/include/limits.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/kernel/include/limits.h b/kernel/include/limits.h index a1420e8..9156e0e 100644 --- a/kernel/include/limits.h +++ b/kernel/include/limits.h @@ -2,4 +2,29 @@ #define _LIMIT_H #define CHAR_BIT 8 +#define INT8_WIDTH 8 +#define INT16_WIDTH 16 +#define INT32_WIDTH 32 +#define INT64_WIDTH 64 + +#define UINT8_WIDTH 8 +#define UINT16_WIDTH 16 +#define UINT32_WIDTH 32 +#define UINT64_WIDTH 64 + +#define INT8_MAX 2 * *(INT8_WIDTH - 1) - 1 +#define INT16_MAX 2 * *(INT16_WIDTH - 1) - 1 +#define INT32_MAX 2 * *(INT32_WIDTH - 1) - 1 +#define INT64_MAX 2 * *(INT64_WIDTH - 1) - 1 + +#define INT8_MIN -2 * *(INT8_WIDTH - 1) +#define INT16_MIN -2 * *(INT16_WIDTH - 1) +#define INT32_MIN -2 * *(INT32_WIDTH - 1) +#define INT64_MIN -2 * *(INT64_WIDTH - 1) + +#define UINT8_MAX 2 * *INT8_WIDTH - 1 +#define UINT16_MAX 2 * *INT16_WIDTH - 1 +#define UINT32_MAX 2 * *INT32_WIDTH - 1 +#define UINT64_MAX 2 * *INT64_WIDTH - 1 + #endif