aboutsummaryrefslogtreecommitdiff
path: root/src/audio_core/renderer/command/data_source
diff options
context:
space:
mode:
authorlizzie <lizzie@eden-emu.dev>2025-09-09 20:47:49 +0200
committercrueter <crueter@eden-emu.dev>2025-09-09 20:47:49 +0200
commit9d2681ecc9565681db623fb71799e76381998512 (patch)
tree3133129860a1569a8be8e7e0c9c5985adbd992ca /src/audio_core/renderer/command/data_source
parent428f136a754096e34c7bfec902684e2546a43ca4 (diff)
[cmake] enable clang-cl and WoA builds (#348)
Compilation and CMake fixes for both Windows on ARM and clang-cl, meaning Windows can now be built on both MSVC and clang on both amd64 and aarch64. Compiling on clang is *dramatically* faster so this should be useful for CI. Co-authored-by: crueter <crueter@eden-emu.dev> Co-authored-by: crueter <crueter@crueter.xyz> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/348 Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Reviewed-by: crueter <crueter@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
Diffstat (limited to 'src/audio_core/renderer/command/data_source')
-rw-r--r--src/audio_core/renderer/command/data_source/decode.cpp18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/audio_core/renderer/command/data_source/decode.cpp b/src/audio_core/renderer/command/data_source/decode.cpp
index 905613a5a8..b42ecb961f 100644
--- a/src/audio_core/renderer/command/data_source/decode.cpp
+++ b/src/audio_core/renderer/command/data_source/decode.cpp
@@ -29,8 +29,8 @@ constexpr std::array<u8, 3> PitchBySrcQuality = {4, 8, 4};
template <typename T>
static u32 DecodePcm(Core::Memory::Memory& memory, std::span<s16> out_buffer,
const DecodeArg& req) {
- constexpr s32 min{std::numeric_limits<s16>::min()};
- constexpr s32 max{std::numeric_limits<s16>::max()};
+ constexpr s32 min{(std::numeric_limits<s16>::min)()};
+ constexpr s32 max{(std::numeric_limits<s16>::max)()};
if (req.buffer == 0 || req.buffer_size == 0) {
return 0;
@@ -41,7 +41,7 @@ static u32 DecodePcm(Core::Memory::Memory& memory, std::span<s16> out_buffer,
}
auto samples_to_decode{
- std::min(req.samples_to_read, req.end_offset - req.start_offset - req.offset)};
+ (std::min)(req.samples_to_read, req.end_offset - req.start_offset - req.offset)};
u32 channel_count{static_cast<u32>(req.channel_count)};
switch (req.channel_count) {
@@ -55,7 +55,7 @@ static u32 DecodePcm(Core::Memory::Memory& memory, std::span<s16> out_buffer,
if constexpr (std::is_floating_point_v<T>) {
for (u32 i = 0; i < samples_to_decode; i++) {
auto sample{static_cast<s32>(samples[i * channel_count + req.target_channel] *
- std::numeric_limits<s16>::max())};
+ (std::numeric_limits<s16>::max)())};
out_buffer[i] = static_cast<s16>(std::clamp(sample, min, max));
}
} else {
@@ -79,7 +79,7 @@ static u32 DecodePcm(Core::Memory::Memory& memory, std::span<s16> out_buffer,
if constexpr (std::is_floating_point_v<T>) {
for (u32 i = 0; i < samples_to_decode; i++) {
auto sample{static_cast<s32>(samples[i * channel_count + req.target_channel] *
- std::numeric_limits<s16>::max())};
+ (std::numeric_limits<s16>::max)())};
out_buffer[i] = static_cast<s16>(std::clamp(sample, min, max));
}
} else {
@@ -125,7 +125,7 @@ static u32 DecodeAdpcm(Core::Memory::Memory& memory, std::span<s16> out_buffer,
}
auto start_pos{req.start_offset + req.offset};
- auto samples_to_process{std::min(req.end_offset - start_pos, req.samples_to_read)};
+ auto samples_to_process{(std::min)(req.end_offset - start_pos, req.samples_to_read)};
if (samples_to_process == 0) {
return 0;
}
@@ -139,7 +139,7 @@ static u32 DecodeAdpcm(Core::Memory::Memory& memory, std::span<s16> out_buffer,
position_in_frame += 2;
}
- const auto size{std::max((samples_to_process / 8U) * SamplesPerFrame, 8U)};
+ const auto size{(std::max)((samples_to_process / 8U) * SamplesPerFrame, 8U)};
Core::Memory::CpuGuestMemory<u8, Core::Memory::GuestMemoryFlags::UnsafeRead> wavebuffer(
memory, req.buffer + position_in_frame / 2, size);
@@ -260,7 +260,7 @@ void DecodeFromWaveBuffers(Core::Memory::Memory& memory, const DecodeFromWaveBuf
auto max_remaining_sample_count{
((Common::FixedPoint<17, 15>(TempBufferSize) - fraction) / sample_rate_ratio)
.to_uint_floor()};
- max_remaining_sample_count = std::min(max_remaining_sample_count, remaining_sample_count);
+ max_remaining_sample_count = (std::min)(max_remaining_sample_count, remaining_sample_count);
auto wavebuffers_consumed{voice_state.wave_buffers_consumed};
auto wavebuffer_index{voice_state.wave_buffer_index};
@@ -273,7 +273,7 @@ void DecodeFromWaveBuffers(Core::Memory::Memory& memory, const DecodeFromWaveBuf
std::array<s16, TempBufferSize> temp_buffer{};
while (remaining_sample_count > 0) {
- const auto samples_to_write{std::min(remaining_sample_count, max_remaining_sample_count)};
+ const auto samples_to_write{(std::min)(remaining_sample_count, max_remaining_sample_count)};
const auto samples_to_read{
(fraction + samples_to_write * sample_rate_ratio).to_uint_floor()};