mirror of
https://github.com/thepigeongenerator/mcaselector-lite.git
synced 2025-12-19 07:45:44 +01:00
24 lines
900 B
C
24 lines
900 B
C
/* This file is part of MCA-Selector-lite,
|
|
* and is licensed under GPL-2.0-only.
|
|
* Copyright (C)2025 quinnthepigeon@proton.me Quinn
|
|
* For further information, view COPYING and CONTRIBUTORS
|
|
* at: www.github.com/thepigeongenerator/mcaselector-lite */
|
|
#pragma once
|
|
|
|
#include "../types.h"
|
|
|
|
#if defined(__has_attribute) && __has_attribute(vector_size)
|
|
typedef float fvec2 __attribute__((vector_size(sizeof(float) * 2))); // SMID vector for 2 `float`
|
|
typedef float fvec4 __attribute__((vector_size(sizeof(float) * 4))); // SMID vector for 4 `float`
|
|
|
|
typedef u8 u8vec2 __attribute__((vector_size(sizeof(u8) * 2))); // SMID vector for 2 `u8`
|
|
typedef u8 u8vec4 __attribute__((vector_size(sizeof(u8) * 4))); // SMID vector for 4 `u8`
|
|
#else
|
|
#error the platform is unsupported, attribute vector_size must be available (and so does __has_attribute)
|
|
#endif
|
|
|
|
#define VX 0
|
|
#define VY 1
|
|
#define VZ 2
|
|
#define VW 3
|