added type variations of min max functions

This commit is contained in:
DaniTheSkunk 2023-03-19 06:15:48 +00:00
parent b30e3e78c9
commit 5a14b18d2c
2 changed files with 77 additions and 0 deletions

View File

@ -16,12 +16,33 @@ typedef i8 bool;
#define true 1
#define false 0
i64 i64_max(i64 v1, i64 v2);
i64 i64_min(i64 v1, i64 v2);
u64 u64_max(u64 v1, u64 v2);
u64 u64_min(u64 v1, u64 v2);
i32 i32_max(i32 v1, i32 v2);
i32 i32_min(i32 v1, i32 v2);
u32 u32_max(u32 v1, u32 v2);
u32 u32_min(u32 v1, u32 v2);
i16 i16_max(i16 v1, i16 v2);
i16 i16_min(i16 v1, i16 v2);
u16 u16_max(u16 v1, u16 v2);
u16 u16_min(u16 v1, u16 v2);
i8 i8_max(i8 v1, i8 v2);
i8 i8_min(i8 v1, i8 v2);
u8 u8_max(u8 v1, u8 v2);
u8 u8_min(u8 v1, u8 v2);
f64 f64_max(f64 v1, f64 v2);
f64 f64_min(f64 v1, f64 v2);
f32 f32_max(f32 v1, f32 v2);
f32 f32_min(f32 v1, f32 v2);

View File

@ -1,5 +1,21 @@
#include "types.h"
i64 i64_max(i64 v1, i64 v2) {
return v1 > v2 ? v1 : v2;
}
i64 i64_min(i64 v1, i64 v2) {
return v1 < v2 ? v1 : v2;
}
u64 u64_max(u64 v1, u64 v2) {
return v1 > v2 ? v1 : v2;
}
u64 u64_min(u64 v1, u64 v2) {
return v1 < v2 ? v1 : v2;
}
i32 i32_max(i32 v1, i32 v2) {
return v1 > v2 ? v1 : v2;
}
@ -16,6 +32,46 @@ u32 u32_min(u32 v1, u32 v2) {
return v1 < v2 ? v1 : v2;
}
i16 i16_max(i16 v1, i16 v2) {
return v1 > v2 ? v1 : v2;
}
i16 i16_min(i16 v1, i16 v2) {
return v1 < v2 ? v1 : v2;
}
u16 u16_max(u16 v1, u16 v2) {
return v1 > v2 ? v1 : v2;
}
u16 u16_min(u16 v1, u16 v2) {
return v1 < v2 ? v1 : v2;
}
i8 i8_max(i8 v1, i8 v2) {
return v1 > v2 ? v1 : v2;
}
i8 i8_min(i8 v1, i8 v2) {
return v1 < v2 ? v1 : v2;
}
u8 u8_max(u8 v1, u8 v2) {
return v1 > v2 ? v1 : v2;
}
u8 u8_min(u8 v1, u8 v2) {
return v1 < v2 ? v1 : v2;
}
f64 f64_max(f64 v1, f64 v2) {
return v1 > v2 ? v1 : v2;
}
f64 f64_min(f64 v1, f64 v2) {
return v1 < v2 ? v1 : v2;
}
f32 f32_max(f32 v1, f32 v2) {
return v1 > v2 ? v1 : v2;
}