OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 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 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
275 | 275 |
276 // Callback function on inline caches, used for iterating over inline caches | 276 // Callback function on inline caches, used for iterating over inline caches |
277 // in compiled code. | 277 // in compiled code. |
278 typedef void (*InlineCacheCallback)(Code* code, Address ic); | 278 typedef void (*InlineCacheCallback)(Code* code, Address ic); |
279 | 279 |
280 | 280 |
281 // State for inline cache call sites. Aliased as IC::State. | 281 // State for inline cache call sites. Aliased as IC::State. |
282 enum InlineCacheState { | 282 enum InlineCacheState { |
283 // Has never been executed. | 283 // Has never been executed. |
284 UNINITIALIZED, | 284 UNINITIALIZED, |
| 285 // Has never been executed, but is in a loop. |
| 286 UNINITIALIZED_IN_LOOP, |
285 // Has been executed but monomorhic state has been delayed. | 287 // Has been executed but monomorhic state has been delayed. |
286 PREMONOMORPHIC, | 288 PREMONOMORPHIC, |
287 // Has been executed and only one receiver type has been seen. | 289 // Has been executed and only one receiver type has been seen. |
288 MONOMORPHIC, | 290 MONOMORPHIC, |
289 // Like MONOMORPHIC but check failed due to prototype. | 291 // Like MONOMORPHIC but check failed due to prototype. |
290 MONOMORPHIC_PROTOTYPE_FAILURE, | 292 MONOMORPHIC_PROTOTYPE_FAILURE, |
291 // Multiple receiver types have been seen. | 293 // Multiple receiver types have been seen. |
292 MEGAMORPHIC, | 294 MEGAMORPHIC, |
293 // Special states for debug break or step in prepare stubs. | 295 // Special states for debug break or step in prepare stubs. |
294 DEBUG_BREAK, | 296 DEBUG_BREAK, |
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
497 | 499 |
498 Dest dest; | 500 Dest dest; |
499 memcpy(&dest, &source, sizeof(dest)); | 501 memcpy(&dest, &source, sizeof(dest)); |
500 return dest; | 502 return dest; |
501 } | 503 } |
502 | 504 |
503 | 505 |
504 } } // namespace v8::internal | 506 } } // namespace v8::internal |
505 | 507 |
506 #endif // V8_GLOBALS_H_ | 508 #endif // V8_GLOBALS_H_ |
OLD | NEW |