@@ -60,7 +60,7 @@ Options specified at the end (if several, separated by `,`) are:
6060
6161Some modifications to broadcasting are possible, after loading the corresponding package:
6262* `@cast @strided Z[i,j] := ...` uses Strided.jl's macro, for multi-threaded broadcasting.
63- * `@cast @avx Z[i,j] := ...` uses LoopVectorization.jl's macro, for SIMD acceleration.
63+ * `@cast @turbo Z[i,j] := ...` uses LoopVectorization.jl's macro, for SIMD acceleration.
6464* `@cast @lazy Z[i,j] := ...` uses LazyArrays.jl's BroadcastArray type, although there is no such macro.
6565
6666To create static slices `D[k]{i,j}` you should give all slice dimensions explicitly.
@@ -104,7 +104,7 @@ The option `@lazy` replaces the broadcast expression with a `BroadcastArray`,
104104to avoid `materialize`ing the entire array before summing. In the example this is of size `N^3`.
105105This needs `using LazyArrays` to work.
106106
107- The options `@strided` and `@avx ` will alter broadcasting operations,
107+ The options `@strided` and `@turbo ` will alter broadcasting operations,
108108and need `using Strided` or `using LoopVectorization` to work.
109109
110110 @reduce sum(i) A[i] * log(@reduce _[i] := sum(j) A[j] * exp(B[i,j]))
@@ -157,7 +157,7 @@ function _macro(exone, extwo=nothing, exthree=nothing; call::CallInfo=CallInfo()
157157
158158 if Meta. isexpr (exone, :macrocall )
159159 # New style @cast @avx A[i] := B[i]
160- string (exone. args[1 ]) in (" @lazy" , " @strided" , " @avx" , " @avxt" ) || throw (MacroError (
160+ string (exone. args[1 ]) in (" @lazy" , " @strided" , " @avx" , " @avxt" , " @turbo " , " @tturbo " ) || throw (MacroError (
161161 " the macro $(exone. args[1 ]) isn't one of the ones this understands" , call))
162162 push! (call. flags, Symbol (string (exone. args[1 ])[2 : end ]), :premacro )
163163 return _macro (exone. args[3 : end ]. .. ; call= call, dict= dict)
0 commit comments