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/compiler/code-generator-impl.h" | 7 #include "src/compiler/code-generator-impl.h" |
8 #include "src/compiler/gap-resolver.h" | 8 #include "src/compiler/gap-resolver.h" |
9 #include "src/compiler/node-matchers.h" | 9 #include "src/compiler/node-matchers.h" |
10 #include "src/compiler/node-properties-inl.h" | 10 #include "src/compiler/node-properties-inl.h" |
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
213 __ shr_cl(i.OutputRegister()); | 213 __ shr_cl(i.OutputRegister()); |
214 } | 214 } |
215 break; | 215 break; |
216 case kIA32Sar: | 216 case kIA32Sar: |
217 if (HasImmediateInput(instr, 1)) { | 217 if (HasImmediateInput(instr, 1)) { |
218 __ sar(i.OutputRegister(), i.InputInt5(1)); | 218 __ sar(i.OutputRegister(), i.InputInt5(1)); |
219 } else { | 219 } else { |
220 __ sar_cl(i.OutputRegister()); | 220 __ sar_cl(i.OutputRegister()); |
221 } | 221 } |
222 break; | 222 break; |
| 223 case kIA32Ror: |
| 224 if (HasImmediateInput(instr, 1)) { |
| 225 __ ror(i.OutputRegister(), i.InputInt5(1)); |
| 226 } else { |
| 227 __ ror_cl(i.OutputRegister()); |
| 228 } |
| 229 break; |
223 case kIA32Push: | 230 case kIA32Push: |
224 if (HasImmediateInput(instr, 0)) { | 231 if (HasImmediateInput(instr, 0)) { |
225 __ push(i.InputImmediate(0)); | 232 __ push(i.InputImmediate(0)); |
226 } else { | 233 } else { |
227 __ push(i.InputOperand(0)); | 234 __ push(i.InputOperand(0)); |
228 } | 235 } |
229 break; | 236 break; |
230 case kIA32CallCodeObject: { | 237 case kIA32CallCodeObject: { |
231 if (HasImmediateInput(instr, 0)) { | 238 if (HasImmediateInput(instr, 0)) { |
232 Handle<Code> code = Handle<Code>::cast(i.InputHeapObject(0)); | 239 Handle<Code> code = Handle<Code>::cast(i.InputHeapObject(0)); |
(...skipping 701 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
934 } | 941 } |
935 | 942 |
936 | 943 |
937 void CodeGenerator::AddNopForSmiCodeInlining() { __ nop(); } | 944 void CodeGenerator::AddNopForSmiCodeInlining() { __ nop(); } |
938 | 945 |
939 #undef __ | 946 #undef __ |
940 | 947 |
941 } | 948 } |
942 } | 949 } |
943 } // namespace v8::internal::compiler | 950 } // namespace v8::internal::compiler |
OLD | NEW |