This one doesn't generate bad code, just not optimal. The "jz L6" gets assembled as a long branch, where a short one will reach the distance. ---------------------------- .text L0: jz L5 L1: jz L6 L2: .align 16, 0x90 L4: .space 0x72, 0x90 L5: .space 2, 0x90 L6: ----------------------------