Imagine we are debugging the following assembly code in gdb:
...
mov eax, 0x0f
mov edx, 0xf0
test eax, edx
>> jz label2
add eax, 0xf0
...
label2:
...
In this case, if we execute si, the instruction jz label2 will make the program jump to label2. Now imagine I don't want it to jump, the only way I can think of would be to put a temporary breakpoint at the address of the instruction add eax, 0xf0 and then manually jumping to it. Or maybe resetting the eflags so that Z is 0.
Is there any other simpler way? Jumping continues execution and I have to put a tbreak everytime I want to jump