#pragma once
#include "il2cpp-config.h"
#include "il2cpp-intrinsics-config.h"

#include "codegen/il2cpp-codegen-metadata.h"

namespace il2cpp
{
namespace intrinsics
{
namespace System_Private_CoreLib
{
namespace System
{
namespace Runtime
{
namespace Intrinsics
{
namespace X86
{
    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::get_IsSupported()
        AssemblyName: System.Private.CoreLib
    */
    inline bool il2cpp_intrinsic_avx_get_is_supported()
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return true;
#else
        return false;
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Runtime.Intrinsics.Vector128`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_EDABB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm_testc_pd(
                INTRINSIC_CAST(TArg1, __m128d, arg1),
                INTRINSIC_CAST(TArg2, __m128d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Runtime.Intrinsics.Vector128`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_A51C1(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm_testc_ps(
                INTRINSIC_CAST(TArg1, __m128, arg1),
                INTRINSIC_CAST(TArg2, __m128, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector256`1<System.Byte>,System.Runtime.Intrinsics.Vector256`1<System.Byte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_5A571(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testc_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector256`1<System.Int16>,System.Runtime.Intrinsics.Vector256`1<System.Int16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_F3E83(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector256`1<System.Int32>,System.Runtime.Intrinsics.Vector256`1<System.Int32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_12355(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector256`1<System.Int64>,System.Runtime.Intrinsics.Vector256`1<System.Int64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_ED93B(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector256`1<System.SByte>,System.Runtime.Intrinsics.Vector256`1<System.SByte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_6A2B9(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testc_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector256`1<System.UInt16>,System.Runtime.Intrinsics.Vector256`1<System.UInt16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_9FA2A(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector256`1<System.UInt32>,System.Runtime.Intrinsics.Vector256`1<System.UInt32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_D8346(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestC(System.Runtime.Intrinsics.Vector256`1<System.UInt64>,System.Runtime.Intrinsics.Vector256`1<System.UInt64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testc_A419E(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Runtime.Intrinsics.Vector128`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_EDABB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm_testnzc_pd(
                INTRINSIC_CAST(TArg1, __m128d, arg1),
                INTRINSIC_CAST(TArg2, __m128d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Runtime.Intrinsics.Vector128`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_A51C1(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm_testnzc_ps(
                INTRINSIC_CAST(TArg1, __m128, arg1),
                INTRINSIC_CAST(TArg2, __m128, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector256`1<System.Byte>,System.Runtime.Intrinsics.Vector256`1<System.Byte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_5A571(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testnzc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testnzc_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector256`1<System.Int16>,System.Runtime.Intrinsics.Vector256`1<System.Int16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_F3E83(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testnzc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector256`1<System.Int32>,System.Runtime.Intrinsics.Vector256`1<System.Int32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_12355(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testnzc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector256`1<System.Int64>,System.Runtime.Intrinsics.Vector256`1<System.Int64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_ED93B(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testnzc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector256`1<System.SByte>,System.Runtime.Intrinsics.Vector256`1<System.SByte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_6A2B9(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testnzc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testnzc_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector256`1<System.UInt16>,System.Runtime.Intrinsics.Vector256`1<System.UInt16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_9FA2A(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testnzc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector256`1<System.UInt32>,System.Runtime.Intrinsics.Vector256`1<System.UInt32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_D8346(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testnzc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestNotZAndNotC(System.Runtime.Intrinsics.Vector256`1<System.UInt64>,System.Runtime.Intrinsics.Vector256`1<System.UInt64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_test_not_z_and_notc_A419E(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testnzc_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Runtime.Intrinsics.Vector128`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_EDABB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm_testz_pd(
                INTRINSIC_CAST(TArg1, __m128d, arg1),
                INTRINSIC_CAST(TArg2, __m128d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Runtime.Intrinsics.Vector128`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_A51C1(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm_testz_ps(
                INTRINSIC_CAST(TArg1, __m128, arg1),
                INTRINSIC_CAST(TArg2, __m128, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector256`1<System.Byte>,System.Runtime.Intrinsics.Vector256`1<System.Byte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_5A571(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testz_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testz_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector256`1<System.Int16>,System.Runtime.Intrinsics.Vector256`1<System.Int16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_F3E83(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testz_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector256`1<System.Int32>,System.Runtime.Intrinsics.Vector256`1<System.Int32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_12355(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testz_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector256`1<System.Int64>,System.Runtime.Intrinsics.Vector256`1<System.Int64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_ED93B(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testz_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector256`1<System.SByte>,System.Runtime.Intrinsics.Vector256`1<System.SByte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_6A2B9(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testz_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testz_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector256`1<System.UInt16>,System.Runtime.Intrinsics.Vector256`1<System.UInt16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_9FA2A(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testz_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector256`1<System.UInt32>,System.Runtime.Intrinsics.Vector256`1<System.UInt32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_D8346(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testz_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Boolean System.Runtime.Intrinsics.X86.Avx::TestZ(System.Runtime.Intrinsics.Vector256`1<System.UInt64>,System.Runtime.Intrinsics.Vector256`1<System.UInt64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_testz_A419E(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_testz_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Int32 System.Runtime.Intrinsics.X86.Avx::MoveMask(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_move_mask_58403(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_movemask_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Int32 System.Runtime.Intrinsics.X86.Avx::MoveMask(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_move_mask_1CD38(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            int, TRet, _mm256_movemask_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Byte> System.Runtime.Intrinsics.X86.Avx::ExtractVector128(System.Runtime.Intrinsics.Vector256`1<System.Byte>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_8B2E2(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmasked arg2 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_8B2E2(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmasked TArg2Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128i, TRet, _mm256_extractf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                TArg2Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Compare(System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Runtime.Intrinsics.X86.FloatComparisonMode)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_compare_27FD6(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        31
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_compare_27FD6(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 31)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128d, TRet, _mm_cmp_pd(
                INTRINSIC_CAST(TArg1, __m128d, arg1),
                INTRINSIC_CAST(TArg2, __m128d, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareScalar(System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Runtime.Intrinsics.X86.FloatComparisonMode)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_compare_scalar_27FD6(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_cmp_sd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        31
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_compare_scalar_27FD6(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bit mask with 0x1F to check the 5 least significant bits
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 31)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128d, TRet, _mm_cmp_sd(
                INTRINSIC_CAST(TArg1, __m128d, arg1),
                INTRINSIC_CAST(TArg2, __m128d, arg2),
                TArg3Value & 0x1F
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Double> System.Runtime.Intrinsics.X86.Avx::ExtractVector128(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_AC17D(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmask arg2 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm256_extractf128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm256_extractf128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_AC17D(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmask TArg2Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128d, TRet, _mm256_extractf128_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                TArg2Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Double> System.Runtime.Intrinsics.X86.Avx::MaskLoad(System.Double*,System.Runtime.Intrinsics.Vector128`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_mask_load_93E03(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m128d, TRet, _mm_maskload_pd(
                INTRINSIC_CAST(TArg1, double const *, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Permute(System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_permute_34F90(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Bitmask arg2 to check 2 least significant bits.  Removed other cases
        switch (arg2 & 0x3) 
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_permute_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_permute_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_permute_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m128d, TRet, _mm_permute_pd(
                        INTRINSIC_CAST(TArg1, __m128d, arg1),
                        3
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_permute_34F90(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128d, TRet, _mm_permute_pd(
                INTRINSIC_CAST(TArg1, __m128d, arg1),
                TArg2Value & 0x3
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Double> System.Runtime.Intrinsics.X86.Avx::PermuteVar(System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Runtime.Intrinsics.Vector128`1<System.Int64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_permute_var_5CFC5(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m128d, TRet, _mm_permutevar_pd(
                INTRINSIC_CAST(TArg1, __m128d, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Int16> System.Runtime.Intrinsics.X86.Avx::ExtractVector128(System.Runtime.Intrinsics.Vector256`1<System.Int16>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_99F5A(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmask TArg2 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_99F5A(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmask TArg2Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128i, TRet, _mm256_extractf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                TArg2Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Int32> System.Runtime.Intrinsics.X86.Avx::ConvertToVector128Int32(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_convert_to_vector128_int32(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m128i, TRet, _mm256_cvtpd_epi32(
                INTRINSIC_CAST(TArg1, __m256d, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Int32> System.Runtime.Intrinsics.X86.Avx::ConvertToVector128Int32WithTruncation(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_convert_to_vector128_int32_with_truncation(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m128i, TRet, _mm256_cvttpd_epi32(
                INTRINSIC_CAST(TArg1, __m256d, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Int32> System.Runtime.Intrinsics.X86.Avx::ExtractVector128(System.Runtime.Intrinsics.Vector256`1<System.Int32>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_48200(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmask TArg2 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_48200(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmask TArg2Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128i, TRet, _mm256_extractf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                TArg2Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Int64> System.Runtime.Intrinsics.X86.Avx::ExtractVector128(System.Runtime.Intrinsics.Vector256`1<System.Int64>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_B95F8(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmask TArg2 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_B95F8(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmask TArg2Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128i, TRet, _mm256_extractf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                TArg2Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.SByte> System.Runtime.Intrinsics.X86.Avx::ExtractVector128(System.Runtime.Intrinsics.Vector256`1<System.SByte>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_65E05(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmask TArg2 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_65E05(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmasked TArg2Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128i, TRet, _mm256_extractf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                TArg2Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Single> System.Runtime.Intrinsics.X86.Avx::BroadcastScalarToVector128(System.Single*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_broadcast_scalar_to_vector128(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m128, TRet, _mm_broadcast_ss(
                INTRINSIC_CAST(TArg1, float const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Compare(System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Runtime.Intrinsics.X86.FloatComparisonMode)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_compare_A06A0(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        31
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_compare_A06A0(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 31)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128, TRet, _mm_cmp_ps(
                INTRINSIC_CAST(TArg1, __m128, arg1),
                INTRINSIC_CAST(TArg2, __m128, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareScalar(System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Runtime.Intrinsics.X86.FloatComparisonMode)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_compare_scalar_A06A0(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_cmp_ss(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        31
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_compare_scalar_A06A0(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to check least 5 significant bits
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 31)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128, TRet, _mm_cmp_ss(
                INTRINSIC_CAST(TArg1, __m128, arg1),
                INTRINSIC_CAST(TArg2, __m128, arg2),
                TArg3Value & 0x1F
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Single> System.Runtime.Intrinsics.X86.Avx::ConvertToVector128Single(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_convert_to_vector128_single(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m128, TRet, _mm256_cvtpd_ps(
                INTRINSIC_CAST(TArg1, __m256d, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Single> System.Runtime.Intrinsics.X86.Avx::ExtractVector128(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_A25D8(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmask arg2 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm256_extractf128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm256_extractf128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_A25D8(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmasked TArg2Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128, TRet, _mm256_extractf128_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                TArg2Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Single> System.Runtime.Intrinsics.X86.Avx::MaskLoad(System.Single*,System.Runtime.Intrinsics.Vector128`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_mask_load_8D352(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m128, TRet, _mm_maskload_ps(
                INTRINSIC_CAST(TArg1, float const *, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Permute(System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_permute_7D4DE(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m128, TRet, _mm_permute_ps(
                        INTRINSIC_CAST(TArg1, __m128, arg1),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_permute_7D4DE(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128, TRet, _mm_permute_ps(
                INTRINSIC_CAST(TArg1, __m128, arg1),
                TArg2Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.Single> System.Runtime.Intrinsics.X86.Avx::PermuteVar(System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Runtime.Intrinsics.Vector128`1<System.Int32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_permute_var_3F04C(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m128, TRet, _mm_permutevar_ps(
                INTRINSIC_CAST(TArg1, __m128, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.UInt16> System.Runtime.Intrinsics.X86.Avx::ExtractVector128(System.Runtime.Intrinsics.Vector256`1<System.UInt16>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_F3910(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Switch on arg2 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_F3910(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmasked TArg2Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128i, TRet, _mm256_extractf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                TArg2Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.UInt32> System.Runtime.Intrinsics.X86.Avx::ExtractVector128(System.Runtime.Intrinsics.Vector256`1<System.UInt32>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_79512(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Switch on arg2 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_79512(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmasked TArg2Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128i, TRet, _mm256_extractf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                TArg2Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector128`1<System.UInt64> System.Runtime.Intrinsics.X86.Avx::ExtractVector128(System.Runtime.Intrinsics.Vector256`1<System.UInt64>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_A33EC(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Switch on arg2 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m128i, TRet, _mm256_extractf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_extract_vector128_A33EC(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmasked TArg2Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m128i, TRet, _mm256_extractf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                TArg2Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Byte> System.Runtime.Intrinsics.X86.Avx::InsertVector128(System.Runtime.Intrinsics.Vector256`1<System.Byte>,System.Runtime.Intrinsics.Vector128`1<System.Byte>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_D07FB(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Switch on arg3 to check least significant bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_D07FB(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to check least significant bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_insertf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2),
                TArg3Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Byte> System.Runtime.Intrinsics.X86.Avx::LoadAlignedVector256(System.Byte*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_aligned_vector256_7E353(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_load_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Byte> System.Runtime.Intrinsics.X86.Avx::LoadDquVector256(System.Byte*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_dqu_vector256_7E353(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_lddqu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Byte> System.Runtime.Intrinsics.X86.Avx::LoadVector256(System.Byte*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_vector256_7E353(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_loadu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Byte> System.Runtime.Intrinsics.X86.Avx::Permute2x128(System.Runtime.Intrinsics.Vector256`1<System.Byte>,System.Runtime.Intrinsics.Vector256`1<System.Byte>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_permute2x128_87183(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_permute2x128_87183(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_permute2f128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Add(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_add_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_add_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::AddSubtract(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_add_subtract_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_addsub_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::And(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_and_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_and_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::AndNot(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_and_not_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_andnot_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Blend(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_blend_7394D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmask arg3 to check 4 least significant bits, removed cases 16-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0xF)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_blend_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        15
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_blend_7394D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmask TArg3Value for least 4 significant bits
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_blend_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                TArg3Value & 0xF
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::BlendVariable(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_blend_variable_E650E(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_blendv_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                INTRINSIC_CAST(TArg3, __m256d, arg3)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::BroadcastScalarToVector256(System.Double*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_broadcast_scalar_to_vector256_1DF21(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_broadcast_sd(
                INTRINSIC_CAST(TArg1, double const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::BroadcastVector128ToVector256(System.Double*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_broadcast_vector128_to_vector256_1DF21(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_broadcast_pd(
                INTRINSIC_CAST(TArg1, __m128d const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Ceiling(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_ceiling_58403(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Changed arg1 to __m256 type
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_ceil_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Compare(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.X86.FloatComparisonMode)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_compare_09C97(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_cmp_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        31
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_compare_09C97(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmask TArg3Value for least 5 significant bits
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 31)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                TArg3Value & 0x1F
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareEqual(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_equal_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpeq_pd does not exist, using _mm256_cmp_pd with equality comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                0 // 0 is the comparison for equality
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareGreaterThan(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_greater_than_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpgt_pd does not exist, using _mm256_cmp_pd with greater than comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                14 // 14 is the comparison code for greater than in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareGreaterThanOrEqual(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_greater_than_or_equal_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpge_pd does not exist, using _mm256_cmp_pd with greater than or equal comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                13 // 15 is the comparison code for greater than or equal in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareLessThan(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_less_than_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmplt_pd does not exist, using _mm256_cmp_pd with less than comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                1 // 1 is the comparison code for less than in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareLessThanOrEqual(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_less_than_or_equal_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmple_pd does not exist, using _mm256_cmp_pd with less than or equal comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                2 // 2 is the comparison code for less than or equal in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareNotEqual(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_not_equal_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpneq_pd does not exist, using _mm256_cmp_pd with not equal comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                4 // 4 is the comparison code for not equal in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareNotGreaterThan(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_not_greater_than_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpngt_pd does not exist, using _mm256_cmp_pd with not greater than comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                10 // 10 is the comparison code for not greater than in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareNotGreaterThanOrEqual(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_not_greater_than_or_equal_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpnge_pd does not exist, using _mm256_cmp_pd with not greater than or equal comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                10 // 10 is the comparison code for not greater than or equal in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareNotLessThan(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_not_less_than_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpnlt_pd does not exist, using _mm256_cmpnle_pd with not less than comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                5 // 5 is the comparison code for not less than in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareNotLessThanOrEqual(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_not_less_than_or_equal_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpnle_pd does not exist, using _mm256_cmpnle_pd with not less than or equal comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                6 // 6 is the comparison code for not less than or equal in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareOrdered(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_ordered_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpord_pd does not exist, using _mm256_cmp_pd with ordered comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                7 // 7 is the comparison code for ordered in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::CompareUnordered(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_unordered_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpunord_pd does not exist, using _mm256_cmp_pd with unordered comparison
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cmp_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                3 // 3 is the comparison code for unordered in _mm256_cmp_pd
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::ConvertToVector256Double(System.Runtime.Intrinsics.Vector128`1<System.Int32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_convert_to_vector256_double_F7B07(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cvtepi32_pd(
                INTRINSIC_CAST(TArg1, __m128i, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::ConvertToVector256Double(System.Runtime.Intrinsics.Vector128`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_convert_to_vector256_double_65DAE(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_cvtps_pd(
                INTRINSIC_CAST(TArg1, __m128, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Divide(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_divide_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_div_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::DuplicateEvenIndexed(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_duplicate_even_indexed_58403(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_movedup_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Floor(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_floor_58403(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_floor_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::HorizontalAdd(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_horizontal_add_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_hadd_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::HorizontalSubtract(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_horizontal_subtract_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_hsub_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::InsertVector128(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_9A78D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked arg3 to check last bit. Removed chases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_insertf128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_insertf128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m128d, arg2),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_9A78D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to check last bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_insertf128_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m128d, arg2),
                TArg3Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::LoadAlignedVector256(System.Double*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_aligned_vector256_1DF21(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_load_pd(
                INTRINSIC_CAST(TArg1, double const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::LoadVector256(System.Double*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_vector256_1DF21(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_loadu_pd(
                INTRINSIC_CAST(TArg1, double const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::MaskLoad(System.Double*,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_mask_load_28E1E(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_maskload_pd(
                INTRINSIC_CAST(TArg1, double const *, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Max(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_max_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_max_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Min(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_min_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_min_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Multiply(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_multiply_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_mul_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Or(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_or_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_or_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Permute(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_permute_AC17D(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmasked arg2 to check least 4 significant bits. Removed cases 16-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2 & 0xF)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        15
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_permute_AC17D(TArg1 arg1, TArg2 arg2)
    {
        // HAND EDITED: Bitmasked TArg2Value to check least 4 significant bits
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_permute_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                TArg2Value & 0xF
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Permute2x128(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_permute2x128_7394D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_permute2f128_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_permute2x128_7394D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_permute2f128_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::PermuteVar(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Int64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_permute_var_D065F(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_permutevar_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::RoundCurrentDirection(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_round_current_direction_58403(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Use _mm256_round_pd with _MM_FROUND_CUR_DIRECTION, was _mm256_round_ps
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_round_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                _MM_FROUND_CUR_DIRECTION
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::RoundToNearestInteger(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_round_to_nearest_integer_58403(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Use _mm256_round_pd with _MM_FROUND_TO_NEAREST_INT
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_round_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                _MM_FROUND_TO_NEAREST_INT
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::RoundToNegativeInfinity(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_round_to_negative_infinity_58403(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Use _mm256_round_pd with _MM_FROUND_TO_NEG_INF | _MM_FROUND_NO_EXC
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_round_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                _MM_FROUND_TO_NEG_INF | _MM_FROUND_NO_EXC
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::RoundToPositiveInfinity(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_round_to_positive_infinity_58403(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Use _mm256_round_pd with _MM_FROUND_TO_POS_INF | _MM_FROUND_NO_EXC
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_round_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                _MM_FROUND_TO_POS_INF | _MM_FROUND_NO_EXC
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::RoundToZero(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_round_to_zero_58403(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Use _mm256_round_pd with _MM_FROUND_TO_ZERO | _MM_FROUND_NO_EXC
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_round_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                _MM_FROUND_TO_ZERO | _MM_FROUND_NO_EXC
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Shuffle(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_shuffle_7394D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked arg3 with 0xF to check least 4 significant bits. Removed cases 16-255.
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0xF)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256d, TRet, _mm256_shuffle_pd(
                        INTRINSIC_CAST(TArg1, __m256d, arg1),
                        INTRINSIC_CAST(TArg2, __m256d, arg2),
                        15
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_shuffle_7394D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to least 4 significant bits
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_shuffle_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2),
                TArg3Value & 0xF
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Sqrt(System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_sqrt_58403(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_sqrt_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Subtract(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_subtract_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_sub_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::UnpackHigh(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_unpack_high_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_unpackhi_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::UnpackLow(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_unpack_low_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_unpacklo_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Double> System.Runtime.Intrinsics.X86.Avx::Xor(System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_xor_CF7D0(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256d, TRet, _mm256_xor_pd(
                INTRINSIC_CAST(TArg1, __m256d, arg1),
                INTRINSIC_CAST(TArg2, __m256d, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int16> System.Runtime.Intrinsics.X86.Avx::InsertVector128(System.Runtime.Intrinsics.Vector256`1<System.Int16>,System.Runtime.Intrinsics.Vector128`1<System.Int16>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_689B6(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked arg3 with 0x1 to check least significant bit. Removed cases 2-255.
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_689B6(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked Targ3Value to check last bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_insertf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2),
                TArg3Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int16> System.Runtime.Intrinsics.X86.Avx::LoadAlignedVector256(System.Int16*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_aligned_vector256_2CA79(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_load_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int16> System.Runtime.Intrinsics.X86.Avx::LoadDquVector256(System.Int16*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_dqu_vector256_2CA79(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_lddqu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int16> System.Runtime.Intrinsics.X86.Avx::LoadVector256(System.Int16*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_vector256_2CA79(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_loadu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int16> System.Runtime.Intrinsics.X86.Avx::Permute2x128(System.Runtime.Intrinsics.Vector256`1<System.Int16>,System.Runtime.Intrinsics.Vector256`1<System.Int16>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_permute2x128_808B0(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_permute2x128_808B0(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_permute2f128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int32> System.Runtime.Intrinsics.X86.Avx::ConvertToVector256Int32(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_convert_to_vector256_int32(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_cvtps_epi32(
                INTRINSIC_CAST(TArg1, __m256, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int32> System.Runtime.Intrinsics.X86.Avx::ConvertToVector256Int32WithTruncation(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_convert_to_vector256_int32_with_truncation(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_cvttps_epi32(
                INTRINSIC_CAST(TArg1, __m256, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int32> System.Runtime.Intrinsics.X86.Avx::InsertVector128(System.Runtime.Intrinsics.Vector256`1<System.Int32>,System.Runtime.Intrinsics.Vector128`1<System.Int32>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_A61DC(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked arg3 to check last bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_A61DC(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to check last bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_insertf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2),
                TArg3Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int32> System.Runtime.Intrinsics.X86.Avx::LoadAlignedVector256(System.Int32*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_aligned_vector256_BD4B5(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_load_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int32> System.Runtime.Intrinsics.X86.Avx::LoadDquVector256(System.Int32*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_dqu_vector256_BD4B5(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_lddqu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int32> System.Runtime.Intrinsics.X86.Avx::LoadVector256(System.Int32*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_vector256_BD4B5(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_loadu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int32> System.Runtime.Intrinsics.X86.Avx::Permute2x128(System.Runtime.Intrinsics.Vector256`1<System.Int32>,System.Runtime.Intrinsics.Vector256`1<System.Int32>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_permute2x128_A8757(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_permute2x128_A8757(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_permute2f128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int64> System.Runtime.Intrinsics.X86.Avx::InsertVector128(System.Runtime.Intrinsics.Vector256`1<System.Int64>,System.Runtime.Intrinsics.Vector128`1<System.Int64>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_78A48(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked arg3 to check last bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_78A48(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to check last bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_insertf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2),
                TArg3Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int64> System.Runtime.Intrinsics.X86.Avx::LoadAlignedVector256(System.Int64*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_aligned_vector256_5325A(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_load_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int64> System.Runtime.Intrinsics.X86.Avx::LoadDquVector256(System.Int64*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_dqu_vector256_5325A(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_lddqu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int64> System.Runtime.Intrinsics.X86.Avx::LoadVector256(System.Int64*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_vector256_5325A(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_loadu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Int64> System.Runtime.Intrinsics.X86.Avx::Permute2x128(System.Runtime.Intrinsics.Vector256`1<System.Int64>,System.Runtime.Intrinsics.Vector256`1<System.Int64>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_permute2x128_D1E54(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_permute2x128_D1E54(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_permute2f128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.SByte> System.Runtime.Intrinsics.X86.Avx::InsertVector128(System.Runtime.Intrinsics.Vector256`1<System.SByte>,System.Runtime.Intrinsics.Vector128`1<System.SByte>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_51546(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked arg3 to check last bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_51546(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to check last bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_insertf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2),
                TArg3Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.SByte> System.Runtime.Intrinsics.X86.Avx::LoadAlignedVector256(System.SByte*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_aligned_vector256_5399E(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_load_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.SByte> System.Runtime.Intrinsics.X86.Avx::LoadDquVector256(System.SByte*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_dqu_vector256_5399E(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_lddqu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.SByte> System.Runtime.Intrinsics.X86.Avx::LoadVector256(System.SByte*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_vector256_5399E(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_loadu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.SByte> System.Runtime.Intrinsics.X86.Avx::Permute2x128(System.Runtime.Intrinsics.Vector256`1<System.SByte>,System.Runtime.Intrinsics.Vector256`1<System.SByte>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_permute2x128_0A069(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_permute2x128_0A069(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_permute2f128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Add(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_add_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_add_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::AddSubtract(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_add_subtract_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_addsub_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::And(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_and_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_and_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::AndNot(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_and_not_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_andnot_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Blend(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_blend_307FA(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_blend_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_blend_307FA(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256, TRet, _mm256_blend_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::BlendVariable(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_blend_variable_BAF09(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_blendv_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                INTRINSIC_CAST(TArg3, __m256, arg3)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::BroadcastScalarToVector256(System.Single*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_broadcast_scalar_to_vector256_C80C4(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_broadcast_ss(
                INTRINSIC_CAST(TArg1, float const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::BroadcastVector128ToVector256(System.Single*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_broadcast_vector128_to_vector256_C80C4(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_broadcast_ps(
                INTRINSIC_CAST(TArg1, __m128 const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Ceiling(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_ceiling_1CD38(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Changed arg1 to __m256 type
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_ceil_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Compare(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.X86.FloatComparisonMode)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_compare_D2239(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_cmp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        31
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_compare_D2239(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmask TArg3Value with 0x1F to check the least 5 significant bits
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 31)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                TArg3Value & 0x1F
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareEqual(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_equal_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpeq_ps does not exist, using _mm256_cmp_ps with equal comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                0 // 0 is the comparison for equality in _mm256_cmp_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareGreaterThan(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_greater_than_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpgt_ps does not exist, using _mm256_cmp_ps with greater than comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                14 // 14 is the comparison for greater than in _mm256_cmp_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareGreaterThanOrEqual(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_greater_than_or_equal_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpge_ps does not exist, using _mm256_cmp_ps with greater than or equal comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                13 // 13 is the comparison for greater than or equal in _mm256_cmp_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareLessThan(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_less_than_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmplt_ps does not exist, using _mm256_cmp_ps with less than comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                1 // 1 is the comparison for less than in _mm256_cmplt_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareLessThanOrEqual(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_less_than_or_equal_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmple_ps does not exist, using _mm256_cmp_ps with less than or equal comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                2 // 2 is the comparison for less than or equal in _mm256_cmple_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareNotEqual(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_not_equal_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpneq_ps does not exist, using _mm256_cmp_ps with not equal comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                4 // 4 is the comparison for not equal in _mm256_cmp_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareNotGreaterThan(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_not_greater_than_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpngt_ps does not exist, using _mm256_cmp_ps with not greater than comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                10 // 10 is the comparison for not greater than in _mm256_cmp_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareNotGreaterThanOrEqual(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_not_greater_than_or_equal_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpnge_ps does not exist, using _mm256_cmp_ps with not greater than or equal comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                9 // 9 is the comparison for not greater than or equal in _mm256_cmpnge_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareNotLessThan(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_not_less_than_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpnlt_ps does not exist, using _mm256_cmp_ps with not less than comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                5 // 5 is the comparison for not less than in _mm256_cmpnlt_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareNotLessThanOrEqual(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_not_less_than_or_equal_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpnle_ps does not exist, using _mm256_cmp_ps with not less than or equal comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                6 // 6 is the comparison for not less than or equal in _mm256_cmpnle_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareOrdered(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_ordered_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpord_ps does not exist, using _mm256_cmp_ps with ordered comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                7 // 7 is the comparison for ordered in _mm256_cmpord_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::CompareUnordered(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_compare_unordered_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: _mm256_cmpunord_ps does not exist, using _mm256_cmp_ps with unordered comparison
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cmp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                3 // 3 is the comparison for unordered in _mm256_cmpunord_ps
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::ConvertToVector256Single(System.Runtime.Intrinsics.Vector256`1<System.Int32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_convert_to_vector256_single(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_cvtepi32_ps(
                INTRINSIC_CAST(TArg1, __m256i, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Divide(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_divide_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_div_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::DotProduct(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_dot_product(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_dp_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_dot_product(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256, TRet, _mm256_dp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::DuplicateEvenIndexed(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_duplicate_even_indexed_1CD38(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_moveldup_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::DuplicateOddIndexed(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_duplicate_odd_indexed(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_movehdup_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Floor(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_floor_1CD38(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_floor_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::HorizontalAdd(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_horizontal_add_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_hadd_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::HorizontalSubtract(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_horizontal_subtract_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_hsub_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::InsertVector128(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_FFB6E(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked arg3 to check last bit.Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_insertf128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_insertf128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m128, arg2),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_FFB6E(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to check last bit.
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256, TRet, _mm256_insertf128_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m128, arg2),
                TArg3Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::LoadAlignedVector256(System.Single*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_aligned_vector256_C80C4(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_load_ps(
                INTRINSIC_CAST(TArg1, float const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::LoadVector256(System.Single*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_vector256_C80C4(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_loadu_ps(
                INTRINSIC_CAST(TArg1, float const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::MaskLoad(System.Single*,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_mask_load_7D78A(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_maskload_ps(
                INTRINSIC_CAST(TArg1, float const *, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Max(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_max_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_max_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Min(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_min_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_min_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Multiply(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_multiply_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_mul_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Or(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_or_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_or_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Permute(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [1]
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_permute_A25D8(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg2)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, int TArg2Value>
    inline TRet il2cpp_intrinsic_avx_permute_A25D8(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg2Value < 0 || TArg2Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256, TRet, _mm256_permute_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                TArg2Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Permute2x128(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_permute2x128_307FA(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_permute2f128_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_permute2x128_307FA(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256, TRet, _mm256_permute2f128_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::PermuteVar(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Int32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_permute_var_1B8B9(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_permutevar_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Reciprocal(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_reciprocal(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_rcp_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::ReciprocalSqrt(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_reciprocal_sqrt(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_rsqrt_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::RoundCurrentDirection(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_round_current_direction_1CD38(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Use _mm256_round_ps with _MM_FROUND_CUR_DIRECTION
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_round_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                _MM_FROUND_CUR_DIRECTION
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::RoundToNearestInteger(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_round_to_nearest_integer_1CD38(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Use _mm256_round_ps with _MM_FROUND_TO_NEAREST_INT
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_round_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                _MM_FROUND_TO_NEAREST_INT
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::RoundToNegativeInfinity(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_round_to_negative_infinity_1CD38(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Use _mm256_round_ps with _MM_FROUND_TO_NEG_INF | _MM_FROUND_NO_EXC
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_round_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                _MM_FROUND_TO_NEG_INF | _MM_FROUND_NO_EXC
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::RoundToPositiveInfinity(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_round_to_positive_infinity_1CD38(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Use _mm256_round_ps with _MM_FROUND_TO_POS_INF | _MM_FROUND_NO_EXC
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_round_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                _MM_FROUND_TO_POS_INF | _MM_FROUND_NO_EXC
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::RoundToZero(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_round_to_zero_1CD38(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        // HAND EDITED: Use _mm256_round_ps with _MM_FROUND_TO_ZERO | _MM_FROUND_NO_EXC
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_round_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                _MM_FROUND_TO_ZERO | _MM_FROUND_NO_EXC
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Shuffle(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_shuffle_307FA(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256, TRet, _mm256_shuffle_ps(
                        INTRINSIC_CAST(TArg1, __m256, arg1),
                        INTRINSIC_CAST(TArg2, __m256, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_shuffle_307FA(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256, TRet, _mm256_shuffle_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Sqrt(System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_sqrt_1CD38(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_sqrt_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Subtract(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_subtract_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_sub_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::UnpackHigh(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_unpack_high_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_unpackhi_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::UnpackLow(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_unpack_low_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_unpacklo_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.Single> System.Runtime.Intrinsics.X86.Avx::Xor(System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_xor_E20FB(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256, TRet, _mm256_xor_ps(
                INTRINSIC_CAST(TArg1, __m256, arg1),
                INTRINSIC_CAST(TArg2, __m256, arg2)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt16> System.Runtime.Intrinsics.X86.Avx::InsertVector128(System.Runtime.Intrinsics.Vector256`1<System.UInt16>,System.Runtime.Intrinsics.Vector128`1<System.UInt16>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_CE4CA(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked arg3 to check last bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_CE4CA(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to check last bit.
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_insertf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2),
                TArg3Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt16> System.Runtime.Intrinsics.X86.Avx::LoadAlignedVector256(System.UInt16*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_aligned_vector256_FA329(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_load_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt16> System.Runtime.Intrinsics.X86.Avx::LoadDquVector256(System.UInt16*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_dqu_vector256_FA329(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_lddqu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt16> System.Runtime.Intrinsics.X86.Avx::LoadVector256(System.UInt16*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_vector256_FA329(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_loadu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt16> System.Runtime.Intrinsics.X86.Avx::Permute2x128(System.Runtime.Intrinsics.Vector256`1<System.UInt16>,System.Runtime.Intrinsics.Vector256`1<System.UInt16>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_permute2x128_CAEA6(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_permute2x128_CAEA6(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_permute2f128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt32> System.Runtime.Intrinsics.X86.Avx::InsertVector128(System.Runtime.Intrinsics.Vector256`1<System.UInt32>,System.Runtime.Intrinsics.Vector128`1<System.UInt32>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_CCB0D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked arg3 to check last bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_CCB0D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to check last bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_insertf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2),
                TArg3Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt32> System.Runtime.Intrinsics.X86.Avx::LoadAlignedVector256(System.UInt32*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_aligned_vector256_BE5D7(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_load_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt32> System.Runtime.Intrinsics.X86.Avx::LoadDquVector256(System.UInt32*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_dqu_vector256_BE5D7(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_lddqu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt32> System.Runtime.Intrinsics.X86.Avx::LoadVector256(System.UInt32*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_vector256_BE5D7(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_loadu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt32> System.Runtime.Intrinsics.X86.Avx::Permute2x128(System.Runtime.Intrinsics.Vector256`1<System.UInt32>,System.Runtime.Intrinsics.Vector256`1<System.UInt32>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_permute2x128_3934D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_permute2x128_3934D(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_permute2f128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt64> System.Runtime.Intrinsics.X86.Avx::InsertVector128(System.Runtime.Intrinsics.Vector256`1<System.UInt64>,System.Runtime.Intrinsics.Vector128`1<System.UInt64>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_CE43E(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked arg3 to check last bit. Removed cases 2-255
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3 & 0x1)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_insertf128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m128i, arg2),
                        1
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_insert_vector128_CE43E(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
        // HAND EDITED: Bitmasked TArg3Value to check last bit
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_insertf128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m128i, arg2),
                TArg3Value & 0x1
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt64> System.Runtime.Intrinsics.X86.Avx::LoadAlignedVector256(System.UInt64*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_aligned_vector256_F87C4(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_load_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt64> System.Runtime.Intrinsics.X86.Avx::LoadDquVector256(System.UInt64*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_dqu_vector256_F87C4(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_lddqu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt64> System.Runtime.Intrinsics.X86.Avx::LoadVector256(System.UInt64*)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1>
    inline TRet il2cpp_intrinsic_avx_load_vector256_F87C4(TArg1 arg1)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_loadu_si256(
                INTRINSIC_CAST(TArg1, __m256i const *, arg1)
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Runtime.Intrinsics.Vector256`1<System.UInt64> System.Runtime.Intrinsics.X86.Avx::Permute2x128(System.Runtime.Intrinsics.Vector256`1<System.UInt64>,System.Runtime.Intrinsics.Vector256`1<System.UInt64>,System.Byte)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
        ConstArgumentsExpected: [2]
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_permute2x128_9F92A(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        switch (arg3)
        {
            case 0:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        0
                    )
                );
            }
            case 1:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        1
                    )
                );
            }
            case 2:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        2
                    )
                );
            }
            case 3:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        3
                    )
                );
            }
            case 4:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        4
                    )
                );
            }
            case 5:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        5
                    )
                );
            }
            case 6:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        6
                    )
                );
            }
            case 7:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        7
                    )
                );
            }
            case 8:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        8
                    )
                );
            }
            case 9:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        9
                    )
                );
            }
            case 10:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        10
                    )
                );
            }
            case 11:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        11
                    )
                );
            }
            case 12:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        12
                    )
                );
            }
            case 13:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        13
                    )
                );
            }
            case 14:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        14
                    )
                );
            }
            case 15:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        15
                    )
                );
            }
            case 16:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        16
                    )
                );
            }
            case 17:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        17
                    )
                );
            }
            case 18:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        18
                    )
                );
            }
            case 19:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        19
                    )
                );
            }
            case 20:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        20
                    )
                );
            }
            case 21:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        21
                    )
                );
            }
            case 22:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        22
                    )
                );
            }
            case 23:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        23
                    )
                );
            }
            case 24:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        24
                    )
                );
            }
            case 25:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        25
                    )
                );
            }
            case 26:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        26
                    )
                );
            }
            case 27:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        27
                    )
                );
            }
            case 28:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        28
                    )
                );
            }
            case 29:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        29
                    )
                );
            }
            case 30:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        30
                    )
                );
            }
            case 31:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        31
                    )
                );
            }
            case 32:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        32
                    )
                );
            }
            case 33:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        33
                    )
                );
            }
            case 34:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        34
                    )
                );
            }
            case 35:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        35
                    )
                );
            }
            case 36:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        36
                    )
                );
            }
            case 37:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        37
                    )
                );
            }
            case 38:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        38
                    )
                );
            }
            case 39:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        39
                    )
                );
            }
            case 40:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        40
                    )
                );
            }
            case 41:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        41
                    )
                );
            }
            case 42:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        42
                    )
                );
            }
            case 43:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        43
                    )
                );
            }
            case 44:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        44
                    )
                );
            }
            case 45:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        45
                    )
                );
            }
            case 46:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        46
                    )
                );
            }
            case 47:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        47
                    )
                );
            }
            case 48:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        48
                    )
                );
            }
            case 49:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        49
                    )
                );
            }
            case 50:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        50
                    )
                );
            }
            case 51:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        51
                    )
                );
            }
            case 52:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        52
                    )
                );
            }
            case 53:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        53
                    )
                );
            }
            case 54:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        54
                    )
                );
            }
            case 55:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        55
                    )
                );
            }
            case 56:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        56
                    )
                );
            }
            case 57:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        57
                    )
                );
            }
            case 58:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        58
                    )
                );
            }
            case 59:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        59
                    )
                );
            }
            case 60:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        60
                    )
                );
            }
            case 61:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        61
                    )
                );
            }
            case 62:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        62
                    )
                );
            }
            case 63:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        63
                    )
                );
            }
            case 64:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        64
                    )
                );
            }
            case 65:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        65
                    )
                );
            }
            case 66:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        66
                    )
                );
            }
            case 67:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        67
                    )
                );
            }
            case 68:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        68
                    )
                );
            }
            case 69:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        69
                    )
                );
            }
            case 70:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        70
                    )
                );
            }
            case 71:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        71
                    )
                );
            }
            case 72:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        72
                    )
                );
            }
            case 73:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        73
                    )
                );
            }
            case 74:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        74
                    )
                );
            }
            case 75:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        75
                    )
                );
            }
            case 76:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        76
                    )
                );
            }
            case 77:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        77
                    )
                );
            }
            case 78:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        78
                    )
                );
            }
            case 79:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        79
                    )
                );
            }
            case 80:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        80
                    )
                );
            }
            case 81:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        81
                    )
                );
            }
            case 82:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        82
                    )
                );
            }
            case 83:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        83
                    )
                );
            }
            case 84:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        84
                    )
                );
            }
            case 85:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        85
                    )
                );
            }
            case 86:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        86
                    )
                );
            }
            case 87:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        87
                    )
                );
            }
            case 88:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        88
                    )
                );
            }
            case 89:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        89
                    )
                );
            }
            case 90:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        90
                    )
                );
            }
            case 91:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        91
                    )
                );
            }
            case 92:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        92
                    )
                );
            }
            case 93:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        93
                    )
                );
            }
            case 94:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        94
                    )
                );
            }
            case 95:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        95
                    )
                );
            }
            case 96:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        96
                    )
                );
            }
            case 97:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        97
                    )
                );
            }
            case 98:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        98
                    )
                );
            }
            case 99:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        99
                    )
                );
            }
            case 100:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        100
                    )
                );
            }
            case 101:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        101
                    )
                );
            }
            case 102:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        102
                    )
                );
            }
            case 103:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        103
                    )
                );
            }
            case 104:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        104
                    )
                );
            }
            case 105:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        105
                    )
                );
            }
            case 106:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        106
                    )
                );
            }
            case 107:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        107
                    )
                );
            }
            case 108:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        108
                    )
                );
            }
            case 109:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        109
                    )
                );
            }
            case 110:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        110
                    )
                );
            }
            case 111:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        111
                    )
                );
            }
            case 112:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        112
                    )
                );
            }
            case 113:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        113
                    )
                );
            }
            case 114:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        114
                    )
                );
            }
            case 115:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        115
                    )
                );
            }
            case 116:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        116
                    )
                );
            }
            case 117:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        117
                    )
                );
            }
            case 118:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        118
                    )
                );
            }
            case 119:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        119
                    )
                );
            }
            case 120:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        120
                    )
                );
            }
            case 121:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        121
                    )
                );
            }
            case 122:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        122
                    )
                );
            }
            case 123:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        123
                    )
                );
            }
            case 124:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        124
                    )
                );
            }
            case 125:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        125
                    )
                );
            }
            case 126:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        126
                    )
                );
            }
            case 127:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        127
                    )
                );
            }
            case 128:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        128
                    )
                );
            }
            case 129:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        129
                    )
                );
            }
            case 130:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        130
                    )
                );
            }
            case 131:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        131
                    )
                );
            }
            case 132:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        132
                    )
                );
            }
            case 133:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        133
                    )
                );
            }
            case 134:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        134
                    )
                );
            }
            case 135:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        135
                    )
                );
            }
            case 136:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        136
                    )
                );
            }
            case 137:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        137
                    )
                );
            }
            case 138:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        138
                    )
                );
            }
            case 139:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        139
                    )
                );
            }
            case 140:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        140
                    )
                );
            }
            case 141:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        141
                    )
                );
            }
            case 142:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        142
                    )
                );
            }
            case 143:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        143
                    )
                );
            }
            case 144:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        144
                    )
                );
            }
            case 145:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        145
                    )
                );
            }
            case 146:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        146
                    )
                );
            }
            case 147:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        147
                    )
                );
            }
            case 148:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        148
                    )
                );
            }
            case 149:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        149
                    )
                );
            }
            case 150:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        150
                    )
                );
            }
            case 151:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        151
                    )
                );
            }
            case 152:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        152
                    )
                );
            }
            case 153:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        153
                    )
                );
            }
            case 154:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        154
                    )
                );
            }
            case 155:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        155
                    )
                );
            }
            case 156:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        156
                    )
                );
            }
            case 157:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        157
                    )
                );
            }
            case 158:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        158
                    )
                );
            }
            case 159:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        159
                    )
                );
            }
            case 160:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        160
                    )
                );
            }
            case 161:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        161
                    )
                );
            }
            case 162:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        162
                    )
                );
            }
            case 163:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        163
                    )
                );
            }
            case 164:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        164
                    )
                );
            }
            case 165:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        165
                    )
                );
            }
            case 166:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        166
                    )
                );
            }
            case 167:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        167
                    )
                );
            }
            case 168:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        168
                    )
                );
            }
            case 169:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        169
                    )
                );
            }
            case 170:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        170
                    )
                );
            }
            case 171:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        171
                    )
                );
            }
            case 172:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        172
                    )
                );
            }
            case 173:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        173
                    )
                );
            }
            case 174:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        174
                    )
                );
            }
            case 175:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        175
                    )
                );
            }
            case 176:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        176
                    )
                );
            }
            case 177:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        177
                    )
                );
            }
            case 178:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        178
                    )
                );
            }
            case 179:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        179
                    )
                );
            }
            case 180:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        180
                    )
                );
            }
            case 181:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        181
                    )
                );
            }
            case 182:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        182
                    )
                );
            }
            case 183:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        183
                    )
                );
            }
            case 184:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        184
                    )
                );
            }
            case 185:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        185
                    )
                );
            }
            case 186:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        186
                    )
                );
            }
            case 187:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        187
                    )
                );
            }
            case 188:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        188
                    )
                );
            }
            case 189:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        189
                    )
                );
            }
            case 190:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        190
                    )
                );
            }
            case 191:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        191
                    )
                );
            }
            case 192:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        192
                    )
                );
            }
            case 193:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        193
                    )
                );
            }
            case 194:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        194
                    )
                );
            }
            case 195:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        195
                    )
                );
            }
            case 196:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        196
                    )
                );
            }
            case 197:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        197
                    )
                );
            }
            case 198:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        198
                    )
                );
            }
            case 199:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        199
                    )
                );
            }
            case 200:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        200
                    )
                );
            }
            case 201:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        201
                    )
                );
            }
            case 202:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        202
                    )
                );
            }
            case 203:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        203
                    )
                );
            }
            case 204:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        204
                    )
                );
            }
            case 205:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        205
                    )
                );
            }
            case 206:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        206
                    )
                );
            }
            case 207:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        207
                    )
                );
            }
            case 208:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        208
                    )
                );
            }
            case 209:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        209
                    )
                );
            }
            case 210:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        210
                    )
                );
            }
            case 211:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        211
                    )
                );
            }
            case 212:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        212
                    )
                );
            }
            case 213:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        213
                    )
                );
            }
            case 214:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        214
                    )
                );
            }
            case 215:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        215
                    )
                );
            }
            case 216:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        216
                    )
                );
            }
            case 217:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        217
                    )
                );
            }
            case 218:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        218
                    )
                );
            }
            case 219:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        219
                    )
                );
            }
            case 220:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        220
                    )
                );
            }
            case 221:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        221
                    )
                );
            }
            case 222:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        222
                    )
                );
            }
            case 223:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        223
                    )
                );
            }
            case 224:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        224
                    )
                );
            }
            case 225:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        225
                    )
                );
            }
            case 226:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        226
                    )
                );
            }
            case 227:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        227
                    )
                );
            }
            case 228:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        228
                    )
                );
            }
            case 229:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        229
                    )
                );
            }
            case 230:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        230
                    )
                );
            }
            case 231:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        231
                    )
                );
            }
            case 232:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        232
                    )
                );
            }
            case 233:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        233
                    )
                );
            }
            case 234:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        234
                    )
                );
            }
            case 235:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        235
                    )
                );
            }
            case 236:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        236
                    )
                );
            }
            case 237:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        237
                    )
                );
            }
            case 238:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        238
                    )
                );
            }
            case 239:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        239
                    )
                );
            }
            case 240:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        240
                    )
                );
            }
            case 241:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        241
                    )
                );
            }
            case 242:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        242
                    )
                );
            }
            case 243:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        243
                    )
                );
            }
            case 244:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        244
                    )
                );
            }
            case 245:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        245
                    )
                );
            }
            case 246:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        246
                    )
                );
            }
            case 247:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        247
                    )
                );
            }
            case 248:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        248
                    )
                );
            }
            case 249:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        249
                    )
                );
            }
            case 250:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        250
                    )
                );
            }
            case 251:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        251
                    )
                );
            }
            case 252:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        252
                    )
                );
            }
            case 253:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        253
                    )
                );
            }
            case 254:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        254
                    )
                );
            }
            case 255:
            {
                return INTRINSIC_CAST(
                    __m256i, TRet, _mm256_permute2f128_si256(
                        INTRINSIC_CAST(TArg1, __m256i, arg1),
                        INTRINSIC_CAST(TArg2, __m256i, arg2),
                        255
                    )
                );
            }
            default:
                il2cpp_codegen_raise_argument_out_of_range_exception(NULL);
                break;
        }
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    template<typename TRet, typename TArg1, typename TArg2, typename TArg3, int TArg3Value>
    inline TRet il2cpp_intrinsic_avx_permute2x128_9F92A(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        if (TArg3Value < 0 || TArg3Value > 255)
            il2cpp_codegen_raise_argument_out_of_range_exception(NULL);

        return INTRINSIC_CAST(
            __m256i, TRet, _mm256_permute2f128_si256(
                INTRINSIC_CAST(TArg1, __m256i, arg1),
                INTRINSIC_CAST(TArg2, __m256i, arg2),
                TArg3Value
            )
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
        return {};
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::MaskStore(System.Double*,System.Runtime.Intrinsics.Vector128`1<System.Double>,System.Runtime.Intrinsics.Vector128`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_mask_store_5B47A(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm_maskstore_pd(
            INTRINSIC_CAST(TArg1, double *, arg1),
            INTRINSIC_CAST(TArg2, __m128i, arg2),
            INTRINSIC_CAST(TArg3, __m128d, arg3)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::MaskStore(System.Double*,System.Runtime.Intrinsics.Vector256`1<System.Double>,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_mask_store_26520(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_maskstore_pd(
            INTRINSIC_CAST(TArg1, double *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2),
            INTRINSIC_CAST(TArg3, __m256d, arg3)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::MaskStore(System.Single*,System.Runtime.Intrinsics.Vector128`1<System.Single>,System.Runtime.Intrinsics.Vector128`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_mask_store_8F31F(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm_maskstore_ps(
            INTRINSIC_CAST(TArg1, float *, arg1),
            INTRINSIC_CAST(TArg2, __m128i, arg2),
            INTRINSIC_CAST(TArg3, __m128, arg3)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::MaskStore(System.Single*,System.Runtime.Intrinsics.Vector256`1<System.Single>,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2, typename TArg3>
    inline TRet il2cpp_intrinsic_avx_mask_store_43D87(TArg1 arg1, TArg2 arg2, TArg3 arg3)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_maskstore_ps(
            INTRINSIC_CAST(TArg1, float *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2),
            INTRINSIC_CAST(TArg3, __m256, arg3)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::Store(System.Byte*,System.Runtime.Intrinsics.Vector256`1<System.Byte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_52182(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_storeu_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::Store(System.Double*,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_28E1E(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_storeu_pd(
            INTRINSIC_CAST(TArg1, double *, arg1),
            INTRINSIC_CAST(TArg2, __m256d, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::Store(System.Int16*,System.Runtime.Intrinsics.Vector256`1<System.Int16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_6B40B(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_storeu_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::Store(System.Int32*,System.Runtime.Intrinsics.Vector256`1<System.Int32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_428F1(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_storeu_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::Store(System.Int64*,System.Runtime.Intrinsics.Vector256`1<System.Int64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_B1F57(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_storeu_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::Store(System.SByte*,System.Runtime.Intrinsics.Vector256`1<System.SByte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_11DC1(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_storeu_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::Store(System.Single*,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_7D78A(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_storeu_ps(
            INTRINSIC_CAST(TArg1, float *, arg1),
            INTRINSIC_CAST(TArg2, __m256, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::Store(System.UInt16*,System.Runtime.Intrinsics.Vector256`1<System.UInt16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_59DA7(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_storeu_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::Store(System.UInt32*,System.Runtime.Intrinsics.Vector256`1<System.UInt32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_ACE84(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_storeu_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::Store(System.UInt64*,System.Runtime.Intrinsics.Vector256`1<System.UInt64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_C6492(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_storeu_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAligned(System.Byte*,System.Runtime.Intrinsics.Vector256`1<System.Byte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_52182(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_store_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAligned(System.Double*,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_28E1E(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_store_pd(
            INTRINSIC_CAST(TArg1, double *, arg1),
            INTRINSIC_CAST(TArg2, __m256d, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAligned(System.Int16*,System.Runtime.Intrinsics.Vector256`1<System.Int16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_6B40B(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_store_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAligned(System.Int32*,System.Runtime.Intrinsics.Vector256`1<System.Int32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_428F1(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_store_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAligned(System.Int64*,System.Runtime.Intrinsics.Vector256`1<System.Int64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_B1F57(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_store_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAligned(System.SByte*,System.Runtime.Intrinsics.Vector256`1<System.SByte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_11DC1(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_store_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAligned(System.Single*,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_7D78A(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_store_ps(
            INTRINSIC_CAST(TArg1, float *, arg1),
            INTRINSIC_CAST(TArg2, __m256, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAligned(System.UInt16*,System.Runtime.Intrinsics.Vector256`1<System.UInt16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_59DA7(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_store_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAligned(System.UInt32*,System.Runtime.Intrinsics.Vector256`1<System.UInt32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_ACE84(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_store_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAligned(System.UInt64*,System.Runtime.Intrinsics.Vector256`1<System.UInt64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_C6492(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_store_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAlignedNonTemporal(System.Byte*,System.Runtime.Intrinsics.Vector256`1<System.Byte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_non_temporal_52182(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_stream_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAlignedNonTemporal(System.Double*,System.Runtime.Intrinsics.Vector256`1<System.Double>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_non_temporal_28E1E(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_stream_pd(
            INTRINSIC_CAST(TArg1, double *, arg1),
            INTRINSIC_CAST(TArg2, __m256d, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAlignedNonTemporal(System.Int16*,System.Runtime.Intrinsics.Vector256`1<System.Int16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_non_temporal_6B40B(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_stream_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAlignedNonTemporal(System.Int32*,System.Runtime.Intrinsics.Vector256`1<System.Int32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_non_temporal_428F1(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_stream_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAlignedNonTemporal(System.Int64*,System.Runtime.Intrinsics.Vector256`1<System.Int64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_non_temporal_B1F57(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_stream_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAlignedNonTemporal(System.SByte*,System.Runtime.Intrinsics.Vector256`1<System.SByte>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_non_temporal_11DC1(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_stream_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAlignedNonTemporal(System.Single*,System.Runtime.Intrinsics.Vector256`1<System.Single>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_non_temporal_7D78A(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_stream_ps(
            INTRINSIC_CAST(TArg1, float *, arg1),
            INTRINSIC_CAST(TArg2, __m256, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAlignedNonTemporal(System.UInt16*,System.Runtime.Intrinsics.Vector256`1<System.UInt16>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_non_temporal_59DA7(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_stream_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAlignedNonTemporal(System.UInt32*,System.Runtime.Intrinsics.Vector256`1<System.UInt32>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_non_temporal_ACE84(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_stream_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }

    /* METHOD MAPPING
        Method: System.Void System.Runtime.Intrinsics.X86.Avx::StoreAlignedNonTemporal(System.UInt64*,System.Runtime.Intrinsics.Vector256`1<System.UInt64>)
        AssemblyName: System.Private.CoreLib
        EmitTemplateParams: true
    */
    template<typename TRet, typename TArg1, typename TArg2>
    inline TRet il2cpp_intrinsic_avx_store_aligned_non_temporal_C6492(TArg1 arg1, TArg2 arg2)
    {
#if IL2CPP_AVX_IS_SUPPORTED
        _mm256_stream_si256(
            INTRINSIC_CAST(TArg1, __m256i *, arg1),
            INTRINSIC_CAST(TArg2, __m256i, arg2)
        );
#else
        il2cpp_codegen_raise_platform_not_supported_exception(NULL);
#endif
    }
} // namespace X86
} // namespace Intrinsics
} // namespace Runtime
} // namespace System
} // namespace System_Private_CoreLib
} // namespace intrinsics
} // namespace il2cpp
