Lines Matching +full:4 +full:v
33 #define rseq_smp_store_release(p, v) \ argument
36 RSEQ_WRITE_ONCE(*p, v); \
213 int rseq_cmpeqv_storev(intptr_t *v, intptr_t expect, intptr_t newv, int cpu) in rseq_cmpeqv_storev() argument
218 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_storev()
227 RSEQ_ASM_CMP_CPU_ID(cpu_id, current_cpu_id, 4f) in rseq_cmpeqv_storev()
229 /* cmp @v equal to @expect */ in rseq_cmpeqv_storev()
230 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_storev()
231 RSEQ_INJECT_ASM(4) in rseq_cmpeqv_storev()
235 /* cmp @v equal to @expect */ in rseq_cmpeqv_storev()
236 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_storev()
239 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_storev()
241 RSEQ_ASM_DEFINE_ABORT(4, abort) in rseq_cmpeqv_storev()
246 [v] "m" (*v), in rseq_cmpeqv_storev()
277 int rseq_cmpnev_storeoffp_load(intptr_t *v, intptr_t expectnot, in rseq_cmpnev_storeoffp_load() argument
283 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpnev_storeoffp_load()
292 RSEQ_ASM_CMP_CPU_ID(cpu_id, current_cpu_id, 4f) in rseq_cmpnev_storeoffp_load()
294 /* cmp @v not equal to @expectnot */ in rseq_cmpnev_storeoffp_load()
295 RSEQ_ASM_OP_CMPNE(v, expectnot, %l[cmpfail]) in rseq_cmpnev_storeoffp_load()
296 RSEQ_INJECT_ASM(4) in rseq_cmpnev_storeoffp_load()
300 /* cmp @v not equal to @expectnot */ in rseq_cmpnev_storeoffp_load()
301 RSEQ_ASM_OP_CMPNE(v, expectnot, %l[error2]) in rseq_cmpnev_storeoffp_load()
303 /* load the value of @v */ in rseq_cmpnev_storeoffp_load()
304 RSEQ_ASM_OP_R_LOAD(v) in rseq_cmpnev_storeoffp_load()
307 /* dereference voffp(v) */ in rseq_cmpnev_storeoffp_load()
309 /* final store the value at voffp(v) */ in rseq_cmpnev_storeoffp_load()
310 RSEQ_ASM_OP_R_FINAL_STORE(v, 2) in rseq_cmpnev_storeoffp_load()
312 RSEQ_ASM_DEFINE_ABORT(4, abort) in rseq_cmpnev_storeoffp_load()
318 [v] "m" (*v), in rseq_cmpnev_storeoffp_load()
350 int rseq_addv(intptr_t *v, intptr_t count, int cpu) in rseq_addv() argument
355 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_addv()
362 RSEQ_ASM_CMP_CPU_ID(cpu_id, current_cpu_id, 4f) in rseq_addv()
368 /* load the value of @v */ in rseq_addv()
369 RSEQ_ASM_OP_R_LOAD(v) in rseq_addv()
373 RSEQ_ASM_OP_R_FINAL_STORE(v, 2) in rseq_addv()
374 RSEQ_INJECT_ASM(4) in rseq_addv()
375 RSEQ_ASM_DEFINE_ABORT(4, abort) in rseq_addv()
381 [v] "m" (*v), in rseq_addv()
405 int rseq_cmpeqv_trystorev_storev(intptr_t *v, intptr_t expect, in rseq_cmpeqv_trystorev_storev() argument
412 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_trystorev_storev()
421 RSEQ_ASM_CMP_CPU_ID(cpu_id, current_cpu_id, 4f) in rseq_cmpeqv_trystorev_storev()
423 /* cmp @v equal to @expect */ in rseq_cmpeqv_trystorev_storev()
424 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_trystorev_storev()
425 RSEQ_INJECT_ASM(4) in rseq_cmpeqv_trystorev_storev()
429 /* cmp @v equal to @expect */ in rseq_cmpeqv_trystorev_storev()
430 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_trystorev_storev()
436 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_trystorev_storev()
438 RSEQ_ASM_DEFINE_ABORT(4, abort) in rseq_cmpeqv_trystorev_storev()
447 [v] "m" (*v), in rseq_cmpeqv_trystorev_storev()
478 int rseq_cmpeqv_trystorev_storev_release(intptr_t *v, intptr_t expect, in rseq_cmpeqv_trystorev_storev_release() argument
485 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_trystorev_storev_release()
494 RSEQ_ASM_CMP_CPU_ID(cpu_id, current_cpu_id, 4f) in rseq_cmpeqv_trystorev_storev_release()
496 /* cmp @v equal to @expect */ in rseq_cmpeqv_trystorev_storev_release()
497 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_trystorev_storev_release()
498 RSEQ_INJECT_ASM(4) in rseq_cmpeqv_trystorev_storev_release()
502 /* cmp @v equal to @expect */ in rseq_cmpeqv_trystorev_storev_release()
503 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_trystorev_storev_release()
511 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_trystorev_storev_release()
513 RSEQ_ASM_DEFINE_ABORT(4, abort) in rseq_cmpeqv_trystorev_storev_release()
522 [v] "m" (*v), in rseq_cmpeqv_trystorev_storev_release()
553 int rseq_cmpeqv_cmpeqv_storev(intptr_t *v, intptr_t expect, in rseq_cmpeqv_cmpeqv_storev() argument
560 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_cmpeqv_storev()
570 RSEQ_ASM_CMP_CPU_ID(cpu_id, current_cpu_id, 4f) in rseq_cmpeqv_cmpeqv_storev()
572 /* cmp @v equal to @expect */ in rseq_cmpeqv_cmpeqv_storev()
573 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_cmpeqv_storev()
574 RSEQ_INJECT_ASM(4) in rseq_cmpeqv_cmpeqv_storev()
581 /* cmp @v equal to @expect */ in rseq_cmpeqv_cmpeqv_storev()
582 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_cmpeqv_storev()
587 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_cmpeqv_storev()
589 RSEQ_ASM_DEFINE_ABORT(4, abort) in rseq_cmpeqv_cmpeqv_storev()
598 [v] "m" (*v), in rseq_cmpeqv_cmpeqv_storev()
632 int rseq_cmpeqv_trymemcpy_storev(intptr_t *v, intptr_t expect, in rseq_cmpeqv_trymemcpy_storev() argument
639 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_trymemcpy_storev()
652 RSEQ_ASM_CMP_CPU_ID(cpu_id, current_cpu_id, 4f) in rseq_cmpeqv_trymemcpy_storev()
654 /* cmp @v equal to @expect */ in rseq_cmpeqv_trymemcpy_storev()
655 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_trymemcpy_storev()
656 RSEQ_INJECT_ASM(4) in rseq_cmpeqv_trymemcpy_storev()
660 /* cmp @v equal to @expect */ in rseq_cmpeqv_trymemcpy_storev()
661 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_trymemcpy_storev()
667 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_trymemcpy_storev()
670 RSEQ_ASM_DEFINE_ABORT(4, abort) in rseq_cmpeqv_trymemcpy_storev()
676 [v] "m" (*v), in rseq_cmpeqv_trymemcpy_storev()
711 int rseq_cmpeqv_trymemcpy_storev_release(intptr_t *v, intptr_t expect, in rseq_cmpeqv_trymemcpy_storev_release() argument
718 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_trymemcpy_storev_release()
731 RSEQ_ASM_CMP_CPU_ID(cpu_id, current_cpu_id, 4f) in rseq_cmpeqv_trymemcpy_storev_release()
733 /* cmp @v equal to @expect */ in rseq_cmpeqv_trymemcpy_storev_release()
734 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_trymemcpy_storev_release()
735 RSEQ_INJECT_ASM(4) in rseq_cmpeqv_trymemcpy_storev_release()
739 /* cmp @v equal to @expect */ in rseq_cmpeqv_trymemcpy_storev_release()
740 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_trymemcpy_storev_release()
748 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_trymemcpy_storev_release()
751 RSEQ_ASM_DEFINE_ABORT(4, abort) in rseq_cmpeqv_trymemcpy_storev_release()
757 [v] "m" (*v), in rseq_cmpeqv_trymemcpy_storev_release()