OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_ARM. | 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_ARM. |
6 #if defined(TARGET_ARCH_ARM) | 6 #if defined(TARGET_ARCH_ARM) |
7 | 7 |
8 #include "vm/intermediate_language.h" | 8 #include "vm/intermediate_language.h" |
9 | 9 |
10 #include "vm/cpu.h" | 10 #include "vm/cpu.h" |
(...skipping 6213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6224 deopt = compiler->AddDeoptStub(deopt_id(), ICData::kDeoptUnaryMintOp); | 6224 deopt = compiler->AddDeoptStub(deopt_id(), ICData::kDeoptUnaryMintOp); |
6225 } | 6225 } |
6226 __ mvn(out_lo, Operand(left_lo)); | 6226 __ mvn(out_lo, Operand(left_lo)); |
6227 __ mvn(out_hi, Operand(left_hi)); | 6227 __ mvn(out_hi, Operand(left_hi)); |
6228 if (FLAG_throw_on_javascript_int_overflow) { | 6228 if (FLAG_throw_on_javascript_int_overflow) { |
6229 EmitJavascriptIntOverflowCheck(compiler, deopt, out_lo, out_hi); | 6229 EmitJavascriptIntOverflowCheck(compiler, deopt, out_lo, out_hi); |
6230 } | 6230 } |
6231 } | 6231 } |
6232 | 6232 |
6233 | 6233 |
| 6234 CompileType BinaryUint32OpInstr::ComputeType() const { |
| 6235 return CompileType::Int(); |
| 6236 } |
| 6237 |
| 6238 |
| 6239 CompileType ShiftUint32OpInstr::ComputeType() const { |
| 6240 return CompileType::Int(); |
| 6241 } |
| 6242 |
| 6243 |
| 6244 CompileType UnaryUint32OpInstr::ComputeType() const { |
| 6245 return CompileType::Int(); |
| 6246 } |
| 6247 |
| 6248 |
| 6249 CompileType BoxUint32Instr::ComputeType() const { |
| 6250 return CompileType::Int(); |
| 6251 } |
| 6252 |
| 6253 |
| 6254 CompileType UnboxUint32Instr::ComputeType() const { |
| 6255 return CompileType::Int(); |
| 6256 } |
| 6257 |
| 6258 |
| 6259 LocationSummary* BinaryUint32OpInstr::MakeLocationSummary(Isolate* isolate, |
| 6260 bool opt) const { |
| 6261 UNIMPLEMENTED(); |
| 6262 return NULL; |
| 6263 } |
| 6264 |
| 6265 |
| 6266 void BinaryUint32OpInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |
| 6267 } |
| 6268 |
| 6269 |
| 6270 LocationSummary* ShiftUint32OpInstr::MakeLocationSummary(Isolate* isolate, |
| 6271 bool opt) const { |
| 6272 UNIMPLEMENTED(); |
| 6273 return NULL; |
| 6274 } |
| 6275 |
| 6276 |
| 6277 void ShiftUint32OpInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |
| 6278 } |
| 6279 |
| 6280 |
| 6281 LocationSummary* UnaryUint32OpInstr::MakeLocationSummary(Isolate* isolate, |
| 6282 bool opt) const { |
| 6283 UNIMPLEMENTED(); |
| 6284 return NULL; |
| 6285 } |
| 6286 |
| 6287 |
| 6288 void UnaryUint32OpInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |
| 6289 } |
| 6290 |
| 6291 |
| 6292 LocationSummary* UnboxUint32Instr::MakeLocationSummary(Isolate* isolate, |
| 6293 bool opt) const { |
| 6294 UNIMPLEMENTED(); |
| 6295 return NULL; |
| 6296 } |
| 6297 |
| 6298 |
| 6299 void UnboxUint32Instr::EmitNativeCode(FlowGraphCompiler* compiler) { |
| 6300 } |
| 6301 |
| 6302 |
| 6303 LocationSummary* BoxUint32Instr::MakeLocationSummary(Isolate* isolate, |
| 6304 bool opt) const { |
| 6305 UNIMPLEMENTED(); |
| 6306 return NULL; |
| 6307 } |
| 6308 |
| 6309 |
| 6310 void BoxUint32Instr::EmitNativeCode(FlowGraphCompiler* compiler) { |
| 6311 } |
| 6312 |
| 6313 |
6234 LocationSummary* ThrowInstr::MakeLocationSummary(Isolate* isolate, | 6314 LocationSummary* ThrowInstr::MakeLocationSummary(Isolate* isolate, |
6235 bool opt) const { | 6315 bool opt) const { |
6236 return new(isolate) LocationSummary(isolate, 0, 0, LocationSummary::kCall); | 6316 return new(isolate) LocationSummary(isolate, 0, 0, LocationSummary::kCall); |
6237 } | 6317 } |
6238 | 6318 |
6239 | 6319 |
6240 void ThrowInstr::EmitNativeCode(FlowGraphCompiler* compiler) { | 6320 void ThrowInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |
6241 compiler->GenerateRuntimeCall(token_pos(), | 6321 compiler->GenerateRuntimeCall(token_pos(), |
6242 deopt_id(), | 6322 deopt_id(), |
6243 kThrowRuntimeEntry, | 6323 kThrowRuntimeEntry, |
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6459 compiler->GenerateCall(token_pos(), &label, stub_kind_, locs()); | 6539 compiler->GenerateCall(token_pos(), &label, stub_kind_, locs()); |
6460 #if defined(DEBUG) | 6540 #if defined(DEBUG) |
6461 __ LoadImmediate(R4, kInvalidObjectPointer); | 6541 __ LoadImmediate(R4, kInvalidObjectPointer); |
6462 __ LoadImmediate(R5, kInvalidObjectPointer); | 6542 __ LoadImmediate(R5, kInvalidObjectPointer); |
6463 #endif | 6543 #endif |
6464 } | 6544 } |
6465 | 6545 |
6466 } // namespace dart | 6546 } // namespace dart |
6467 | 6547 |
6468 #endif // defined TARGET_ARCH_ARM | 6548 #endif // defined TARGET_ARCH_ARM |
OLD | NEW |