Filter: ensure logical operator merge is always s64
[lttng-tools.git] / src / lib / lttng-ctl / filter-bytecode.h
index a846ec7a72cc30d9213d65139dc70224d3866392..1bb00dd4577afe0f095c92b375e53eab5c40f41d 100644 (file)
@@ -115,10 +115,6 @@ enum filter_op {
        /* logical */
        FILTER_OP_AND,
        FILTER_OP_OR,
-       FILTER_OP_AND_S64,
-       FILTER_OP_OR_S64,
-       FILTER_OP_AND_DOUBLE,
-       FILTER_OP_OR_DOUBLE,
 
        /* load */
        FILTER_OP_LOAD_FIELD_REF,
@@ -131,6 +127,11 @@ enum filter_op {
        FILTER_OP_LOAD_S64,
        FILTER_OP_LOAD_DOUBLE,
 
+       /* cast */
+       FILTER_OP_CAST_TO_S64,
+       FILTER_OP_CAST_DOUBLE_TO_S64,
+       FILTER_OP_CAST_NOP,
+
        NR_FILTER_OPS,
 };
 
@@ -158,6 +159,11 @@ struct logical_op {
        uint16_t skip_offset;   /* bytecode insn, if skip second test */
 } __attribute__((packed));
 
+struct cast_op {
+       filter_opcode_t op;
+       uint8_t reg;            /* enum filter_register */
+} __attribute__((packed));
+
 struct return_op {
        filter_opcode_t op;
 } __attribute__((packed));
This page took 0.023141 seconds and 4 git commands to generate.