Lines Matching +full:3 +full:v
33 #define rseq_smp_store_release(p, v) \ argument
36 RSEQ_WRITE_ONCE(*p, v); \
207 int rseq_cmpeqv_storev(intptr_t *v, intptr_t expect, intptr_t newv, int cpu) in rseq_cmpeqv_storev() argument
212 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_storev()
219 RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs) in rseq_cmpeqv_storev()
222 RSEQ_INJECT_ASM(3) in rseq_cmpeqv_storev()
223 /* cmp @v equal to @expect */ in rseq_cmpeqv_storev()
224 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_storev()
229 /* cmp @v equal to @expect */ in rseq_cmpeqv_storev()
230 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_storev()
233 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_storev()
240 [v] "m" (*v), in rseq_cmpeqv_storev()
266 int rseq_cmpnev_storeoffp_load(intptr_t *v, intptr_t expectnot, in rseq_cmpnev_storeoffp_load() argument
272 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpnev_storeoffp_load()
279 RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs) in rseq_cmpnev_storeoffp_load()
282 RSEQ_INJECT_ASM(3) in rseq_cmpnev_storeoffp_load()
283 /* cmp @v not equal to @expectnot */ in rseq_cmpnev_storeoffp_load()
284 RSEQ_ASM_OP_CMPNE(v, expectnot, %l[cmpfail]) in rseq_cmpnev_storeoffp_load()
289 /* cmp @v not equal to @expectnot */ in rseq_cmpnev_storeoffp_load()
290 RSEQ_ASM_OP_CMPNE(v, expectnot, %l[error2]) in rseq_cmpnev_storeoffp_load()
292 /* load the value of @v */ in rseq_cmpnev_storeoffp_load()
293 RSEQ_ASM_OP_R_LOAD(v) in rseq_cmpnev_storeoffp_load()
296 /* dereference voffp(v) */ in rseq_cmpnev_storeoffp_load()
298 /* final store the value at voffp(v) */ in rseq_cmpnev_storeoffp_load()
299 RSEQ_ASM_OP_R_FINAL_STORE(v, 2) in rseq_cmpnev_storeoffp_load()
307 [v] "m" (*v), in rseq_cmpnev_storeoffp_load()
334 int rseq_addv(intptr_t *v, intptr_t count, int cpu) in rseq_addv() argument
339 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_addv()
344 RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs) in rseq_addv()
347 RSEQ_INJECT_ASM(3) in rseq_addv()
352 /* load the value of @v */ in rseq_addv()
353 RSEQ_ASM_OP_R_LOAD(v) in rseq_addv()
357 RSEQ_ASM_OP_R_FINAL_STORE(v, 2) in rseq_addv()
365 [v] "m" (*v), in rseq_addv()
386 int rseq_cmpeqv_trystorev_storev(intptr_t *v, intptr_t expect, in rseq_cmpeqv_trystorev_storev() argument
393 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_trystorev_storev()
400 RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs) in rseq_cmpeqv_trystorev_storev()
403 RSEQ_INJECT_ASM(3) in rseq_cmpeqv_trystorev_storev()
404 /* cmp @v equal to @expect */ in rseq_cmpeqv_trystorev_storev()
405 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_trystorev_storev()
410 /* cmp @v equal to @expect */ in rseq_cmpeqv_trystorev_storev()
411 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_trystorev_storev()
417 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_trystorev_storev()
428 [v] "m" (*v), in rseq_cmpeqv_trystorev_storev()
454 int rseq_cmpeqv_trystorev_storev_release(intptr_t *v, intptr_t expect, in rseq_cmpeqv_trystorev_storev_release() argument
461 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_trystorev_storev_release()
468 RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs) in rseq_cmpeqv_trystorev_storev_release()
471 RSEQ_INJECT_ASM(3) in rseq_cmpeqv_trystorev_storev_release()
472 /* cmp @v equal to @expect */ in rseq_cmpeqv_trystorev_storev_release()
473 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_trystorev_storev_release()
478 /* cmp @v equal to @expect */ in rseq_cmpeqv_trystorev_storev_release()
479 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_trystorev_storev_release()
487 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_trystorev_storev_release()
498 [v] "m" (*v), in rseq_cmpeqv_trystorev_storev_release()
524 int rseq_cmpeqv_cmpeqv_storev(intptr_t *v, intptr_t expect, in rseq_cmpeqv_cmpeqv_storev() argument
531 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_cmpeqv_storev()
539 RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs) in rseq_cmpeqv_cmpeqv_storev()
542 RSEQ_INJECT_ASM(3) in rseq_cmpeqv_cmpeqv_storev()
543 /* cmp @v equal to @expect */ in rseq_cmpeqv_cmpeqv_storev()
544 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_cmpeqv_storev()
552 /* cmp @v equal to @expect */ in rseq_cmpeqv_cmpeqv_storev()
553 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_cmpeqv_storev()
558 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_cmpeqv_storev()
569 [v] "m" (*v), in rseq_cmpeqv_cmpeqv_storev()
597 int rseq_cmpeqv_trymemcpy_storev(intptr_t *v, intptr_t expect, in rseq_cmpeqv_trymemcpy_storev() argument
604 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_trymemcpy_storev()
615 RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs) in rseq_cmpeqv_trymemcpy_storev()
618 RSEQ_INJECT_ASM(3) in rseq_cmpeqv_trymemcpy_storev()
619 /* cmp @v equal to @expect */ in rseq_cmpeqv_trymemcpy_storev()
620 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_trymemcpy_storev()
625 /* cmp @v equal to @expect */ in rseq_cmpeqv_trymemcpy_storev()
626 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_trymemcpy_storev()
632 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_trymemcpy_storev()
641 [v] "m" (*v), in rseq_cmpeqv_trymemcpy_storev()
671 int rseq_cmpeqv_trymemcpy_storev_release(intptr_t *v, intptr_t expect, in rseq_cmpeqv_trymemcpy_storev_release() argument
678 RSEQ_ASM_DEFINE_TABLE(3, 1f, 2f, 4f) /* start, commit, abort */ in rseq_cmpeqv_trymemcpy_storev_release()
689 RSEQ_ASM_STORE_RSEQ_CS(1, 3b, rseq_cs) in rseq_cmpeqv_trymemcpy_storev_release()
692 RSEQ_INJECT_ASM(3) in rseq_cmpeqv_trymemcpy_storev_release()
693 /* cmp @v equal to @expect */ in rseq_cmpeqv_trymemcpy_storev_release()
694 RSEQ_ASM_OP_CMPEQ(v, expect, %l[cmpfail]) in rseq_cmpeqv_trymemcpy_storev_release()
699 /* cmp @v equal to @expect */ in rseq_cmpeqv_trymemcpy_storev_release()
700 RSEQ_ASM_OP_CMPEQ(v, expect, %l[error2]) in rseq_cmpeqv_trymemcpy_storev_release()
708 RSEQ_ASM_OP_FINAL_STORE(newv, v, 2) in rseq_cmpeqv_trymemcpy_storev_release()
717 [v] "m" (*v), in rseq_cmpeqv_trymemcpy_storev_release()