mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-08-01 15:02:40 +00:00
clang-format
This commit is contained in:
parent
301f51e57d
commit
418f7daa57
@ -10,8 +10,8 @@ namespace Detail {
|
||||
|
||||
template <typename Func, typename OutputIt, std::size_t N, std::size_t Level, typename... ArgLists>
|
||||
void CartesianInvokeImpl(Func func, OutputIt out_it,
|
||||
std::tuple<typename ArgLists::const_iterator...>& arglists_its,
|
||||
const std::tuple<const ArgLists&...>& arglists_tuple) {
|
||||
std::tuple<typename ArgLists::const_iterator...>& arglists_its,
|
||||
const std::tuple<const ArgLists&...>& arglists_tuple) {
|
||||
if constexpr (Level == N) {
|
||||
auto get_tuple = [&]<std::size_t... I>(std::index_sequence<I...>) {
|
||||
return std::forward_as_tuple(*std::get<I>(arglists_its)...);
|
||||
@ -37,7 +37,7 @@ void CartesianInvoke(Func func, OutputIt out_it, const ArgLists&... arg_lists) {
|
||||
|
||||
std::tuple<typename ArgLists::const_iterator...> arglists_it;
|
||||
Detail::CartesianInvokeImpl<Func, OutputIt, N, 0, ArgLists...>(func, out_it, arglists_it,
|
||||
arglists_tuple);
|
||||
arglists_tuple);
|
||||
}
|
||||
|
||||
} // namespace Common
|
||||
|
@ -3,8 +3,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <tuple>
|
||||
#include <cstddef>
|
||||
#include <tuple>
|
||||
|
||||
namespace Common {
|
||||
|
||||
|
@ -6,224 +6,324 @@
|
||||
|
||||
namespace Shader::IR::ComputeValue {
|
||||
|
||||
static void CommonCompositeConstruct(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1) {
|
||||
const auto op = [](const ImmValue& a, const ImmValue& b) {
|
||||
return ImmValue(a, b);
|
||||
};
|
||||
static void CommonCompositeConstruct(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1) {
|
||||
const auto op = [](const ImmValue& a, const ImmValue& b) { return ImmValue(a, b); };
|
||||
Common::CartesianInvoke(op, std::insert_iterator(inst_values, inst_values.begin()), arg0, arg1);
|
||||
}
|
||||
|
||||
static void CommonCompositeConstruct(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2) {
|
||||
static void CommonCompositeConstruct(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2) {
|
||||
const auto op = [](const ImmValue& a, const ImmValue& b, const ImmValue& c) {
|
||||
return ImmValue(a, b, c);
|
||||
};
|
||||
Common::CartesianInvoke(op, std::insert_iterator(inst_values, inst_values.begin()), arg0, arg1, arg2);
|
||||
Common::CartesianInvoke(op, std::insert_iterator(inst_values, inst_values.begin()), arg0, arg1,
|
||||
arg2);
|
||||
}
|
||||
|
||||
static void CommonCompositeConstruct(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2, const ImmValueList& arg3) {
|
||||
static void CommonCompositeConstruct(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2,
|
||||
const ImmValueList& arg3) {
|
||||
const auto op = [](const ImmValue& a, const ImmValue& b, const ImmValue& c, const ImmValue& d) {
|
||||
return ImmValue(a, b, c, d);
|
||||
};
|
||||
Common::CartesianInvoke(op, std::insert_iterator(inst_values, inst_values.begin()), arg0, arg1, arg2, arg3);
|
||||
Common::CartesianInvoke(op, std::insert_iterator(inst_values, inst_values.begin()), arg0, arg1,
|
||||
arg2, arg3);
|
||||
}
|
||||
|
||||
void DoCompositeConstructU32x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1) {
|
||||
void DoCompositeConstructU32x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1);
|
||||
}
|
||||
|
||||
void DoCompositeConstructU32x3(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2) {
|
||||
void DoCompositeConstructU32x3(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1, arg2);
|
||||
}
|
||||
|
||||
void DoCompositeConstructU32x4(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2, const ImmValueList& arg3) {
|
||||
void DoCompositeConstructU32x4(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2,
|
||||
const ImmValueList& arg3) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1, arg2, arg3);
|
||||
}
|
||||
|
||||
void DoCompositeConstructU32x2x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1) {
|
||||
Common::CartesianInvoke(ImmValue::CompositeFrom2x2, std::insert_iterator(inst_values, inst_values.begin()), arg0, arg1);
|
||||
void DoCompositeConstructU32x2x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1) {
|
||||
Common::CartesianInvoke(ImmValue::CompositeFrom2x2,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), arg0, arg1);
|
||||
}
|
||||
|
||||
void DoCompositeExtractU32x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractU32x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeExtractU32x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractU32x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeExtractU32x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractU32x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertU32x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertU32x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertU32x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertU32x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertU32x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertU32x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeShuffleU32x2(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1) {
|
||||
void DoCompositeShuffleU32x2(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeShuffleU32x3(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2) {
|
||||
void DoCompositeShuffleU32x3(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeShuffleU32x4(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2, const ImmValueList& idx3) {
|
||||
void DoCompositeShuffleU32x4(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2,
|
||||
const ImmValueList& idx3) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeConstructF16x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1) {
|
||||
void DoCompositeConstructF16x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1);
|
||||
}
|
||||
|
||||
void DoCompositeConstructF16x3(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2) {
|
||||
void DoCompositeConstructF16x3(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1, arg2);
|
||||
}
|
||||
|
||||
void DoCompositeConstructF16x4(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2, const ImmValueList& arg3) {
|
||||
void DoCompositeConstructF16x4(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2,
|
||||
const ImmValueList& arg3) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1, arg2, arg3);
|
||||
}
|
||||
|
||||
void DoCompositeConstructF32x2x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1) {
|
||||
Common::CartesianInvoke(ImmValue::CompositeFrom2x2, std::insert_iterator(inst_values, inst_values.begin()), arg0, arg1);
|
||||
void DoCompositeConstructF32x2x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1) {
|
||||
Common::CartesianInvoke(ImmValue::CompositeFrom2x2,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), arg0, arg1);
|
||||
}
|
||||
|
||||
void DoCompositeExtractF16x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractF16x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeExtractF16x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractF16x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeExtractF16x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractF16x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertF16x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertF16x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertF16x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertF16x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertF16x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertF16x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeShuffleF16x2(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1) {
|
||||
void DoCompositeShuffleF16x2(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeShuffleF16x3(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2) {
|
||||
void DoCompositeShuffleF16x3(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeShuffleF16x4(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2, const ImmValueList& idx3) {
|
||||
void DoCompositeShuffleF16x4(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2,
|
||||
const ImmValueList& idx3) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeConstructF32x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1) {
|
||||
void DoCompositeConstructF32x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1);
|
||||
}
|
||||
|
||||
void DoCompositeConstructF32x3(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2) {
|
||||
void DoCompositeConstructF32x3(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1, arg2);
|
||||
}
|
||||
|
||||
void DoCompositeConstructF32x4(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2, const ImmValueList& arg3) {
|
||||
void DoCompositeConstructF32x4(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2,
|
||||
const ImmValueList& arg3) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1, arg2, arg3);
|
||||
}
|
||||
|
||||
void DoCompositeExtractF32x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractF32x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeExtractF32x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractF32x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeExtractF32x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractF32x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertF32x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertF32x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertF32x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertF32x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertF32x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertF32x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeShuffleF32x2(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1) {
|
||||
void DoCompositeShuffleF32x2(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeShuffleF32x3(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2) {
|
||||
void DoCompositeShuffleF32x3(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeShuffleF32x4(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2, const ImmValueList& idx3) {
|
||||
void DoCompositeShuffleF32x4(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2,
|
||||
const ImmValueList& idx3) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeConstructF64x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1) {
|
||||
void DoCompositeConstructF64x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1);
|
||||
}
|
||||
|
||||
void DoCompositeConstructF64x3(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2) {
|
||||
void DoCompositeConstructF64x3(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1, arg2);
|
||||
}
|
||||
|
||||
void DoCompositeConstructF64x4(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2, const ImmValueList& arg3) {
|
||||
void DoCompositeConstructF64x4(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2,
|
||||
const ImmValueList& arg3) {
|
||||
CommonCompositeConstruct(inst_values, arg0, arg1, arg2, arg3);
|
||||
}
|
||||
|
||||
void DoCompositeExtractF64x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractF64x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeExtractF64x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractF64x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeExtractF64x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract, std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
void DoCompositeExtractF64x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Extract,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertF64x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertF64x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertF64x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertF64x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeInsertF64x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert, std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
void DoCompositeInsertF64x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx) {
|
||||
Common::CartesianInvoke(ImmValue::Insert,
|
||||
std::insert_iterator(inst_values, inst_values.begin()), vec, val, idx);
|
||||
}
|
||||
|
||||
void DoCompositeShuffleF64x2(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1) {
|
||||
void DoCompositeShuffleF64x2(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeShuffleF64x3(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2) {
|
||||
void DoCompositeShuffleF64x3(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
void DoCompositeShuffleF64x4(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2, const ImmValueList& idx3) {
|
||||
void DoCompositeShuffleF64x4(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2,
|
||||
const ImmValueList& idx3) {
|
||||
UNREACHABLE_MSG("Unimplemented");
|
||||
}
|
||||
|
||||
|
@ -7,58 +7,128 @@
|
||||
|
||||
namespace Shader::IR::ComputeValue {
|
||||
|
||||
void DoCompositeConstructU32x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1);
|
||||
void DoCompositeConstructU32x3(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2);
|
||||
void DoCompositeConstructU32x4(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2, const ImmValueList& arg3);
|
||||
void DoCompositeConstructU32x2x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1);
|
||||
void DoCompositeExtractU32x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeExtractU32x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeExtractU32x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeInsertU32x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertU32x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertU32x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeShuffleU32x2(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1);
|
||||
void DoCompositeShuffleU32x3(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2);
|
||||
void DoCompositeShuffleU32x4(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2, const ImmValueList& idx3);
|
||||
void DoCompositeConstructU32x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1);
|
||||
void DoCompositeConstructU32x3(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2);
|
||||
void DoCompositeConstructU32x4(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2,
|
||||
const ImmValueList& arg3);
|
||||
void DoCompositeConstructU32x2x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1);
|
||||
void DoCompositeExtractU32x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeExtractU32x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeExtractU32x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeInsertU32x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertU32x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertU32x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeShuffleU32x2(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1);
|
||||
void DoCompositeShuffleU32x3(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2);
|
||||
void DoCompositeShuffleU32x4(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2,
|
||||
const ImmValueList& idx3);
|
||||
|
||||
void DoCompositeConstructF16x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1);
|
||||
void DoCompositeConstructF16x3(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2);
|
||||
void DoCompositeConstructF16x4(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2, const ImmValueList& arg3);
|
||||
void DoCompositeExtractF16x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeExtractF16x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeExtractF16x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeInsertF16x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF16x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF16x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeShuffleF16x2(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1);
|
||||
void DoCompositeShuffleF16x3(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2);
|
||||
void DoCompositeShuffleF16x4(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2, const ImmValueList& idx3);
|
||||
void DoCompositeConstructF16x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1);
|
||||
void DoCompositeConstructF16x3(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2);
|
||||
void DoCompositeConstructF16x4(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2,
|
||||
const ImmValueList& arg3);
|
||||
void DoCompositeExtractF16x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeExtractF16x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeExtractF16x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeInsertF16x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF16x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF16x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeShuffleF16x2(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1);
|
||||
void DoCompositeShuffleF16x3(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2);
|
||||
void DoCompositeShuffleF16x4(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2,
|
||||
const ImmValueList& idx3);
|
||||
|
||||
void DoCompositeConstructF32x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1);
|
||||
void DoCompositeConstructF32x3(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2);
|
||||
void DoCompositeConstructF32x4(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2, const ImmValueList& arg3);
|
||||
void DoCompositeConstructF32x2x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1);
|
||||
void DoCompositeExtractF32x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeExtractF32x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeExtractF32x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeInsertF32x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF32x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF32x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeShuffleF32x2(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1);
|
||||
void DoCompositeShuffleF32x3(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2);
|
||||
void DoCompositeShuffleF32x4(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2, const ImmValueList& idx3);
|
||||
void DoCompositeConstructF32x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1);
|
||||
void DoCompositeConstructF32x3(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2);
|
||||
void DoCompositeConstructF32x4(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2,
|
||||
const ImmValueList& arg3);
|
||||
void DoCompositeConstructF32x2x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1);
|
||||
void DoCompositeExtractF32x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeExtractF32x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeExtractF32x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeInsertF32x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF32x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF32x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeShuffleF32x2(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1);
|
||||
void DoCompositeShuffleF32x3(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2);
|
||||
void DoCompositeShuffleF32x4(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2,
|
||||
const ImmValueList& idx3);
|
||||
|
||||
void DoCompositeConstructF64x2(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1);
|
||||
void DoCompositeConstructF64x3(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2);
|
||||
void DoCompositeConstructF64x4(ImmValueList& inst_values, const ImmValueList& arg0, const ImmValueList& arg1, const ImmValueList& arg2, const ImmValueList& arg3);
|
||||
void DoCompositeExtractF64x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeExtractF64x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeExtractF64x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& idx);
|
||||
void DoCompositeInsertF64x2(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF64x3(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF64x4(ImmValueList& inst_values, const ImmValueList& vec, const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeShuffleF64x2(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1);
|
||||
void DoCompositeShuffleF64x3(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2);
|
||||
void DoCompositeShuffleF64x4(ImmValueList& inst_values, const ImmValueList& vec0, const ImmValueList& vec1, const ImmValueList& idx0, const ImmValueList& idx1, const ImmValueList& idx2, const ImmValueList& idx3);
|
||||
void DoCompositeConstructF64x2(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1);
|
||||
void DoCompositeConstructF64x3(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2);
|
||||
void DoCompositeConstructF64x4(ImmValueList& inst_values, const ImmValueList& arg0,
|
||||
const ImmValueList& arg1, const ImmValueList& arg2,
|
||||
const ImmValueList& arg3);
|
||||
void DoCompositeExtractF64x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeExtractF64x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeExtractF64x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& idx);
|
||||
void DoCompositeInsertF64x2(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF64x3(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeInsertF64x4(ImmValueList& inst_values, const ImmValueList& vec,
|
||||
const ImmValueList& val, const ImmValueList& idx);
|
||||
void DoCompositeShuffleF64x2(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1);
|
||||
void DoCompositeShuffleF64x3(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2);
|
||||
void DoCompositeShuffleF64x4(ImmValueList& inst_values, const ImmValueList& vec0,
|
||||
const ImmValueList& vec1, const ImmValueList& idx0,
|
||||
const ImmValueList& idx1, const ImmValueList& idx2,
|
||||
const ImmValueList& idx3);
|
||||
|
||||
} // namespace Shader::IR::ComputeValue
|
||||
|
@ -3,7 +3,8 @@
|
||||
|
||||
namespace Shader::IR::ComputeValue {
|
||||
|
||||
#define NOP_FUNCTION(name) inline void Do##name(ImmValueList& inst_values) {}
|
||||
#define NOP_FUNCTION(name) \
|
||||
inline void Do##name(ImmValueList& inst_values) {}
|
||||
|
||||
NOP_FUNCTION(Phi)
|
||||
NOP_FUNCTION(Identity)
|
||||
|
Loading…
Reference in New Issue
Block a user