def fuse_conv_elementwise(sorted_graph: List[Tensor], _: str) -> List[Tensor]:
    """
    Fuse conv + elementwise ops. The second argument is unused, it's only
    here to make the type of this function the same as the others called in optimize_graph.
    """
    funcs = [
        _transform_conv2d_bias,
        _transform_conv2d_bias_elementwise,
    ]
    for func in funcs:
        sorted_graph = func(sorted_graph)

    from aitemplate.backend.target import Target

    if Target.current().name() == "cuda":
        funcs = [
            _transform_cuda_only_conv2d_bias_elementwise,
        ]
        for func in funcs:
            sorted_graph = func(sorted_graph)
    return sorted_graph

    Fuse conv + elementwise ops. The second argument is unused, it's only
    here to make the type of this function the same as the others called in optimize_graph.
    
python/aitemplate/compiler/transform/fuse_conv_elementwise.py