| 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 4608 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4619 Address visitable_start = page->ObjectAreaStart(); | 4619 Address visitable_start = page->ObjectAreaStart(); |
| 4620 Address end_of_page = page->ObjectAreaEnd(); | 4620 Address end_of_page = page->ObjectAreaEnd(); |
| 4621 | 4621 |
| 4622 Address visitable_end = visitable_start; | 4622 Address visitable_end = visitable_start; |
| 4623 | 4623 |
| 4624 // TODO(gc) ISOLATES | 4624 // TODO(gc) ISOLATES |
| 4625 Object* free_space_map = HEAP->free_space_map(); | 4625 Object* free_space_map = HEAP->free_space_map(); |
| 4626 Object* two_pointer_filler_map = HEAP->two_pointer_filler_map(); | 4626 Object* two_pointer_filler_map = HEAP->two_pointer_filler_map(); |
| 4627 | 4627 |
| 4628 while (visitable_end < end_of_page) { | 4628 while (visitable_end < end_of_page) { |
| 4629 #ifdef DEBUG |
| 4630 int offset = visitable_start - page->ObjectAreaStart(); |
| 4631 ASSERT(offset == space->RoundSizeDownToObjectAlignment(offset)); |
| 4632 #endif |
| 4629 Object* o = *reinterpret_cast<Object**>(visitable_end); | 4633 Object* o = *reinterpret_cast<Object**>(visitable_end); |
| 4630 // Skip fillers but not things that look like fillers in the special | 4634 // Skip fillers but not things that look like fillers in the special |
| 4631 // garbage section which can contain anything. | 4635 // garbage section which can contain anything. |
| 4632 if (o == free_space_map || | 4636 if (o == free_space_map || |
| 4633 o == two_pointer_filler_map || | 4637 o == two_pointer_filler_map || |
| 4634 visitable_end == space->top()) { | 4638 visitable_end == space->top()) { |
| 4635 if (visitable_start != visitable_end) { | 4639 if (visitable_start != visitable_end) { |
| 4636 // After calling this the special garbage section may have moved. | 4640 // After calling this the special garbage section may have moved. |
| 4637 visit_pointer_region(HEAP, | 4641 visit_pointer_region(HEAP, |
| 4638 visitable_start, | 4642 visitable_start, |
| (...skipping 1372 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6011 } | 6015 } |
| 6012 | 6016 |
| 6013 | 6017 |
| 6014 void ExternalStringTable::TearDown() { | 6018 void ExternalStringTable::TearDown() { |
| 6015 new_space_strings_.Free(); | 6019 new_space_strings_.Free(); |
| 6016 old_space_strings_.Free(); | 6020 old_space_strings_.Free(); |
| 6017 } | 6021 } |
| 6018 | 6022 |
| 6019 | 6023 |
| 6020 } } // namespace v8::internal | 6024 } } // namespace v8::internal |
| OLD | NEW |