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_"))
    macro blasfunc(x)
        return Expr(:quote, x)
julia> @blasfunc some_expr


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.