OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/base/bits.h" | 7 #include "src/base/bits.h" |
8 #include "src/double.h" | 8 #include "src/double.h" |
9 #include "src/factory.h" | 9 #include "src/factory.h" |
10 #include "src/hydrogen-infer-representation.h" | 10 #include "src/hydrogen-infer-representation.h" |
(...skipping 4626 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4637 | 4637 |
4638 HObjectAccess HObjectAccess::ForContextSlot(int index) { | 4638 HObjectAccess HObjectAccess::ForContextSlot(int index) { |
4639 DCHECK(index >= 0); | 4639 DCHECK(index >= 0); |
4640 Portion portion = kInobject; | 4640 Portion portion = kInobject; |
4641 int offset = Context::kHeaderSize + index * kPointerSize; | 4641 int offset = Context::kHeaderSize + index * kPointerSize; |
4642 DCHECK_EQ(offset, Context::SlotOffset(index) + kHeapObjectTag); | 4642 DCHECK_EQ(offset, Context::SlotOffset(index) + kHeapObjectTag); |
4643 return HObjectAccess(portion, offset, Representation::Tagged()); | 4643 return HObjectAccess(portion, offset, Representation::Tagged()); |
4644 } | 4644 } |
4645 | 4645 |
4646 | 4646 |
4647 HObjectAccess HObjectAccess::ForGlobalContext(int index) { | 4647 HObjectAccess HObjectAccess::ForScriptContext(int index) { |
4648 DCHECK(index >= 0); | 4648 DCHECK(index >= 0); |
4649 Portion portion = kInobject; | 4649 Portion portion = kInobject; |
4650 int offset = GlobalContextTable::GetContextOffset(index); | 4650 int offset = ScriptContextTable::GetContextOffset(index); |
4651 return HObjectAccess(portion, offset, Representation::Tagged()); | 4651 return HObjectAccess(portion, offset, Representation::Tagged()); |
4652 } | 4652 } |
4653 | 4653 |
4654 | 4654 |
4655 HObjectAccess HObjectAccess::ForJSArrayOffset(int offset) { | 4655 HObjectAccess HObjectAccess::ForJSArrayOffset(int offset) { |
4656 DCHECK(offset >= 0); | 4656 DCHECK(offset >= 0); |
4657 Portion portion = kInobject; | 4657 Portion portion = kInobject; |
4658 | 4658 |
4659 if (offset == JSObject::kElementsOffset) { | 4659 if (offset == JSObject::kElementsOffset) { |
4660 portion = kElementsPointer; | 4660 portion = kElementsPointer; |
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4800 break; | 4800 break; |
4801 case HObjectAccess::kExternalMemory: | 4801 case HObjectAccess::kExternalMemory: |
4802 os << "[external-memory]"; | 4802 os << "[external-memory]"; |
4803 break; | 4803 break; |
4804 } | 4804 } |
4805 | 4805 |
4806 return os << "@" << access.offset(); | 4806 return os << "@" << access.offset(); |
4807 } | 4807 } |
4808 | 4808 |
4809 } } // namespace v8::internal | 4809 } } // namespace v8::internal |
OLD | NEW |