Lines Matching full:vector
21 * PSTATE.SM, PSTATE.ZA, the streaming mode vector length, the ZA
24 * The presence of SME is reported to userspace via HWCAP2_SME in the aux vector
69 2. Vector lengths
72 SME defines a second vector length similar to the SVE vector length which is
75 mode SVE vector.
103 * All other SME state of a thread, including the currently configured vector
104 length, the state of the PR_SME_VL_INHERIT flag, and the deferred vector
118 the thread's vector length (in za_context.vl).
150 * The vector length cannot be changed via signal return. If za_context.vl in
151 the signal frame does not match the current vector length, the signal return
158 Some new prctl() calls are added to allow programs to manage the SME vector
163 Sets the vector length of the calling thread and related flags, where
166 vl is the desired vector length, where sve_vl_valid(vl) must be true.
172 Inherit the current vector length across execve(). Otherwise, the
173 vector length is reset to the system default at execve(). (See
178 Defer the requested vector length change until the next execve()
186 This allows launching of a new program with a different vector
194 EINVAL: SME not supported, invalid vector length requested, or
200 * Either the calling thread's vector length or the deferred vector length
207 * Any previously outstanding deferred vector length change in the calling
211 PR_SME_GET_VL. The vector length reported in this value is the new
212 current vector length for this thread if PR_SME_SET_VL_ONEXEC was not
213 present in arg; otherwise, the reported vector length is the deferred
214 vector length that will be applied at the next execve() by the calling
217 * Changing the vector length causes all of ZA, P0..P15, FFR and all bits of
220 Calling PR_SME_SET_VL with vl equal to the thread's current vector
222 does not constitute a change to the vector length for this purpose.
224 * Changing the vector length causes PSTATE.ZA and PSTATE.SM to be cleared.
225 Calling PR_SME_SET_VL with vl equal to the thread's current vector
227 does not constitute a change to the vector length for this purpose.
232 Gets the vector length of the calling thread.
238 Vector length will be inherited across execve().
241 vector length change (which would only normally be the case between a
244 To extract the vector length from the result, bitwise and it with
278 thread changes its vector length etc.
282 Target thread's current streaming vector length, in bytes.
286 Maximum possible streaming vector length for the target thread.
297 * The effects of changing the vector length and/or flags are equivalent to
308 case the vector length and flags are changed and PSTATE.ZA is set to 0
315 for the vector length actually set. It is up to the caller to translate the
343 to set the default vector length for userspace processes:
348 default vector length to the specified value, unless the value is greater
349 than the maximum vector length supported by the system in which case the
350 default vector length is set to that maximum.
355 At boot, the default vector length is initially set to 32 or the maximum
356 supported vector length, whichever is smaller and supported. This
357 determines the initial vector length of the init process (PID 1).
359 Reading this file returns the current system default vector length.
361 * At every execve() call, the new vector length of the new process is set to
362 the system default vector length, unless
367 * a deferred vector length change is pending, established via the
370 * Modifying the system default vector length does not affect the vector length
395 * A new vector length controlling the size of ZA and the Z registers when in
396 streaming mode, separately to the vector length used for SVE when not in
398 vector length or the set of vector lengths supported for the two modes in
399 a given system have any relationship. The streaming mode vector length