Documentation for `blasfunc` and `@blasfunc`

They both live in Base.BLAS. But I just couldn’t find the doc for either of them here or even the entire site of Julia Doc. Any pointer is much appreciated!!

@blasfunc is a simple macro which returns a quoted symbol of the argument, with _64 appended if your Julia installation uses the 64-bit OpenBLAS library. It allows developers to eliminate the identical boilerplate that’d otherwise be required to handle both 32 and 64-bit OpenBLAS installations. It’s of little relevance to anybody but Base.BLAS developers.

if vendor() == :openblas64
    macro blasfunc(x)
        return Expr(:quote, Symbol(x, "64_"))
    end
else
    macro blasfunc(x)
        return Expr(:quote, x)
    end
end
julia> @blasfunc some_expr
Symbol("some_expr64_")
2 Likes

Thanks for the hint!!

You can search through source code with something like

julia> @less @Base.BLAS.blasfunc("some_expr64_")

Thanks! But it unloads me tons of doc, some of which is totally irrelevant.