| Index: src/compiler/simplified-lowering.cc
|
| diff --git a/src/compiler/simplified-lowering.cc b/src/compiler/simplified-lowering.cc
|
| index cb32fc9ae35967c59bffa9e412f9cf7b1d5d30ad..5dcb37fae83f3b098278c203a7d4823c6d259314 100644
|
| --- a/src/compiler/simplified-lowering.cc
|
| +++ b/src/compiler/simplified-lowering.cc
|
| @@ -1024,9 +1024,14 @@ class RepresentationSelector {
|
| // TODO(turbofan): Special treatment for ExternalPointer here,
|
| // to avoid incompatible truncations. We really need a story
|
| // for the JSFunction::entry field.
|
| - UseInfo use_info = input_type->Is(Type::ExternalPointer())
|
| - ? UseInfo::PointerInt()
|
| - : UseInfo::Any();
|
| + UseInfo use_info = UseInfo::None();
|
| + if (input_type->IsInhabited()) {
|
| + if (input_type->Is(Type::ExternalPointer())) {
|
| + use_info = UseInfo::PointerInt();
|
| + } else {
|
| + use_info = UseInfo::Any();
|
| + }
|
| + }
|
| EnqueueInput(node, i, use_info);
|
| }
|
| } else if (lower()) {
|
| @@ -1041,7 +1046,9 @@ class RepresentationSelector {
|
| // TODO(turbofan): Special treatment for ExternalPointer here,
|
| // to avoid incompatible truncations. We really need a story
|
| // for the JSFunction::entry field.
|
| - if (input_type->Is(Type::ExternalPointer())) {
|
| + if (!input_type->IsInhabited()) {
|
| + (*types)[i] = MachineType::None();
|
| + } else if (input_type->Is(Type::ExternalPointer())) {
|
| (*types)[i] = MachineType::Pointer();
|
| } else {
|
| MachineRepresentation rep = input_type->IsInhabited()
|
|
|