/// <summary> /// Constructs a new generic backend. /// </summary> /// <param name="context">The context to use.</param> /// <param name="backendType">The backend type.</param> /// <param name="backendFlags">The backend flags.</param> /// <param name="argumentMapper">The argument mapper to use.</param> protected Backend( Context context, BackendType backendType, BackendFlags backendFlags, ArgumentMapper argumentMapper) : base(context, backendType, backendFlags, argumentMapper) { IntrinsicProvider = context.IntrinsicManager.CreateProvider <TDelegate>(this); }
/// <summary> /// Constructs a new generic backend. /// </summary> /// <param name="context">The context to use.</param> /// <param name="backendType">The backend type.</param> /// <param name="backendFlags">The backend flags.</param> /// <param name="argumentMapper">The argument mapper to use.</param> protected CodeGeneratorBackend( Context context, BackendType backendType, BackendFlags backendFlags, ArgumentMapper argumentMapper) : base( context, backendType, backendFlags, argumentMapper) { }
/// <summary> /// Constructs a new IL backend. /// </summary> /// <param name="context">The context to use.</param> /// <param name="backendFlags">The backend flags.</param> /// <param name="warpSize">The current warp size.</param> /// <param name="argumentMapper">The argument mapper to use.</param> internal ILBackend( Context context, BackendFlags backendFlags, int warpSize, ArgumentMapper argumentMapper) : base( context, BackendType.IL, backendFlags, argumentMapper) { WarpSize = warpSize; }
/// <summary> /// Constructs a new IL backend. /// </summary> /// <param name="context">The context to use.</param> /// <param name="backendFlags">The backend flags.</param> /// <param name="warpSize">The current warp size.</param> /// <param name="argumentMapperProvider">The provider for argument mappers.</param> internal ILBackend( Context context, BackendFlags backendFlags, int warpSize, Func <ABI, ArgumentMapper> argumentMapperProvider) : base( context, BackendType.IL, backendFlags, new ILABI(context.TypeContext, RuntimePlatform), argumentMapperProvider) { WarpSize = warpSize; }
/// <summary> /// Constructs a new generic backend. /// </summary> /// <param name="context">The context to use.</param> /// <param name="capabilities">The supported capabilities.</param> /// <param name="backendType">The backend type.</param> /// <param name="backendFlags">The backend flags.</param> /// <param name="argumentMapper">The argument mapper to use.</param> protected CodeGeneratorBackend( Context context, CapabilityContext capabilities, BackendType backendType, BackendFlags backendFlags, ArgumentMapper argumentMapper) : base( context, capabilities, backendType, backendFlags, argumentMapper) { }
/// <summary> /// Constructs a new generic backend. /// </summary> /// <param name="context">The context to use.</param> /// <param name="backendType">The backend type.</param> /// <param name="backendFlags">The backend flags.</param> /// <param name="abi">The current ABI.</param> /// <param name="argumentMapperProvider">The provider for argument mappers.</param> protected CodeGeneratorBackend( Context context, BackendType backendType, BackendFlags backendFlags, ABI abi, Func <ABI, ArgumentMapper> argumentMapperProvider) : base( context, backendType, backendFlags, abi, argumentMapperProvider) { }