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 <errno.h> | 5 #include <errno.h> |
6 #include <stdlib.h> | 6 #include <stdlib.h> |
7 #include <string.h> | 7 #include <string.h> |
8 #include <sys/stat.h> | 8 #include <sys/stat.h> |
9 | 9 |
10 #include <algorithm> | 10 #include <algorithm> |
(...skipping 18 matching lines...) Expand all Loading... |
29 #include "src/base/platform/platform.h" | 29 #include "src/base/platform/platform.h" |
30 #include "src/base/platform/time.h" | 30 #include "src/base/platform/time.h" |
31 #include "src/base/sys-info.h" | 31 #include "src/base/sys-info.h" |
32 #include "src/basic-block-profiler.h" | 32 #include "src/basic-block-profiler.h" |
33 #include "src/debug/debug-interface.h" | 33 #include "src/debug/debug-interface.h" |
34 #include "src/interpreter/interpreter.h" | 34 #include "src/interpreter/interpreter.h" |
35 #include "src/list-inl.h" | 35 #include "src/list-inl.h" |
36 #include "src/msan.h" | 36 #include "src/msan.h" |
37 #include "src/objects-inl.h" | 37 #include "src/objects-inl.h" |
38 #include "src/snapshot/natives.h" | 38 #include "src/snapshot/natives.h" |
| 39 #include "src/trap-handler/trap-handler.h" |
39 #include "src/utils.h" | 40 #include "src/utils.h" |
40 #include "src/v8.h" | 41 #include "src/v8.h" |
41 | 42 |
42 #ifdef V8_INSPECTOR_ENABLED | 43 #ifdef V8_INSPECTOR_ENABLED |
43 #include "include/v8-inspector.h" | 44 #include "include/v8-inspector.h" |
44 #endif // V8_INSPECTOR_ENABLED | 45 #endif // V8_INSPECTOR_ENABLED |
45 | 46 |
46 #if !defined(_WIN32) && !defined(_WIN64) | 47 #if !defined(_WIN32) && !defined(_WIN64) |
47 #include <unistd.h> // NOLINT | 48 #include <unistd.h> // NOLINT |
48 #else | 49 #else |
(...skipping 2858 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2907 base::SysInfo::AmountOfPhysicalMemory(), | 2908 base::SysInfo::AmountOfPhysicalMemory(), |
2908 base::SysInfo::AmountOfVirtualMemory()); | 2909 base::SysInfo::AmountOfVirtualMemory()); |
2909 | 2910 |
2910 Shell::counter_map_ = new CounterMap(); | 2911 Shell::counter_map_ = new CounterMap(); |
2911 if (i::FLAG_dump_counters || i::FLAG_dump_counters_nvp || i::FLAG_gc_stats) { | 2912 if (i::FLAG_dump_counters || i::FLAG_dump_counters_nvp || i::FLAG_gc_stats) { |
2912 create_params.counter_lookup_callback = LookupCounter; | 2913 create_params.counter_lookup_callback = LookupCounter; |
2913 create_params.create_histogram_callback = CreateHistogram; | 2914 create_params.create_histogram_callback = CreateHistogram; |
2914 create_params.add_histogram_sample_callback = AddHistogramSample; | 2915 create_params.add_histogram_sample_callback = AddHistogramSample; |
2915 } | 2916 } |
2916 | 2917 |
| 2918 if (i::trap_handler::UseTrapHandler()) { |
| 2919 if (!v8::V8::RegisterDefaultSignalHandler()) { |
| 2920 fprintf(stderr, "Could not register signal handler"); |
| 2921 exit(1); |
| 2922 } |
| 2923 } |
| 2924 |
2917 Isolate* isolate = Isolate::New(create_params); | 2925 Isolate* isolate = Isolate::New(create_params); |
2918 { | 2926 { |
2919 Isolate::Scope scope(isolate); | 2927 Isolate::Scope scope(isolate); |
2920 Initialize(isolate); | 2928 Initialize(isolate); |
2921 PerIsolateData data(isolate); | 2929 PerIsolateData data(isolate); |
2922 | 2930 |
2923 if (options.trace_enabled) { | 2931 if (options.trace_enabled) { |
2924 platform::tracing::TraceConfig* trace_config; | 2932 platform::tracing::TraceConfig* trace_config; |
2925 if (options.trace_config) { | 2933 if (options.trace_config) { |
2926 int size = 0; | 2934 int size = 0; |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2996 } | 3004 } |
2997 | 3005 |
2998 } // namespace v8 | 3006 } // namespace v8 |
2999 | 3007 |
3000 | 3008 |
3001 #ifndef GOOGLE3 | 3009 #ifndef GOOGLE3 |
3002 int main(int argc, char* argv[]) { | 3010 int main(int argc, char* argv[]) { |
3003 return v8::Shell::Main(argc, argv); | 3011 return v8::Shell::Main(argc, argv); |
3004 } | 3012 } |
3005 #endif | 3013 #endif |
OLD | NEW |