he's a beautuful lad though -michael

v1
Brett 2024-02-17 20:46:29 -05:00
parent 8af1db43c3
commit 83fff1652d
4 changed files with 52 additions and 2 deletions

View File

@ -352,7 +352,7 @@ namespace blt
} }
}; };
template<bool linked> template<bool linked = true>
class multi_type_area_allocator; class multi_type_area_allocator;
template<> template<>

View File

@ -19,8 +19,32 @@
#ifndef BLT_SIMD_H #ifndef BLT_SIMD_H
#define BLT_SIMD_H #define BLT_SIMD_H
#if defined(__AVX__) || defined(__AVX2__)
#include <immintrin.h>
#else
#warning AVX is not available.
#endif
#include <xmmintrin.h> #include <xmmintrin.h>
namespace blt
{
class simd
{
public:
using type = TYPE;
private:
#if defined(__AVX__) || defined(__AVX2__)
__m256d data;
#else
#endif
public:
};
}
#endif // BLT_SIMD_H #endif // BLT_SIMD_H

View File

@ -246,7 +246,7 @@ namespace blt::parse
} else } else
{ {
BLT_TRACE("Using cached data; %d; map size: %d", loc->second, vertex_data.size()); BLT_TRACE("Using cached data; %d; map size: %d", loc->second, vertex_data.size());
const auto& d = vertex_data[loc->second]; //const auto& d = vertex_data[loc->second];
BLT_TRACE("Vertex: (%f, %f, %f), UV: (%f, %f), Normal: (%f, %f, %f)", d.vertex.x(), d.vertex.y(), d.vertex.z(), BLT_TRACE("Vertex: (%f, %f, %f), UV: (%f, %f), Normal: (%f, %f, %f)", d.vertex.x(), d.vertex.y(), d.vertex.z(),
d.uv.x(), d.uv.y(), d.normal.x(), d.normal.y(), d.normal.z()); d.uv.x(), d.uv.y(), d.normal.x(), d.normal.y(), d.normal.z());
arr[pair.first] = loc->second; arr[pair.first] = loc->second;

26
src/blt/std/simd.cpp Normal file
View File

@ -0,0 +1,26 @@
/*
* <Short Description>
* Copyright (C) 2024 Brett Terpstra
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
#include <blt/std/simd.h>
#include <blt/std/logging.h>
namespace blt
{
}