Index: src/compiler/register-allocator.cc |
diff --git a/src/compiler/register-allocator.cc b/src/compiler/register-allocator.cc |
index 4a222a43bef66c2c22008e2a5ddbb8d2113f6a11..28c99b95544ba4e7c3839730f5e4ab117f0e3087 100644 |
--- a/src/compiler/register-allocator.cc |
+++ b/src/compiler/register-allocator.cc |
@@ -196,8 +196,11 @@ void UsePosition::ResolveHint(UsePosition* use_pos) { |
void UsePosition::set_type(UsePositionType type, bool register_beneficial) { |
DCHECK_IMPLIES(type == UsePositionType::kRequiresSlot, !register_beneficial); |
+ DCHECK_EQ(kUnassignedRegister, AssignedRegisterField::decode(flags_)); |
flags_ = TypeField::encode(type) | |
- RegisterBeneficialField::encode(register_beneficial); |
+ RegisterBeneficialField::encode(register_beneficial) | |
+ HintTypeField::encode(HintTypeField::decode(flags_)) | |
+ AssignedRegisterField::encode(kUnassignedRegister); |
} |