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

Side by Side Diff: src/objects.h

Issue 14710015: Prevent flushing of code that was set with %SetCode. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 7 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 | « src/bootstrapper.cc ('k') | src/objects-inl.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 6093 matching lines...) Expand 10 before | Expand all | Expand 10 after
6104 6104
6105 // Indicates that the function cannot be optimized. 6105 // Indicates that the function cannot be optimized.
6106 DECL_BOOLEAN_ACCESSORS(dont_optimize) 6106 DECL_BOOLEAN_ACCESSORS(dont_optimize)
6107 6107
6108 // Indicates that the function cannot be inlined. 6108 // Indicates that the function cannot be inlined.
6109 DECL_BOOLEAN_ACCESSORS(dont_inline) 6109 DECL_BOOLEAN_ACCESSORS(dont_inline)
6110 6110
6111 // Indicates that code for this function cannot be cached. 6111 // Indicates that code for this function cannot be cached.
6112 DECL_BOOLEAN_ACCESSORS(dont_cache) 6112 DECL_BOOLEAN_ACCESSORS(dont_cache)
6113 6113
6114 // Indicates that code for this function cannot be flushed.
6115 DECL_BOOLEAN_ACCESSORS(dont_flush)
6116
6114 // Indicates that this function is a generator. 6117 // Indicates that this function is a generator.
6115 DECL_BOOLEAN_ACCESSORS(is_generator) 6118 DECL_BOOLEAN_ACCESSORS(is_generator)
6116 6119
6117 // Indicates whether or not the code in the shared function support 6120 // Indicates whether or not the code in the shared function support
6118 // deoptimization. 6121 // deoptimization.
6119 inline bool has_deoptimization_support(); 6122 inline bool has_deoptimization_support();
6120 6123
6121 // Enable deoptimization support through recompiled code. 6124 // Enable deoptimization support through recompiled code.
6122 void EnableDeoptimizationSupport(Code* recompiled); 6125 void EnableDeoptimizationSupport(Code* recompiled);
6123 6126
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
6333 kUsesArguments, 6336 kUsesArguments,
6334 kHasDuplicateParameters, 6337 kHasDuplicateParameters,
6335 kNative, 6338 kNative,
6336 kBoundFunction, 6339 kBoundFunction,
6337 kIsAnonymous, 6340 kIsAnonymous,
6338 kNameShouldPrintAsAnonymous, 6341 kNameShouldPrintAsAnonymous,
6339 kIsFunction, 6342 kIsFunction,
6340 kDontOptimize, 6343 kDontOptimize,
6341 kDontInline, 6344 kDontInline,
6342 kDontCache, 6345 kDontCache,
6346 kDontFlush,
6343 kIsGenerator, 6347 kIsGenerator,
6344 kCompilerHintsCount // Pseudo entry 6348 kCompilerHintsCount // Pseudo entry
6345 }; 6349 };
6346 6350
6347 class DeoptCountBits: public BitField<int, 0, 4> {}; 6351 class DeoptCountBits: public BitField<int, 0, 4> {};
6348 class OptReenableTriesBits: public BitField<int, 4, 18> {}; 6352 class OptReenableTriesBits: public BitField<int, 4, 18> {};
6349 class ICAgeBits: public BitField<int, 22, 8> {}; 6353 class ICAgeBits: public BitField<int, 22, 8> {};
6350 6354
6351 private: 6355 private:
6352 #if V8_HOST_ARCH_32_BIT 6356 #if V8_HOST_ARCH_32_BIT
(...skipping 3215 matching lines...) Expand 10 before | Expand all | Expand 10 after
9568 } else { 9572 } else {
9569 value &= ~(1 << bit_position); 9573 value &= ~(1 << bit_position);
9570 } 9574 }
9571 return value; 9575 return value;
9572 } 9576 }
9573 }; 9577 };
9574 9578
9575 } } // namespace v8::internal 9579 } } // namespace v8::internal
9576 9580
9577 #endif // V8_OBJECTS_H_ 9581 #endif // V8_OBJECTS_H_
OLDNEW
« no previous file with comments | « src/bootstrapper.cc ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698