Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(169)

Side by Side Diff: include/v8.h

Issue 12223027: This patch is the propagation version of https://codereview.chromium.org/10824032 patch (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | src/assembler.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 3022 matching lines...) Expand 10 before | Expand all | Expand 10 after
3033 3033
3034 /** 3034 /**
3035 * A JIT code event is issued each time code is added, moved or removed. 3035 * A JIT code event is issued each time code is added, moved or removed.
3036 * 3036 *
3037 * \note removal events are not currently issued. 3037 * \note removal events are not currently issued.
3038 */ 3038 */
3039 struct JitCodeEvent { 3039 struct JitCodeEvent {
3040 enum EventType { 3040 enum EventType {
3041 CODE_ADDED, 3041 CODE_ADDED,
3042 CODE_MOVED, 3042 CODE_MOVED,
3043 CODE_REMOVED 3043 CODE_REMOVED,
3044 CODE_ADD_LINE_POS_INFO,
3045 CODE_START_LINE_INFO_RECORDING,
3046 CODE_END_LINE_INFO_RECORDING
3047 };
3048 // Definition of the code position type. The "POSITION" type means the place
3049 // in the source code which are of interest when making stack traces to
3050 // pin-point the source location of a stack frame as close as possible.
3051 // The "STATEMENT_POSITION" means the place at the beginning of each
3052 // statement, and is used to indicate possible break locations.
3053 enum PositionType {
3054 POSITION,
3055 STATEMENT_POSITION
3044 }; 3056 };
3045 3057
3046 // Type of event. 3058 // Type of event.
3047 EventType type; 3059 EventType type;
3048 // Start of the instructions. 3060 // Start of the instructions.
3049 void* code_start; 3061 void* code_start;
3050 // Size of the instructions. 3062 // Size of the instructions.
3051 size_t code_len; 3063 size_t code_len;
3064 // Script info for CODE_ADDED event.
3065 Handle<Script> script;
3066 // User-defined data for *_LINE_INFO_* event. It's used to hold the source
3067 // code line information which is returned from the
3068 // CODE_START_LINE_INFO_RECORDING event. And it's passed to subsequent
3069 // CODE_ADD_LINE_POS_INFO and CODE_END_LINE_INFO_RECORDING events.
3070 void* user_data;
3052 3071
3053 union { 3072 union {
3054 // Only valid for CODE_ADDED. 3073 // Only valid for CODE_ADDED.
3055 struct { 3074 struct {
3056 // Name of the object associated with the code, note that the string is 3075 // Name of the object associated with the code, note that the string is
3057 // not zero-terminated. 3076 // not zero-terminated.
3058 const char* str; 3077 const char* str;
3059 // Number of chars in str. 3078 // Number of chars in str.
3060 size_t len; 3079 size_t len;
3061 } name; 3080 } name;
3081
3082 // Only valid for CODE_ADD_LINE_POS_INFO
3083 struct {
3084 // PC offset
3085 size_t offset;
3086 // Code postion
3087 size_t pos;
3088 // The position type.
3089 PositionType position_type;
3090 } line_info;
3091
3062 // New location of instructions. Only valid for CODE_MOVED. 3092 // New location of instructions. Only valid for CODE_MOVED.
3063 void* new_code_start; 3093 void* new_code_start;
3064 }; 3094 };
3065 }; 3095 };
3066 3096
3067 /** 3097 /**
3068 * Option flags passed to the SetJitCodeEventHandler function. 3098 * Option flags passed to the SetJitCodeEventHandler function.
3069 */ 3099 */
3070 enum JitCodeEventOptions { 3100 enum JitCodeEventOptions {
3071 kJitCodeEventDefault = 0, 3101 kJitCodeEventDefault = 0,
(...skipping 1852 matching lines...) Expand 10 before | Expand all | Expand 10 after
4924 4954
4925 4955
4926 } // namespace v8 4956 } // namespace v8
4927 4957
4928 4958
4929 #undef V8EXPORT 4959 #undef V8EXPORT
4930 #undef TYPE_CHECK 4960 #undef TYPE_CHECK
4931 4961
4932 4962
4933 #endif // V8_H_ 4963 #endif // V8_H_
OLDNEW
« no previous file with comments | « no previous file | src/assembler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698