OLD | NEW |
---|---|
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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/isolate.h" | 5 #include "src/isolate.h" |
6 | 6 |
7 #include <stdlib.h> | 7 #include <stdlib.h> |
8 | 8 |
9 #include <fstream> // NOLINT(readability/streams) | 9 #include <fstream> // NOLINT(readability/streams) |
10 #include <sstream> | 10 #include <sstream> |
(...skipping 502 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
513 Code* code = wasm_frame->unchecked_code(); | 513 Code* code = wasm_frame->unchecked_code(); |
514 Handle<AbstractCode> abstract_code(AbstractCode::cast(code), this); | 514 Handle<AbstractCode> abstract_code(AbstractCode::cast(code), this); |
515 const int offset = | 515 const int offset = |
516 static_cast<int>(wasm_frame->pc() - code->instruction_start()); | 516 static_cast<int>(wasm_frame->pc() - code->instruction_start()); |
517 | 517 |
518 // TODO(wasm): The wasm object returned by the WasmFrame should always | 518 // TODO(wasm): The wasm object returned by the WasmFrame should always |
519 // be a wasm object. | 519 // be a wasm object. |
520 DCHECK(wasm::IsWasmObject(*wasm_object) || | 520 DCHECK(wasm::IsWasmObject(*wasm_object) || |
521 wasm_object->IsUndefined(this)); | 521 wasm_object->IsUndefined(this)); |
522 | 522 |
523 elements = FrameArray::AppendWasmFrame( | 523 int flags = FrameArray::kIsWasmFrame; |
524 elements, wasm_object, wasm_function_index, abstract_code, offset, | 524 if (wasm::WasmIsAsm(*wasm_object, this)) { |
titzer
2016/10/11 14:51:25
WasmIsAsmJs?
Clemens Hammacher
2016/10/11 17:04:22
Done.
| |
525 FrameArray::kIsWasmFrame); | 525 flags |= FrameArray::kIsAsmWasmFrame; |
526 } | |
527 | |
528 elements = FrameArray::AppendWasmFrame(elements, wasm_object, | |
529 wasm_function_index, | |
530 abstract_code, offset, flags); | |
526 } break; | 531 } break; |
527 | 532 |
528 default: | 533 default: |
529 break; | 534 break; |
530 } | 535 } |
531 } | 536 } |
532 | 537 |
533 elements->ShrinkToFit(); | 538 elements->ShrinkToFit(); |
534 | 539 |
535 // TODO(yangguo): Queue this structured stack trace for preprocessing on GC. | 540 // TODO(yangguo): Queue this structured stack trace for preprocessing on GC. |
(...skipping 2841 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3377 // Then check whether this scope intercepts. | 3382 // Then check whether this scope intercepts. |
3378 if ((flag & intercept_mask_)) { | 3383 if ((flag & intercept_mask_)) { |
3379 intercepted_flags_ |= flag; | 3384 intercepted_flags_ |= flag; |
3380 return true; | 3385 return true; |
3381 } | 3386 } |
3382 return false; | 3387 return false; |
3383 } | 3388 } |
3384 | 3389 |
3385 } // namespace internal | 3390 } // namespace internal |
3386 } // namespace v8 | 3391 } // namespace v8 |
OLD | NEW |