From 65a8349aa5526d071b18cd4d42586c46faaa3823 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Mon, 24 Nov 2025 02:13:48 +0100 Subject: feat! breaking changes for OCL v1.0.48. Signed-off-by: Amlal El Mahrouss --- dev/lib/simd/basic_simd.hpp | 47 ---------------------------------- dev/lib/simd/simd.hpp | 61 --------------------------------------------- 2 files changed, 108 deletions(-) delete mode 100644 dev/lib/simd/basic_simd.hpp delete mode 100644 dev/lib/simd/simd.hpp (limited to 'dev/lib/simd') diff --git a/dev/lib/simd/basic_simd.hpp b/dev/lib/simd/basic_simd.hpp deleted file mode 100644 index 975ab2b..0000000 --- a/dev/lib/simd/basic_simd.hpp +++ /dev/null @@ -1,47 +0,0 @@ -/* - * File: simd/basic_simd.hpp - * Purpose: Basic SIMD backend C++ library. - * Author: Amlal El Mahrouss (amlal@nekernel.org) - * Copyright 2025, Amlal El Mahrouss, licensed under the BSL 1.0 license. - */ - -#pragma once - -#include - -#ifdef __x86_64__ -#include -using simd_type = __m256; -#endif - -#ifdef __aarch64__ -#include -using simd_type = float32x4_t; -#endif - -namespace ocl::simd -{ - struct basic_simd final - { - struct simd_traits final - { - simd_type __val; - - private: - static bool bad; - friend class basic_simd; - }; - - using register_type = simd_traits; - - const bool& is_bad() noexcept - { - return register_type::bad; - } - - std::basic_string isa() - { - return "basic_simd"; - } - }; -} // namespace ocl::simd diff --git a/dev/lib/simd/simd.hpp b/dev/lib/simd/simd.hpp deleted file mode 100644 index f15f88a..0000000 --- a/dev/lib/simd/simd.hpp +++ /dev/null @@ -1,61 +0,0 @@ -/* - * File: simd/simd.hpp - * Purpose: SIMD C++ library. - * Author: Amlal El Mahrouss (amlal@nekernel.org) - * Copyright 2025, Amlal El Mahrouss, licensed under the BSL 1.0 license. - */ - -#pragma once - -#include - -/// @author Amlal El Mahrouss -/// @brief Basic SIMD processor. - -namespace ocl::simd -{ - template - class real_type - { - private: - backend_type backend_; - - enum opcode - { - bad = 0, - add, - mul, - div, - invalid = 0xfff, - }; - - public: - real_type() = default; - virtual ~real_type() = default; - - real_type& operator=(const real_type&) = delete; - real_type(const real_type&) = delete; - - typename backend_type::register_type& call(const opcode& op, typename backend_type::register_type& lhs, typename backend_type::register_type& rhs) - { - switch (op) - { - case add: - return backend_.add(lhs, rhs); - case mul: - return backend_.mul(lhs, rhs); - case div: - return backend_.div(lhs, rhs); - default: - break; - } - - return backend_.is_bad(); - } - - std::basic_string isa() - { - return backend_.isa(); - } - }; -} // namespace ocl::simd -- cgit v1.2.3