| 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 4462 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4473 case FAST_ELEMENTS: | 4473 case FAST_ELEMENTS: |
| 4474 case FAST_HOLEY_ELEMENTS: | 4474 case FAST_HOLEY_ELEMENTS: |
| 4475 AddInstruction(new(zone()) HStoreKeyedFastElement( | 4475 AddInstruction(new(zone()) HStoreKeyedFastElement( |
| 4476 elements, | 4476 elements, |
| 4477 key, | 4477 key, |
| 4478 value, | 4478 value, |
| 4479 boilerplate_elements_kind)); | 4479 boilerplate_elements_kind)); |
| 4480 break; | 4480 break; |
| 4481 case FAST_DOUBLE_ELEMENTS: | 4481 case FAST_DOUBLE_ELEMENTS: |
| 4482 case FAST_HOLEY_DOUBLE_ELEMENTS: | 4482 case FAST_HOLEY_DOUBLE_ELEMENTS: |
| 4483 AddInstruction(new(zone()) HStoreKeyedFastDoubleElement(elements, | 4483 AddInstruction(new(zone()) HStoreKeyedFastDoubleElement( |
| 4484 key, | 4484 elements, |
| 4485 value)); | 4485 key, |
| 4486 value, |
| 4487 boilerplate_elements_kind)); |
| 4486 break; | 4488 break; |
| 4487 default: | 4489 default: |
| 4488 UNREACHABLE(); | 4490 UNREACHABLE(); |
| 4489 break; | 4491 break; |
| 4490 } | 4492 } |
| 4491 | 4493 |
| 4492 AddSimulate(expr->GetIdForElement(i)); | 4494 AddSimulate(expr->GetIdForElement(i)); |
| 4493 } | 4495 } |
| 4494 return ast_context()->ReturnValue(Pop()); | 4496 return ast_context()->ReturnValue(Pop()); |
| 4495 } | 4497 } |
| (...skipping 793 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5289 HValue* checked_key, | 5291 HValue* checked_key, |
| 5290 HValue* val, | 5292 HValue* val, |
| 5291 ElementsKind elements_kind, | 5293 ElementsKind elements_kind, |
| 5292 bool is_store) { | 5294 bool is_store) { |
| 5293 if (is_store) { | 5295 if (is_store) { |
| 5294 ASSERT(val != NULL); | 5296 ASSERT(val != NULL); |
| 5295 switch (elements_kind) { | 5297 switch (elements_kind) { |
| 5296 case FAST_DOUBLE_ELEMENTS: | 5298 case FAST_DOUBLE_ELEMENTS: |
| 5297 case FAST_HOLEY_DOUBLE_ELEMENTS: | 5299 case FAST_HOLEY_DOUBLE_ELEMENTS: |
| 5298 return new(zone()) HStoreKeyedFastDoubleElement( | 5300 return new(zone()) HStoreKeyedFastDoubleElement( |
| 5299 elements, checked_key, val); | 5301 elements, checked_key, val, elements_kind); |
| 5300 case FAST_SMI_ELEMENTS: | 5302 case FAST_SMI_ELEMENTS: |
| 5301 case FAST_HOLEY_SMI_ELEMENTS: | 5303 case FAST_HOLEY_SMI_ELEMENTS: |
| 5302 // Smi-only arrays need a smi check. | 5304 // Smi-only arrays need a smi check. |
| 5303 AddInstruction(new(zone()) HCheckSmi(val)); | 5305 AddInstruction(new(zone()) HCheckSmi(val)); |
| 5304 // Fall through. | 5306 // Fall through. |
| 5305 case FAST_ELEMENTS: | 5307 case FAST_ELEMENTS: |
| 5306 case FAST_HOLEY_ELEMENTS: | 5308 case FAST_HOLEY_ELEMENTS: |
| 5307 return new(zone()) HStoreKeyedFastElement( | 5309 return new(zone()) HStoreKeyedFastElement( |
| 5308 elements, checked_key, val, elements_kind); | 5310 elements, checked_key, val, elements_kind); |
| 5309 default: | 5311 default: |
| (...skipping 3684 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8994 } | 8996 } |
| 8995 } | 8997 } |
| 8996 | 8998 |
| 8997 #ifdef DEBUG | 8999 #ifdef DEBUG |
| 8998 if (graph_ != NULL) graph_->Verify(false); // No full verify. | 9000 if (graph_ != NULL) graph_->Verify(false); // No full verify. |
| 8999 if (allocator_ != NULL) allocator_->Verify(); | 9001 if (allocator_ != NULL) allocator_->Verify(); |
| 9000 #endif | 9002 #endif |
| 9001 } | 9003 } |
| 9002 | 9004 |
| 9003 } } // namespace v8::internal | 9005 } } // namespace v8::internal |
| OLD | NEW |