Filter interpreter: mark float test as unlikely
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 13 Jul 2012 21:29:45 +0000 (17:29 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 13 Jul 2012 21:29:45 +0000 (17:29 -0400)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
liblttng-ust/lttng-filter.c

index 64576e88633178bf9f48386c2d9af79526a7831f..bd208dcf82b5933198698a723cc278c05c6bb30e 100644 (file)
@@ -536,7 +536,7 @@ int lttng_filter_interpret_bytecode(void *filter_data,
 
                        /* If REG_R0 is 0, skip and evaluate to 0 */
                        if ((reg[REG_R0].type == REG_S64 && reg[REG_R0].v == 0)
-                                       || (reg[REG_R0].type == REG_DOUBLE && reg[REG_R0].d == 0.0)) {
+                                       || unlikely(reg[REG_R0].type == REG_DOUBLE && reg[REG_R0].d == 0.0)) {
                                dbg_printf("Jumping to bytecode offset %u\n",
                                        (unsigned int) insn->skip_offset);
                                next_pc = start_pc + insn->skip_offset;
@@ -552,7 +552,7 @@ int lttng_filter_interpret_bytecode(void *filter_data,
                        /* If REG_R0 is nonzero, skip and evaluate to 1 */
 
                        if ((reg[REG_R0].type == REG_S64 && reg[REG_R0].v != 0)
-                                       || (reg[REG_R0].type == REG_DOUBLE && reg[REG_R0].d != 0.0)) {
+                                       || unlikely(reg[REG_R0].type == REG_DOUBLE && reg[REG_R0].d != 0.0)) {
                                reg[REG_R0].v = 1;
                                dbg_printf("Jumping to bytecode offset %u\n",
                                        (unsigned int) insn->skip_offset);
This page took 0.025224 seconds and 4 git commands to generate.