Filter: ensure logical operator merge is always s64
[lttng-ust.git] / liblttng-ust / filter-bytecode.h
index 61d10cd7732eed1be9034012540507a49af93dac..38c5d51c04f84bdaf494f69a6317e8ea96a5819b 100644 (file)
@@ -114,10 +114,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,
@@ -130,6 +126,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,
 };
 
@@ -157,6 +158,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.023196 seconds and 4 git commands to generate.