fn operand_imm_u64(opr: &bad64::Operand) -> u64 {
    match opr {
        bad64::Operand::Imm32 { imm, shift: None } | bad64::Operand::Imm64 { imm, shift: None } => {
            imm_to_u64(imm)
        }
        bad64::Operand::Imm32 { shift: Some(_), .. }
        | bad64::Operand::Imm64 { shift: Some(_), .. } => {
            unreachable!("unshifted immediate expected")
        }
        bad64::Operand::Reg { .. }
        | bad64::Operand::ShiftReg { .. }
        | bad64::Operand::FImm32(_)
        | bad64::Operand::QualReg { .. }
        | bad64::Operand::MultiReg { .. }
        | bad64::Operand::SysReg(_)
        | bad64::Operand::MemReg(_)
        | bad64::Operand::MemOffset { .. }
        | bad64::Operand::MemPreIdx { .. }
        | bad64::Operand::MemPostIdxReg(_)
        | bad64::Operand::MemPostIdxImm { .. }
        | bad64::Operand::MemExt { .. }
        | bad64::Operand::Label(_)
        | bad64::Operand::ImplSpec { .. }
        | bad64::Operand::Cond(_)
        | bad64::Operand::Name(_)
        | bad64::Operand::StrImm { .. } => unreachable!("immediate expected"),
    }
}
/// Get an immediate operand of type `u64`. Will panic if it's not an immediate
/// operand. A signed immediate is bit-cast to an unsigned one.
///
/// **Shifted immediates aren't supported.**
Get an immediate operand of type `u64`. Will panic if it's not an immediate
operand. A signed immediate is bit-cast to an unsigned one.

Shifted immediates aren't supported.
Get an immediate operand of type ` u64 ` . Will panic if it ' s not an immediate operand . A signed immediate is bit - cast to an unsigned one . Shifted immediates aren ' t supported .
fn operand_imm_u64(opr: &bad64::Operand) -> u64 {
    match opr {
        bad64::Operand::Imm32 { imm, shift: None } | bad64::Operand::Imm64 { imm, shift: None } => {
            imm_to_u64(imm)
        }
        bad64::Operand::Imm32 { shift: Some(_), .. }
        | bad64::Operand::Imm64 { shift: Some(_), .. } => {
            unreachable!("unshifted immediate expected")
        }
        bad64::Operand::Reg { .. }
        | bad64::Operand::ShiftReg { .. }
        | bad64::Operand::FImm32(_)
        | bad64::Operand::QualReg { .. }
        | bad64::Operand::MultiReg { .. }
        | bad64::Operand::SysReg(_)
        | bad64::Operand::MemReg(_)
        | bad64::Operand::MemOffset { .. }
        | bad64::Operand::MemPreIdx { .. }
        | bad64::Operand::MemPostIdxReg(_)
        | bad64::Operand::MemPostIdxImm { .. }
        | bad64::Operand::MemExt { .. }
        | bad64::Operand::Label(_)
        | bad64::Operand::ImplSpec { .. }
        | bad64::Operand::Cond(_)
        | bad64::Operand::Name(_)
        | bad64::Operand::StrImm { .. } => unreachable!("immediate expected"),
    }
}
fn operand_imm_u64 ( opr : & bad64 :: Operand ) -> u64 { match opr { bad64 :: Operand :: Imm32 { imm , shift : None } | bad64 :: Operand :: Imm64 { imm , shift : None } => { imm_to_u64 ( imm ) } bad64 :: Operand :: Imm32 { shift : Some ( _ ) , .. } | bad64 :: Operand :: Imm64 { shift : Some ( _ ) , .. } => { unreachable ! ( " " ) } bad64 :: Operand :: Reg { .. } | bad64 :: Operand :: ShiftReg { .. } | bad64 :: Operand :: FImm32 ( _ ) | bad64 :: Operand :: QualReg { .. } | bad64 :: Operand :: MultiReg { .. } | bad64 :: Operand :: SysReg ( _ ) | bad64 :: Operand :: MemReg ( _ ) | bad64 :: Operand :: MemOffset { .. } | bad64 :: Operand :: MemPreIdx { .. } | bad64 :: Operand :: MemPostIdxReg ( _ ) | bad64 :: Operand :: MemPostIdxImm { .. } | bad64 :: Operand :: MemExt { .. } | bad64 :: Operand :: Label ( _ ) | bad64 :: Operand :: ImplSpec { .. } | bad64 :: Operand :: Cond ( _ ) | bad64 :: Operand :: Name ( _ ) | bad64 :: Operand :: StrImm { .. } => unreachable ! ( " " ) , } }
Get an immediate operand of type `u64`.
Get an immediate operand of type ` u64 ` .
opr
&bad64::Operand
opr
&bad64::Operand