| OLD | NEW | 
|---|
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "src/compiler/code-generator.h" | 5 #include "src/compiler/code-generator.h" | 
| 6 | 6 | 
| 7 #include "src/ast/scopes.h" | 7 #include "src/ast/scopes.h" | 
| 8 #include "src/compiler/code-generator-impl.h" | 8 #include "src/compiler/code-generator-impl.h" | 
| 9 #include "src/compiler/gap-resolver.h" | 9 #include "src/compiler/gap-resolver.h" | 
| 10 #include "src/compiler/node-matchers.h" | 10 #include "src/compiler/node-matchers.h" | 
| (...skipping 1146 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1157       break; | 1157       break; | 
| 1158     } | 1158     } | 
| 1159     case kAVXFloat64Neg: { | 1159     case kAVXFloat64Neg: { | 
| 1160       // TODO(bmeurer): Use RIP relative 128-bit constants. | 1160       // TODO(bmeurer): Use RIP relative 128-bit constants. | 
| 1161       __ pcmpeqd(kScratchDoubleReg, kScratchDoubleReg); | 1161       __ pcmpeqd(kScratchDoubleReg, kScratchDoubleReg); | 
| 1162       __ psllq(kScratchDoubleReg, 63); | 1162       __ psllq(kScratchDoubleReg, 63); | 
| 1163       CpuFeatureScope avx_scope(masm(), AVX); | 1163       CpuFeatureScope avx_scope(masm(), AVX); | 
| 1164       __ vxorpd(i.OutputDoubleRegister(), kScratchDoubleReg, i.InputOperand(0)); | 1164       __ vxorpd(i.OutputDoubleRegister(), kScratchDoubleReg, i.InputOperand(0)); | 
| 1165       break; | 1165       break; | 
| 1166     } | 1166     } | 
|  | 1167     case kSSEFloat64SilenceNaN: | 
|  | 1168       __ xorpd(kScratchDoubleReg, kScratchDoubleReg); | 
|  | 1169       __ subsd(i.InputDoubleRegister(0), kScratchDoubleReg); | 
|  | 1170       break; | 
| 1167     case kIA32Movsxbl: | 1171     case kIA32Movsxbl: | 
| 1168       __ movsx_b(i.OutputRegister(), i.MemoryOperand()); | 1172       __ movsx_b(i.OutputRegister(), i.MemoryOperand()); | 
| 1169       break; | 1173       break; | 
| 1170     case kIA32Movzxbl: | 1174     case kIA32Movzxbl: | 
| 1171       __ movzx_b(i.OutputRegister(), i.MemoryOperand()); | 1175       __ movzx_b(i.OutputRegister(), i.MemoryOperand()); | 
| 1172       break; | 1176       break; | 
| 1173     case kIA32Movb: { | 1177     case kIA32Movb: { | 
| 1174       size_t index = 0; | 1178       size_t index = 0; | 
| 1175       Operand operand = i.MemoryOperand(&index); | 1179       Operand operand = i.MemoryOperand(&index); | 
| 1176       if (HasImmediateInput(instr, index)) { | 1180       if (HasImmediateInput(instr, index)) { | 
| (...skipping 828 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2005     int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; | 2009     int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; | 
| 2006     __ Nop(padding_size); | 2010     __ Nop(padding_size); | 
| 2007   } | 2011   } | 
| 2008 } | 2012 } | 
| 2009 | 2013 | 
| 2010 #undef __ | 2014 #undef __ | 
| 2011 | 2015 | 
| 2012 }  // namespace compiler | 2016 }  // namespace compiler | 
| 2013 }  // namespace internal | 2017 }  // namespace internal | 
| 2014 }  // namespace v8 | 2018 }  // namespace v8 | 
| OLD | NEW | 
|---|