bytecode: propagate `rev_bo` of element
authorFrancis Deslauriers <francis.deslauriers@efficios.com>
Mon, 11 May 2020 20:24:31 +0000 (16:24 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Wed, 25 Nov 2020 18:11:56 +0000 (13:11 -0500)
When specializing and executing bytecode.

Signed-off-by: Francis Deslauriers <francis.deslauriers@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Change-Id: I86aea5b5733f92c56564c6352bd6dcb85f6a2d30

src/lttng-filter-interpreter.c
src/lttng-filter-specialize.c

index 69db94940d961604f51cae2091a37441cc883ab7..403a712fa0ade1c5c959780916f0b8ec6e7f0e96 100644 (file)
@@ -427,6 +427,7 @@ static int dynamic_get_index(struct lttng_probe_ctx *lttng_probe_ctx,
                stack_top->u.ptr.object_type = gid->elem.type;
                stack_top->u.ptr.type = LOAD_OBJECT;
                stack_top->u.ptr.field = gid->field;
+               stack_top->u.ptr.rev_bo = gid->elem.rev_bo;
                break;
        }
 
index 86f7c536a7bf29a75a4ccb746cac87436d1b2b60..32591d19a86525c3b02e74797cf8ed5566296643 100644 (file)
@@ -407,6 +407,7 @@ static int specialize_context_lookup(struct lttng_ctx *ctx,
        memset(&gid, 0, sizeof(gid));
        gid.ctx_index = idx;
        gid.elem.type = load->object_type;
+       gid.elem.rev_bo = load->rev_bo;
        gid.field = field;
        data_offset = bytecode_push_data(runtime, &gid,
                __alignof__(gid), sizeof(gid));
@@ -477,6 +478,7 @@ static int specialize_payload_lookup(const struct lttng_event_desc *event_desc,
        memset(&gid, 0, sizeof(gid));
        gid.offset = field_offset;
        gid.elem.type = load->object_type;
+       gid.elem.rev_bo = load->rev_bo;
        gid.field = field;
        data_offset = bytecode_push_data(runtime, &gid,
                __alignof__(gid), sizeof(gid));
This page took 0.028206 seconds and 4 git commands to generate.