s390/s390x: refer to rseq_cs pointer field
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 21 Jan 2022 20:08:31 +0000 (15:08 -0500)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 21 Jan 2022 20:08:31 +0000 (15:08 -0500)
Does not make any different on little endian architecture, but makes it
clearer in case this code is ever ported to a big endian architecture.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Change-Id: I6aa9b0fa4eb7ed55556dbff889104970bcc29944

include/rseq/rseq-s390.h

index 67f54a95497482ac7760804ddf59123d8728e5fc..0c1edb585dbefdd8a7c4617077f2cfa0931828fa 100644 (file)
@@ -34,6 +34,8 @@ do {                                                                  \
 
 #ifdef __s390x__
 
+#define RSEQ_CS_PTR            rseq_cs.ptr
+
 #define LONG_L                 "lg"
 #define LONG_S                 "stg"
 #define LONG_LT_R              "ltgr"
@@ -69,6 +71,8 @@ do {                                                                  \
 
 #elif __s390__
 
+#define RSEQ_CS_PTR            rseq_cs.ptr.ptr32
+
 #define __RSEQ_ASM_DEFINE_TABLE(label, version, flags,                 \
                                start_ip, post_commit_offset, abort_ip) \
                ".pushsection __rseq_cs, \"aw\"\n\t"                    \
@@ -166,7 +170,7 @@ int rseq_cmpeqv_storev(intptr_t *v, intptr_t expect, intptr_t newv, int cpu)
                : /* 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)
@@ -239,7 +243,7 @@ int rseq_cmpnev_storeoffp_load(intptr_t *v, intptr_t 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),
                  /* final store input */
                  [v]                   "m" (*v),
                  [expectnot]           "r" (expectnot),
@@ -299,7 +303,7 @@ int rseq_addv(intptr_t *v, intptr_t count, int cpu)
                : /* 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),
                  [count]               "r" (count)
@@ -361,7 +365,7 @@ int rseq_cmpeqv_trystorev_storev(intptr_t *v, intptr_t 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),
                  /* try store input */
                  [v2]                  "m" (*v2),
                  [newv2]               "r" (newv2),
@@ -445,7 +449,7 @@ int rseq_cmpeqv_cmpeqv_storev(intptr_t *v, intptr_t 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),
                  /* cmp2 input */
                  [v2]                  "m" (*v2),
                  [expect2]             "r" (expect2),
@@ -559,7 +563,7 @@ int rseq_cmpeqv_trymemcpy_storev(intptr_t *v, intptr_t 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),
This page took 0.031504 seconds and 4 git commands to generate.