1
Fork 0

better and more consistent variable names

This commit is contained in:
Ralf Jung 2019-09-16 13:08:21 +02:00
parent 8c0f601105
commit b73f1a51dc
2 changed files with 12 additions and 12 deletions

View file

@ -698,28 +698,28 @@ impl<'mir, 'tcx, M: Machine<'mir, 'tcx>> InterpCx<'mir, 'tcx, M> {
// We need to use machine arithmetic. // We need to use machine arithmetic.
let niche_start_val = ImmTy::from_uint(niche_start, discr_layout); let niche_start_val = ImmTy::from_uint(niche_start, discr_layout);
let variants_start_val = ImmTy::from_uint(variants_start, discr_layout); let variants_start_val = ImmTy::from_uint(variants_start, discr_layout);
let adjusted_discr = self.binary_op( let variant_index_relative_val = self.binary_op(
mir::BinOp::Sub, mir::BinOp::Sub,
discr_val, discr_val,
niche_start_val, niche_start_val,
)?; )?;
let adjusted_discr = self.binary_op( let variant_index_val = self.binary_op(
mir::BinOp::Add, mir::BinOp::Add,
adjusted_discr, variant_index_relative_val,
variants_start_val, variants_start_val,
)?; )?;
let adjusted_discr = adjusted_discr let variant_index = variant_index_val
.to_scalar()? .to_scalar()?
.assert_bits(discr_val.layout.size); .assert_bits(discr_val.layout.size);
// Check if this is in the range that indicates an actual discriminant. // Check if this is in the range that indicates an actual discriminant.
if variants_start <= adjusted_discr && adjusted_discr <= variants_end { if variants_start <= variant_index && variant_index <= variants_end {
let index = adjusted_discr as usize; let index = variant_index as usize;
assert_eq!(index as u128, adjusted_discr); assert_eq!(index as u128, variant_index);
assert!(index < rval.layout.ty assert!(index < rval.layout.ty
.ty_adt_def() .ty_adt_def()
.expect("tagged layout for non adt") .expect("tagged layout for non adt")
.variants.len()); .variants.len());
(adjusted_discr, VariantIdx::from_usize(index)) (variant_index, VariantIdx::from_usize(index))
} else { } else {
(dataful_variant.as_u32() as u128, dataful_variant) (dataful_variant.as_u32() as u128, dataful_variant)
} }

View file

@ -1073,19 +1073,19 @@ where
let variants_start_val = ImmTy::from_uint(variants_start, discr_layout); let variants_start_val = ImmTy::from_uint(variants_start, discr_layout);
let niche_start_val = ImmTy::from_uint(niche_start, discr_layout); let niche_start_val = ImmTy::from_uint(niche_start, discr_layout);
let variant_index_val = ImmTy::from_uint(variant_index.as_u32(), discr_layout); let variant_index_val = ImmTy::from_uint(variant_index.as_u32(), discr_layout);
let niche_val = self.binary_op( let variant_index_relative_val = self.binary_op(
mir::BinOp::Sub, mir::BinOp::Sub,
variant_index_val, variant_index_val,
variants_start_val, variants_start_val,
)?; )?;
let niche_val = self.binary_op( let discr_val = self.binary_op(
mir::BinOp::Add, mir::BinOp::Add,
niche_val, variant_index_relative_val,
niche_start_val, niche_start_val,
)?; )?;
// Write result. // Write result.
let niche_dest = self.place_field(dest, discr_index as u64)?; let niche_dest = self.place_field(dest, discr_index as u64)?;
self.write_immediate(*niche_val, niche_dest)?; self.write_immediate(*discr_val, niche_dest)?;
} }
} }
} }