# define LONG_S "sd"
# define LONG_ADDI "daddiu"
# define U32_U64_PAD(x) x
+# define RSEQ_CS_PTR rseq_cs.ptr
#elif _MIPS_SZLONG == 32
# define LONG ".word"
# define LONG_LA "la"
# else
# define U32_U64_PAD(x) x ", 0x0"
# endif
+# define RSEQ_CS_PTR rseq_cs.ptr.ptr32
#else
# error unsupported _MIPS_SZLONG
#endif
: /* gcc asm goto does not allow outputs */
: [cpu_id] "r" (cpu),
[current_cpu_id] "m" (rseq_get_abi()->cpu_id),
- [rseq_cs] "m" (rseq_get_abi()->rseq_cs),
+ [rseq_cs] "m" (rseq_get_abi()->RSEQ_CS_PTR),
[v] "m" (*v),
[expect] "r" (expect),
[newv] "r" (newv)
: /* gcc asm goto does not allow outputs */
: [cpu_id] "r" (cpu),
[current_cpu_id] "m" (rseq_get_abi()->cpu_id),
- [rseq_cs] "m" (rseq_get_abi()->rseq_cs),
+ [rseq_cs] "m" (rseq_get_abi()->RSEQ_CS_PTR),
/* final store input */
[v] "m" (*v),
[expectnot] "r" (expectnot),
: /* gcc asm goto does not allow outputs */
: [cpu_id] "r" (cpu),
[current_cpu_id] "m" (rseq_get_abi()->cpu_id),
- [rseq_cs] "m" (rseq_get_abi()->rseq_cs),
+ [rseq_cs] "m" (rseq_get_abi()->RSEQ_CS_PTR),
[v] "m" (*v),
[count] "Ir" (count)
RSEQ_INJECT_INPUT
: /* gcc asm goto does not allow outputs */
: [cpu_id] "r" (cpu),
[current_cpu_id] "m" (rseq_get_abi()->cpu_id),
- [rseq_cs] "m" (rseq_get_abi()->rseq_cs),
+ [rseq_cs] "m" (rseq_get_abi()->RSEQ_CS_PTR),
/* try store input */
[v2] "m" (*v2),
[newv2] "r" (newv2),
: /* gcc asm goto does not allow outputs */
: [cpu_id] "r" (cpu),
[current_cpu_id] "m" (rseq_get_abi()->cpu_id),
- [rseq_cs] "m" (rseq_get_abi()->rseq_cs),
+ [rseq_cs] "m" (rseq_get_abi()->RSEQ_CS_PTR),
/* try store input */
[v2] "m" (*v2),
[newv2] "r" (newv2),
: /* gcc asm goto does not allow outputs */
: [cpu_id] "r" (cpu),
[current_cpu_id] "m" (rseq_get_abi()->cpu_id),
- [rseq_cs] "m" (rseq_get_abi()->rseq_cs),
+ [rseq_cs] "m" (rseq_get_abi()->RSEQ_CS_PTR),
/* cmp2 input */
[v2] "m" (*v2),
[expect2] "r" (expect2),
: /* gcc asm goto does not allow outputs */
: [cpu_id] "r" (cpu),
[current_cpu_id] "m" (rseq_get_abi()->cpu_id),
- [rseq_cs] "m" (rseq_get_abi()->rseq_cs),
+ [rseq_cs] "m" (rseq_get_abi()->RSEQ_CS_PTR),
/* final store input */
[v] "m" (*v),
[expect] "r" (expect),
: /* gcc asm goto does not allow outputs */
: [cpu_id] "r" (cpu),
[current_cpu_id] "m" (rseq_get_abi()->cpu_id),
- [rseq_cs] "m" (rseq_get_abi()->rseq_cs),
+ [rseq_cs] "m" (rseq_get_abi()->RSEQ_CS_PTR),
/* final store input */
[v] "m" (*v),
[expect] "r" (expect),