Lines Matching +full:a +full:- +full:za +full:- +full:z
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * You should have received a copy of the GNU General Public License
25 * Signal context structure - contains all info to do with the state
53 * New records that can exceed this space need to be opt-in for userspace, so
63 * and be 16-byte aligned. The last structure must be a dummy one with the
67 * be meaningful in ASCII to aid manual parsing, ZA doesn't follow this
85 * Note: similarly to all other integer fields, each V-register is stored in an
86 * endianness-dependent format, with the byte at offset i from the start of the
87 * in-memory representation of the register value containing
89 * bits [(7 + 8 * i) : (8 * i)] of the register on little-endian hosts; or
90 * bits [(127 - 8 * i) : (120 - 8 * i)] on big-endian hosts.
119 * 16-byte aligned address immediately after the terminating null
122 * as indicated by a sufficiently large value for the size field.
124 * 5) The extra space must itself be terminated with a null
131 __u64 datap; /* 16-byte aligned pointer to extra space cast to __u64 */
180 * See linux/Documentation/arch/arm64/sve.rst for a description of the VL/VQ
210 * The same convention applies when returning from a signal: a caller
212 * make the SVE registers live when they were previously non-live or
213 * vice-versa. This may require the caller to allocate fresh
218 * doing a sigreturn.
221 * streaming or non-streaming mode. In streaming mode the streaming mode
224 * a signal return, applications should take care to ensure that any difference
233 * guaranteed for a struct sve_context written by the kernel.
242 * - ---- -----------
245 * ZREGS __uint128_t[SVE_NUM_ZREGS][vq] all Z-registers
246 * ZREG __uint128_t[vq] individual Z-register Zn
248 * PREGS uint16_t[SVE_NUM_PREGS][vq] all P-registers
249 * PREG uint16_t[vq] individual P-register Pn
251 * FFR uint16_t[vq] first-fault status register
255 * Unlike vregs[] in fpsimd_context, each SVE scalable register (Z-, P- or FFR)
256 * is encoded in memory in an endianness-invariant format, with the byte at
257 * offset i from the start of the in-memory representation containing bits
266 ((sizeof(struct sve_context) + (__SVE_VQ_BYTES - 1)) \
291 * If the ZA register is enabled for the thread at signal delivery then,
296 * then ZA was not enabled and no register data was included in which case
297 * ZA register was not enabled for the thread and no register data
300 * The same convention applies when returning from a signal: a caller
302 * enable the ZA register when it was previously non-live or vice-versa.
308 * doing a sigreturn.
312 ((sizeof(struct za_context) + (__SVE_VQ_BYTES - 1)) \