Share via

OpCodes.Brfalse_S Field


Transfers control to a target instruction if value is false, a null reference, or zero.

public: static initonly System::Reflection::Emit::OpCode Brfalse_S;
public static readonly System.Reflection.Emit.OpCode Brfalse_S;
 staticval mutable Brfalse_S : System.Reflection.Emit.OpCode
Public Shared ReadOnly Brfalse_S As OpCode 

Field Value


The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:

Format Assembly Format Description
2C <int8 > brfalse.s target

brnull.s target

brzero.s target
Branches to a target instruction at the specified offset if false, short form.

The stack transitional behavior, in sequential order, is:

  1. value is pushed onto the stack by a previous operation.

  2. value is popped from the stack; if value is false, branch to target.

The brfalse.s instruction (and its aliases brnull and brzero) transfers control to the specified target instruction if value (of type int32, int64, object reference O, managed pointer &, transient pointer *, native int) is zero (false). If value is non-zero (true) execution continues at the next instruction.

The target instruction is represented as a 1-byte signed offset from the beginning of the instruction following the current instruction.

If the target instruction has one or more prefix codes, control can only be transferred to the first of these prefixes. Control transfers into and out of try, catch, filter, and finally blocks cannot be performed by this instruction.

The following Emit method overload can use the brfalse.s opcode:

Applies to