Opcode/ Instruction | 
Op/En | 
64/32 bit Mode Support | 
CPUID Feature Flag | 
Description | 
| 
 F3 0F 1A /r BNDCL bnd, r/m32  | 
 RM  | 
 NE/V  | 
 MPX  | 
 Generate a #BR if the address in r/m32 is lower than the lower bound in bnd.LB.  | 
| 
 F3 0F 1A /r BNDCL bnd, r/m64  | 
 RM  | 
 V/NE  | 
 MPX  | 
 Generate a #BR if the address in r/m64 is lower than the lower bound in bnd.LB.  | 
Op/En | 
Operand 1 | 
Operand 2 | 
Operand 3 | 
| 
 RM  | 
 ModRM:reg (w)  | 
 ModRM:r/m (r)  | 
 N/A  | 
Compare the address in the second operand with the lower bound in bnd. The second operand can be either a register or memory operand. If the address is lower than the lower bound in bnd.LB, it will set BNDSTATUS to 01H and signal a #BR exception.
This instruction does not cause any memory access, and does not read or write any flags.
IF reg < BND.LB Then BNDSTATUS := 01H; #BR; FI;
TEMP := LEA(mem); IF TEMP < BND.LB Then BNDSTATUS := 01H; #BR; FI;
BNDCL void _bnd_chk_ptr_lbounds(const void *q)
None
| 
 #BR  | 
 If lower bound check fails.  | 
| 
 #UD  | 
 If the LOCK prefix is used. If ModRM.r/m encodes BND4-BND7 when Intel MPX is enabled. If 67H prefix is not used and CS.D=0. If 67H prefix is used and CS.D=1.  | 
| 
 #BR  | 
 If lower bound check fails.  | 
| 
 #UD  | 
 If the LOCK prefix is used. If ModRM.r/m encodes BND4-BND7 when Intel MPX is enabled. If 16-bit addressing is used.  | 
| 
 #BR  | 
 If lower bound check fails.  | 
| 
 #UD  | 
 If the LOCK prefix is used. If ModRM.r/m encodes BND4-BND7 when Intel MPX is enabled. If 16-bit addressing is used.  | 
Same exceptions as in protected mode.
| 
 #UD  | 
 If ModRM.r/m and REX encodes BND4-BND15 when Intel MPX is enabled.  | 
| 
 Same exceptions as in protected mode.  |