[DTrace-devel] [PATCH v4 09/10] cg: move dt_regset_xalloc for consistency
Nick Alcock
nick.alcock at oracle.com
Tue Apr 12 10:59:08 UTC 2022
Pack it next to BPF_CALL_FUNC where possible.
Signed-off-by: Nick Alcock <nick.alcock at oracle.com>
Suggested-by: Eugene Loh <eugene.loh at oracle.com>
---
libdtrace/dt_cg.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/libdtrace/dt_cg.c b/libdtrace/dt_cg.c
index 12b84842d2d4..847860072c7a 100644
--- a/libdtrace/dt_cg.c
+++ b/libdtrace/dt_cg.c
@@ -1289,9 +1289,9 @@ dt_cg_spec_set_drainable(dt_pcb_t *pcb, dt_node_t *dnp, int idreg)
if (dt_regset_xalloc_args(drp) == -1)
longjmp(yypcb->pcb_jmpbuf, EDT_NOREG);
- dt_regset_xalloc(drp, BPF_REG_0);
emit(dlp, BPF_LOAD(BPF_DW, BPF_REG_1, BPF_REG_FP, DT_STK_DCTX));
emit(dlp, BPF_MOV_REG(BPF_REG_2, idreg));
+ dt_regset_xalloc(drp, BPF_REG_0);
emite(dlp, BPF_CALL_FUNC(idp->di_id), idp);
emit(dlp, BPF_BRANCH_IMM(BPF_JEQ, BPF_REG_0, 0, lbl_ok));
emit(dlp, BPF_RETURN());
@@ -2215,9 +2215,9 @@ dt_cg_load_var(dt_node_t *dst, dt_irlist_t *dlp, dt_regset_t *drp)
emit(dlp, BPF_LOAD(BPF_DW, BPF_REG_1, BPF_REG_FP, DT_STK_DCTX));
emit(dlp, BPF_MOV_IMM(BPF_REG_2, idp->di_id));
- dt_regset_xalloc(drp, BPF_REG_0);
idp = dt_dlib_get_func(yypcb->pcb_hdl, "dt_get_bvar");
assert(idp != NULL);
+ dt_regset_xalloc(drp, BPF_REG_0);
emite(dlp, BPF_CALL_FUNC(idp->di_id), idp);
dt_regset_free_args(drp);
@@ -3707,9 +3707,9 @@ dt_cg_subr_path_helper(dt_node_t *dnp, dt_irlist_t *dlp, dt_regset_t *drp,
emit(dlp, BPF_MOV_REG(BPF_REG_2, dnp->dn_reg));
- dt_regset_xalloc(drp, BPF_REG_0);
idp = dt_dlib_get_func(yypcb->pcb_hdl, fname);
assert(idp != NULL);
+ dt_regset_xalloc(drp, BPF_REG_0);
emite(dlp, BPF_CALL_FUNC(idp->di_id), idp);
dt_regset_free_args(drp);
dt_regset_free(drp, BPF_REG_0);
@@ -4159,9 +4159,9 @@ dt_cg_subr_strchr(dt_node_t *dnp, dt_irlist_t *dlp, dt_regset_t *drp)
emit(dlp, BPF_LOAD(BPF_DW, BPF_REG_4, BPF_REG_4, DCTX_MEM));
emit(dlp, BPF_ALU64_IMM(BPF_ADD, BPF_REG_4, off));
- dt_regset_xalloc(drp, BPF_REG_0);
idp = dt_dlib_get_func(yypcb->pcb_hdl, "dt_strchr");
assert(idp != NULL);
+ dt_regset_xalloc(drp, BPF_REG_0);
emite(dlp, BPF_CALL_FUNC(idp->di_id), idp);
dt_regset_free_args(drp);
dt_cg_tstring_xfree(yypcb, off);
@@ -4210,9 +4210,9 @@ dt_cg_subr_strrchr(dt_node_t *dnp, dt_irlist_t *dlp, dt_regset_t *drp)
emit(dlp, BPF_ALU64_IMM(BPF_ADD, dnp->dn_reg, dnp->dn_tstring->dn_value));
emit(dlp, BPF_MOV_REG(BPF_REG_3, dnp->dn_reg));
- dt_regset_xalloc(drp, BPF_REG_0);
idp = dt_dlib_get_func(yypcb->pcb_hdl, "dt_strrchr");
assert(idp != NULL);
+ dt_regset_xalloc(drp, BPF_REG_0);
emite(dlp, BPF_CALL_FUNC(idp->di_id), idp);
dt_regset_free_args(drp);
@@ -4341,9 +4341,9 @@ dt_cg_subr_strstr(dt_node_t *dnp, dt_irlist_t *dlp, dt_regset_t *drp)
emit(dlp, BPF_ALU64_IMM(BPF_ADD, BPF_REG_4, off1));
emit(dlp, BPF_ALU64_IMM(BPF_ADD, BPF_REG_5, off2));
- dt_regset_xalloc(drp, BPF_REG_0);
idp = dt_dlib_get_func(yypcb->pcb_hdl, "dt_index");
assert(idp != NULL);
+ dt_regset_xalloc(drp, BPF_REG_0);
emite(dlp, BPF_CALL_FUNC(idp->di_id), idp);
dt_regset_free_args(drp);
@@ -4478,10 +4478,10 @@ dt_cg_subr_strtok(dt_node_t *dnp, dt_irlist_t *dlp, dt_regset_t *drp)
emit(dlp, BPF_MOV_REG(BPF_REG_4, reg));
emit(dlp, BPF_ALU64_IMM(BPF_ADD, BPF_REG_4, off));
- dt_regset_xalloc(drp, BPF_REG_0);
emite(dlp, BPF_CALL_FUNC(idp->di_id), idp);
dt_regset_free_args(drp);
dt_cg_tstring_xfree(yypcb, off);
+ dt_regset_xalloc(drp, BPF_REG_0);
emit(dlp, BPF_MOV_REG(dnp->dn_reg, BPF_REG_0));
dt_regset_free(drp, BPF_REG_0);
@@ -4530,9 +4530,9 @@ dt_cg_subr_substr(dt_node_t *dnp, dt_irlist_t *dlp, dt_regset_t *drp)
emit(dlp, BPF_MOV_IMM(BPF_REG_4, 0));
emit(dlp, BPF_MOV_IMM(BPF_REG_5, 2));
}
- dt_regset_xalloc(drp, BPF_REG_0);
idp = dt_dlib_get_func(yypcb->pcb_hdl, "dt_substr");
assert(idp != NULL);
+ dt_regset_xalloc(drp, BPF_REG_0);
emite(dlp, BPF_CALL_FUNC(idp->di_id), idp);
/*
--
2.35.1
More information about the DTrace-devel
mailing list