let clif_ty = match layout.abi {
Abi::Scalar(scalar) => scalar_to_clif_type(fx.tcx, scalar),
Abi::Vector { element, count } => scalar_to_clif_type(fx.tcx, element)
- .by(u16::try_from(count).unwrap())
+ .by(u32::try_from(count).unwrap())
.unwrap(),
_ => unreachable!("{:?}", layout.ty),
};
if let ty::Array(element, len) = dst_layout.ty.kind() {
// Can only happen for vector types
let len =
- u16::try_from(len.eval_usize(fx.tcx, ParamEnv::reveal_all())).unwrap();
+ u32::try_from(len.eval_usize(fx.tcx, ParamEnv::reveal_all())).unwrap();
let vector_ty = fx.clif_type(*element).unwrap().by(len).unwrap();
let data = match from.0 {
}
}
- pub(crate) fn place_opaque_cast(
- self,
- fx: &mut FunctionCx<'_, '_, 'tcx>,
- ty: Ty<'tcx>,
- ) -> CPlace<'tcx> {
- CPlace { inner: self.inner, layout: fx.layout_of(ty) }
- }
-
pub(crate) fn place_field(
self,
fx: &mut FunctionCx<'_, '_, 'tcx>,