mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-11-25 21:06:58 -05:00
Changes to avoid warnings in SSE4.2 optimized SPIR-V
This commit is contained in:
parent
e0193e2be5
commit
840d5520d2
1 changed files with 9 additions and 0 deletions
|
@ -29,12 +29,21 @@ struct FuncTraits<ReturnType_ (*)(Args...)> {
|
||||||
template <size_t I>
|
template <size_t I>
|
||||||
using ArgType = std::tuple_element_t<I, std::tuple<Args...>>;
|
using ArgType = std::tuple_element_t<I, std::tuple<Args...>>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
#pragma warning(push)
|
||||||
|
#pragma warning(disable : 4702) // Ignore unreachable code warning
|
||||||
|
#endif
|
||||||
|
|
||||||
template <auto func, typename... Args>
|
template <auto func, typename... Args>
|
||||||
void SetDefinition(EmitContext& ctx, IR::Inst* inst, Args... args) {
|
void SetDefinition(EmitContext& ctx, IR::Inst* inst, Args... args) {
|
||||||
inst->SetDefinition<Id>(func(ctx, std::forward<Args>(args)...));
|
inst->SetDefinition<Id>(func(ctx, std::forward<Args>(args)...));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
#pragma warning(pop)
|
||||||
|
#endif
|
||||||
|
|
||||||
template <typename ArgType>
|
template <typename ArgType>
|
||||||
ArgType Arg(EmitContext& ctx, const IR::Value& arg) {
|
ArgType Arg(EmitContext& ctx, const IR::Value& arg) {
|
||||||
if constexpr (std::is_same_v<ArgType, Id>) {
|
if constexpr (std::is_same_v<ArgType, Id>) {
|
||||||
|
|
Loading…
Reference in a new issue