# Copyright Advanced Micro Devices, Inc., or its affiliates.
# SPDX-License-Identifier:  MIT

target_sources(rocroller
    PRIVATE
        "${CMAKE_CURRENT_SOURCE_DIR}/AssemblyKernel.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/AssemblyKernelArgument.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/AssemblyKernel_serialization.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/AssertOpKinds.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/CommandSolution.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Command_serialization.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/CommonSubexpressionElim.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Context.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/DataTypes.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/DataTypes_BF16_Utils.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/DataTypes_F6_Utils.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/DataTypes_F8_Utils.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/DataTypes_Utils.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Error.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/ExecutableKernel.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_contains.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_creation.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_evaluate.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_evaluate_binary_arithmetic.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_evaluate_binary_comparison.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_evaluate_binary_logic_bitwise.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_evaluate_binary_shift_srconvert.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_evaluate_ternary.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_evaluate_unary.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_generate.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_referencedKernelArguments.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_resultType.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_serialization.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Expression_toString.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/GPUArchitecture.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/GPUArchitectureLibrary.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/GPUArchitectureTarget.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/GPUInstructionInfo.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/HIPTimer.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/KernelArguments.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/KernelOptions.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/LDSAllocator.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/LDSModel.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Logging.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Random.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Register.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/ReplaceKernelArgs.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/ScheduledInstructions.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Scheduler.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Scheduling.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/TensorDescriptor.cpp"
        "${CMAKE_CURRENT_SOURCE_DIR}/Timer.cpp"
)

add_subdirectory(Assemblers)
add_subdirectory(Schedulers)
add_subdirectory(CodeGen)
add_subdirectory(Costs)
add_subdirectory(ExpressionTransformations)
add_subdirectory(Observers)
add_subdirectory(Operations)
add_subdirectory(Utilities)
add_subdirectory(Parameters)
add_subdirectory(Graph)
add_subdirectory(KernelGraph)
