Use *_imm in some places
This commit is contained in:
parent
954d1e7bf2
commit
8cd9bf3162
1 changed files with 2 additions and 7 deletions
|
|
@ -68,8 +68,7 @@ fn codegen_field<'a, 'tcx: 'a>(
|
|||
let field_offset = layout.fields.offset(field.index());
|
||||
let field_ty = layout.field(&*fx, field.index());
|
||||
if field_offset.bytes() > 0 {
|
||||
let field_offset = fx.bcx.ins().iconst(fx.module.pointer_type(), field_offset.bytes() as i64);
|
||||
(fx.bcx.ins().iadd(base, field_offset), field_ty)
|
||||
(fx.bcx.ins().iadd_imm(base, field_offset.bytes() as i64), field_ty)
|
||||
} else {
|
||||
(base, field_ty)
|
||||
}
|
||||
|
|
@ -305,11 +304,7 @@ impl<'a, 'tcx: 'a> CPlace<'tcx> {
|
|||
match layout.ty.sty {
|
||||
TypeVariants::TyArray(elem_ty, _) => {
|
||||
let elem_layout = fx.layout_of(elem_ty);
|
||||
let size = fx
|
||||
.bcx
|
||||
.ins()
|
||||
.iconst(fx.module.pointer_type(), elem_layout.size.bytes() as i64);
|
||||
let offset = fx.bcx.ins().imul(size, index);
|
||||
let offset = fx.bcx.ins().imul_imm(index, elem_layout.size.bytes() as i64);
|
||||
CPlace::Addr(fx.bcx.ins().iadd(addr, offset), elem_layout)
|
||||
}
|
||||
TypeVariants::TySlice(_elem_ty) => unimplemented!("place_index(TySlice)"),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue