| Index: src/compiler/x64/instruction-selector-x64.cc | 
| diff --git a/src/compiler/x64/instruction-selector-x64.cc b/src/compiler/x64/instruction-selector-x64.cc | 
| index 7315b22beab771571284b2acd99454ec56eb32ca..4d9622ad14739a8c1c091e12b5772d60915ee6a1 100644 | 
| --- a/src/compiler/x64/instruction-selector-x64.cc | 
| +++ b/src/compiler/x64/instruction-selector-x64.cc | 
| @@ -1455,9 +1455,13 @@ void InstructionSelector::VisitFloat64RoundTiesEven(Node* node) { | 
| VisitRR(this, node, kSSEFloat64Round | MiscField::encode(kRoundToNearest)); | 
| } | 
|  | 
| -void InstructionSelector::VisitFloat32Neg(Node* node) { UNREACHABLE(); } | 
| +void InstructionSelector::VisitFloat32Neg(Node* node) { | 
| +  VisitFloatUnop(this, node, node->InputAt(0), kAVXFloat32Neg, kSSEFloat32Neg); | 
| +} | 
|  | 
| -void InstructionSelector::VisitFloat64Neg(Node* node) { UNREACHABLE(); } | 
| +void InstructionSelector::VisitFloat64Neg(Node* node) { | 
| +  VisitFloatUnop(this, node, node->InputAt(0), kAVXFloat64Neg, kSSEFloat64Neg); | 
| +} | 
|  | 
| void InstructionSelector::VisitFloat64Ieee754Binop(Node* node, | 
| InstructionCode opcode) { | 
| @@ -2182,7 +2186,8 @@ MachineOperatorBuilder::Flags | 
| InstructionSelector::SupportedMachineOperatorFlags() { | 
| MachineOperatorBuilder::Flags flags = | 
| MachineOperatorBuilder::kWord32ShiftIsSafe | | 
| -      MachineOperatorBuilder::kWord32Ctz | MachineOperatorBuilder::kWord64Ctz; | 
| +      MachineOperatorBuilder::kWord32Ctz | MachineOperatorBuilder::kWord64Ctz | | 
| +      MachineOperatorBuilder::kFloat32Neg | MachineOperatorBuilder::kFloat64Neg; | 
| if (CpuFeatures::IsSupported(POPCNT)) { | 
| flags |= MachineOperatorBuilder::kWord32Popcnt | | 
| MachineOperatorBuilder::kWord64Popcnt; | 
|  |