fn emit_zext(backend: &mut CodeGenerator, reg: &P<Value>) {
    let nreg = check_op_len(&reg.ty); // The size of the aarch64 register
    let nmu = reg.ty.get_int_length().unwrap(); // the size of the Mu type

    // No need to zero extend the zero register
    if nreg > nmu && !is_zero_register(&reg) {
        backend.emit_ubfx(&reg, &reg, 0, nmu as u8);
    }
}
// zero extends reg, to fit in a 32/64 bit register
zero extends reg, to fit in a 32/64 bit register
zero extends reg to fit in a 32 / 64 bit register
fn emit_zext(backend: &mut CodeGenerator, reg: &P<Value>) {
    let nreg = check_op_len(&reg.ty); // The size of the aarch64 register
    let nmu = reg.ty.get_int_length().unwrap(); // the size of the Mu type
    // No need to zero extend the zero register
    if nreg > nmu && !is_zero_register(&reg) {
        backend.emit_ubfx(&reg, &reg, 0, nmu as u8);
    }
}
fn emit_zext ( backend : & mut CodeGenerator , reg : & P < Value > ) { let nreg = check_op_len ( & reg . ty ) ; // The size of the aarch64 register let nmu = reg . ty . get_int_length ( ) . unwrap ( ) ; // the size of the Mu type // No need to zero extend the zero register if nreg > nmu && ! is_zero_register ( & reg ) { backend . emit_ubfx ( & reg , & reg , 0 , nmu as u8 ) ; } }
zero extends reg, to fit in a 32/64 bit register
zero extends reg to fit in a 32 / 64 bit register
backend
&mut CodeGenerator
reg
&P<Value>
backend
&mut CodeGenerator
reg
&P<Value>