OLD | NEW |
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 3071 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3082 | 3082 |
3083 | 3083 |
3084 void Code::set_compiled_optimizable(bool value) { | 3084 void Code::set_compiled_optimizable(bool value) { |
3085 ASSERT(kind() == FUNCTION); | 3085 ASSERT(kind() == FUNCTION); |
3086 byte flags = READ_BYTE_FIELD(this, kFullCodeFlags); | 3086 byte flags = READ_BYTE_FIELD(this, kFullCodeFlags); |
3087 flags = FullCodeFlagsIsCompiledOptimizable::update(flags, value); | 3087 flags = FullCodeFlagsIsCompiledOptimizable::update(flags, value); |
3088 WRITE_BYTE_FIELD(this, kFullCodeFlags, flags); | 3088 WRITE_BYTE_FIELD(this, kFullCodeFlags, flags); |
3089 } | 3089 } |
3090 | 3090 |
3091 | 3091 |
| 3092 bool Code::has_self_optimization_header() { |
| 3093 ASSERT(kind() == FUNCTION); |
| 3094 byte flags = READ_BYTE_FIELD(this, kFullCodeFlags); |
| 3095 return FullCodeFlagsHasSelfOptimizationHeader::decode(flags); |
| 3096 } |
| 3097 |
| 3098 |
| 3099 void Code::set_self_optimization_header(bool value) { |
| 3100 ASSERT(kind() == FUNCTION); |
| 3101 byte flags = READ_BYTE_FIELD(this, kFullCodeFlags); |
| 3102 flags = FullCodeFlagsHasSelfOptimizationHeader::update(flags, value); |
| 3103 WRITE_BYTE_FIELD(this, kFullCodeFlags, flags); |
| 3104 } |
| 3105 |
| 3106 |
3092 int Code::allow_osr_at_loop_nesting_level() { | 3107 int Code::allow_osr_at_loop_nesting_level() { |
3093 ASSERT(kind() == FUNCTION); | 3108 ASSERT(kind() == FUNCTION); |
3094 return READ_BYTE_FIELD(this, kAllowOSRAtLoopNestingLevelOffset); | 3109 return READ_BYTE_FIELD(this, kAllowOSRAtLoopNestingLevelOffset); |
3095 } | 3110 } |
3096 | 3111 |
3097 | 3112 |
3098 void Code::set_allow_osr_at_loop_nesting_level(int level) { | 3113 void Code::set_allow_osr_at_loop_nesting_level(int level) { |
3099 ASSERT(kind() == FUNCTION); | 3114 ASSERT(kind() == FUNCTION); |
3100 ASSERT(level >= 0 && level <= kMaxLoopNestingMarker); | 3115 ASSERT(level >= 0 && level <= kMaxLoopNestingMarker); |
3101 WRITE_BYTE_FIELD(this, kAllowOSRAtLoopNestingLevelOffset, level); | 3116 WRITE_BYTE_FIELD(this, kAllowOSRAtLoopNestingLevelOffset, level); |
(...skipping 1807 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4909 #undef WRITE_INT_FIELD | 4924 #undef WRITE_INT_FIELD |
4910 #undef READ_SHORT_FIELD | 4925 #undef READ_SHORT_FIELD |
4911 #undef WRITE_SHORT_FIELD | 4926 #undef WRITE_SHORT_FIELD |
4912 #undef READ_BYTE_FIELD | 4927 #undef READ_BYTE_FIELD |
4913 #undef WRITE_BYTE_FIELD | 4928 #undef WRITE_BYTE_FIELD |
4914 | 4929 |
4915 | 4930 |
4916 } } // namespace v8::internal | 4931 } } // namespace v8::internal |
4917 | 4932 |
4918 #endif // V8_OBJECTS_INL_H_ | 4933 #endif // V8_OBJECTS_INL_H_ |
OLD | NEW |