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 1075 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1086 Representation representation) { | 1086 Representation representation) { |
1087 if (kind() == Code::LOAD_IC) { | 1087 if (kind() == Code::LOAD_IC) { |
1088 LoadFieldStub stub(inobject, offset, representation); | 1088 LoadFieldStub stub(inobject, offset, representation); |
1089 return stub.GetCode(isolate()); | 1089 return stub.GetCode(isolate()); |
1090 } else { | 1090 } else { |
1091 KeyedLoadFieldStub stub(inobject, offset, representation); | 1091 KeyedLoadFieldStub stub(inobject, offset, representation); |
1092 return stub.GetCode(isolate()); | 1092 return stub.GetCode(isolate()); |
1093 } | 1093 } |
1094 } | 1094 } |
1095 | 1095 |
| 1096 |
1096 void LoadIC::UpdateCaches(LookupResult* lookup, | 1097 void LoadIC::UpdateCaches(LookupResult* lookup, |
1097 Handle<Object> object, | 1098 Handle<Object> object, |
1098 Handle<String> name) { | 1099 Handle<String> name) { |
1099 // TODO(verwaest): It would be nice to support loading fields from smis as | 1100 // TODO(verwaest): It would be nice to support loading fields from smis as |
1100 // well. For now just fail to update the cache. | 1101 // well. For now just fail to update the cache. |
1101 if (!object->IsHeapObject()) return; | 1102 if (!object->IsHeapObject()) return; |
1102 | 1103 |
1103 Handle<HeapObject> receiver = Handle<HeapObject>::cast(object); | 1104 Handle<HeapObject> receiver = Handle<HeapObject>::cast(object); |
1104 | 1105 |
1105 Handle<Code> code; | 1106 Handle<Code> code; |
(...skipping 1614 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2720 #undef ADDR | 2721 #undef ADDR |
2721 }; | 2722 }; |
2722 | 2723 |
2723 | 2724 |
2724 Address IC::AddressFromUtilityId(IC::UtilityId id) { | 2725 Address IC::AddressFromUtilityId(IC::UtilityId id) { |
2725 return IC_utilities[id]; | 2726 return IC_utilities[id]; |
2726 } | 2727 } |
2727 | 2728 |
2728 | 2729 |
2729 } } // namespace v8::internal | 2730 } } // namespace v8::internal |
OLD | NEW |