Lines Matching refs:sme_vl

27 extern void do_syscall(int sve_vl, int sme_vl);
55 static void setup_gpr(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in setup_gpr() argument
63 static int check_gpr(struct syscall_cfg *cfg, int sve_vl, int sme_vl, uint64_t svcr) in check_gpr() argument
87 static void setup_fpr(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in setup_fpr() argument
94 static int check_fpr(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in check_fpr() argument
121 static void setup_z(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in setup_z() argument
128 static int check_z(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in check_z() argument
180 static void setup_p(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in setup_p() argument
187 static int check_p(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in check_p() argument
212 static void setup_ffr(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in setup_ffr() argument
234 static int check_ffr(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in check_ffr() argument
261 static void setup_svcr(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in setup_svcr() argument
267 static int check_svcr(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in check_svcr() argument
290 static void setup_za(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in setup_za() argument
297 static int check_za(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in check_za() argument
300 size_t reg_size = sme_vl * sme_vl; in check_za()
307 ksft_print_msg("SME VL %d ZA does not match\n", sme_vl); in check_za()
314 typedef void (*setup_fn)(struct syscall_cfg *cfg, int sve_vl, int sme_vl,
316 typedef int (*check_fn)(struct syscall_cfg *cfg, int sve_vl, int sme_vl,
339 static bool do_test(struct syscall_cfg *cfg, int sve_vl, int sme_vl, in do_test() argument
346 regset[i].setup(cfg, sve_vl, sme_vl, svcr); in do_test()
348 do_syscall(sve_vl, sme_vl); in do_test()
351 errors += regset[i].check(cfg, sve_vl, sme_vl, svcr); in do_test()
359 int sme_vq, sme_vl; in test_one_syscall() local
386 sme_vl = prctl(PR_SME_SET_VL, sme_vq * 16); in test_one_syscall()
387 if (sme_vl == -1) in test_one_syscall()
391 sme_vl &= PR_SME_VL_LEN_MASK; in test_one_syscall()
393 if (sme_vq != sve_vq_from_vl(sme_vl)) in test_one_syscall()
394 sme_vq = sve_vq_from_vl(sme_vl); in test_one_syscall()
396 ksft_test_result(do_test(cfg, sve_vl, sme_vl, in test_one_syscall()
399 cfg->name, sve_vl, sme_vl); in test_one_syscall()
400 ksft_test_result(do_test(cfg, sve_vl, sme_vl, in test_one_syscall()
403 cfg->name, sve_vl, sme_vl); in test_one_syscall()
404 ksft_test_result(do_test(cfg, sve_vl, sme_vl, in test_one_syscall()
407 cfg->name, sve_vl, sme_vl); in test_one_syscall()