OLD | NEW |
---|---|
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 3387 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3398 } | 3398 } |
3399 | 3399 |
3400 | 3400 |
3401 bool CEntryStub::IsPregenerated() { | 3401 bool CEntryStub::IsPregenerated() { |
3402 return (!save_doubles_ || ISOLATE->fp_stubs_generated()) && | 3402 return (!save_doubles_ || ISOLATE->fp_stubs_generated()) && |
3403 result_size_ == 1; | 3403 result_size_ == 1; |
3404 } | 3404 } |
3405 | 3405 |
3406 | 3406 |
3407 void CodeStub::GenerateStubsAheadOfTime() { | 3407 void CodeStub::GenerateStubsAheadOfTime() { |
3408 CEntryStub::GenerateFixedRegStubsAheadOfTime(); | |
3408 WriteInt32ToHeapNumberStub::GenerateFixedRegStubsAheadOfTime(); | 3409 WriteInt32ToHeapNumberStub::GenerateFixedRegStubsAheadOfTime(); |
3409 StoreBufferOverflowStub::GenerateFixedRegStubsAheadOfTime(); | 3410 StoreBufferOverflowStub::GenerateFixedRegStubsAheadOfTime(); |
3410 RecordWriteStub::GenerateFixedRegStubsAheadOfTime(); | 3411 RecordWriteStub::GenerateFixedRegStubsAheadOfTime(); |
3411 } | 3412 } |
3412 | 3413 |
3413 | 3414 |
3414 void CodeStub::GenerateFPStubs() { | 3415 void CodeStub::GenerateFPStubs() { |
3415 CEntryStub save_doubles(1, kSaveFPRegs); | 3416 CEntryStub save_doubles(1, kSaveFPRegs); |
3416 Handle<Code> code = save_doubles.GetCode(); | 3417 Handle<Code> code = save_doubles.GetCode(); |
3417 code->set_is_pregenerated(true); | 3418 code->set_is_pregenerated(true); |
3418 code->GetIsolate()->set_fp_stubs_generated(true); | 3419 code->GetIsolate()->set_fp_stubs_generated(true); |
3419 } | 3420 } |
3420 | 3421 |
3421 | 3422 |
3423 void CEntryStub::GenerateFixedRegStubsAheadOfTime() { | |
Vyacheslav Egorov (Chromium)
2011/09/28 12:11:27
method name is missleading. there is nothing about
| |
3424 CEntryStub stub(1, kDontSaveFPRegs); | |
3425 Handle<Code> code = stub.GetCode(); | |
3426 code->set_is_pregenerated(true); | |
3427 } | |
3428 | |
3429 | |
3422 void CEntryStub::GenerateThrowTOS(MacroAssembler* masm) { | 3430 void CEntryStub::GenerateThrowTOS(MacroAssembler* masm) { |
3423 __ Throw(r0); | 3431 __ Throw(r0); |
3424 } | 3432 } |
3425 | 3433 |
3426 | 3434 |
3427 void CEntryStub::GenerateThrowUncatchable(MacroAssembler* masm, | 3435 void CEntryStub::GenerateThrowUncatchable(MacroAssembler* masm, |
3428 UncatchableExceptionType type) { | 3436 UncatchableExceptionType type) { |
3429 __ ThrowUncatchable(type, r0); | 3437 __ ThrowUncatchable(type, r0); |
3430 } | 3438 } |
3431 | 3439 |
(...skipping 3655 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
7087 | 7095 |
7088 // Fall through when we need to inform the incremental marker. | 7096 // Fall through when we need to inform the incremental marker. |
7089 } | 7097 } |
7090 | 7098 |
7091 | 7099 |
7092 #undef __ | 7100 #undef __ |
7093 | 7101 |
7094 } } // namespace v8::internal | 7102 } } // namespace v8::internal |
7095 | 7103 |
7096 #endif // V8_TARGET_ARCH_ARM | 7104 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |