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 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
240 | 240 |
241 | 241 |
242 // static | 242 // static |
243 void BinaryOpICStub::GenerateAheadOfTime(Isolate* isolate, | 243 void BinaryOpICStub::GenerateAheadOfTime(Isolate* isolate, |
244 const BinaryOpIC::State& state) { | 244 const BinaryOpIC::State& state) { |
245 BinaryOpICStub stub(state); | 245 BinaryOpICStub stub(state); |
246 stub.GetCode(isolate); | 246 stub.GetCode(isolate); |
247 } | 247 } |
248 | 248 |
249 | 249 |
| 250 // static |
| 251 void BinaryOpICWithAllocationSiteStub::GenerateAheadOfTime(Isolate* isolate) { |
| 252 // Generate special versions of the stub. |
| 253 BinaryOpIC::State::GenerateAheadOfTime(isolate, &GenerateAheadOfTime); |
| 254 } |
| 255 |
| 256 |
| 257 void BinaryOpICWithAllocationSiteStub::PrintState(StringStream* stream) { |
| 258 state_.Print(stream); |
| 259 } |
| 260 |
| 261 |
| 262 // static |
| 263 void BinaryOpICWithAllocationSiteStub::GenerateAheadOfTime( |
| 264 Isolate* isolate, const BinaryOpIC::State& state) { |
| 265 if (state.CouldCreateAllocationMementos()) { |
| 266 BinaryOpICWithAllocationSiteStub stub(state); |
| 267 stub.GetCode(isolate); |
| 268 } |
| 269 } |
| 270 |
| 271 |
250 void NewStringAddStub::PrintBaseName(StringStream* stream) { | 272 void NewStringAddStub::PrintBaseName(StringStream* stream) { |
251 stream->Add("NewStringAddStub"); | 273 stream->Add("NewStringAddStub"); |
252 if ((flags() & STRING_ADD_CHECK_BOTH) == STRING_ADD_CHECK_BOTH) { | 274 if ((flags() & STRING_ADD_CHECK_BOTH) == STRING_ADD_CHECK_BOTH) { |
253 stream->Add("_CheckBoth"); | 275 stream->Add("_CheckBoth"); |
254 } else if ((flags() & STRING_ADD_CHECK_LEFT) == STRING_ADD_CHECK_LEFT) { | 276 } else if ((flags() & STRING_ADD_CHECK_LEFT) == STRING_ADD_CHECK_LEFT) { |
255 stream->Add("_CheckLeft"); | 277 stream->Add("_CheckLeft"); |
256 } else if ((flags() & STRING_ADD_CHECK_RIGHT) == STRING_ADD_CHECK_RIGHT) { | 278 } else if ((flags() & STRING_ADD_CHECK_RIGHT) == STRING_ADD_CHECK_RIGHT) { |
257 stream->Add("_CheckRight"); | 279 stream->Add("_CheckRight"); |
258 } | 280 } |
259 if (pretenure_flag() == TENURED) { | 281 if (pretenure_flag() == TENURED) { |
(...skipping 525 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
785 InstallDescriptor(isolate, &stub3); | 807 InstallDescriptor(isolate, &stub3); |
786 } | 808 } |
787 | 809 |
788 InternalArrayConstructorStub::InternalArrayConstructorStub( | 810 InternalArrayConstructorStub::InternalArrayConstructorStub( |
789 Isolate* isolate) { | 811 Isolate* isolate) { |
790 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); | 812 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); |
791 } | 813 } |
792 | 814 |
793 | 815 |
794 } } // namespace v8::internal | 816 } } // namespace v8::internal |
OLD | NEW |