| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 4593 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4604 HValue* context = environment()->LookupContext(); | 4604 HValue* context = environment()->LookupContext(); |
| 4605 return new(zone()) HStoreNamedGeneric( | 4605 return new(zone()) HStoreNamedGeneric( |
| 4606 context, | 4606 context, |
| 4607 object, | 4607 object, |
| 4608 name, | 4608 name, |
| 4609 value, | 4609 value, |
| 4610 function_strict_mode_flag()); | 4610 function_strict_mode_flag()); |
| 4611 } | 4611 } |
| 4612 | 4612 |
| 4613 | 4613 |
| 4614 HInstruction* HOptimizedGraphBuilder::BuildCallSetter( | |
| 4615 HValue* object, | |
| 4616 HValue* value, | |
| 4617 Handle<Map> map, | |
| 4618 Handle<JSFunction> setter, | |
| 4619 Handle<JSObject> holder) { | |
| 4620 AddCheckConstantFunction(holder, object, map); | |
| 4621 Add<HPushArgument>(object); | |
| 4622 Add<HPushArgument>(value); | |
| 4623 return new(zone()) HCallConstantFunction(setter, 2); | |
| 4624 } | |
| 4625 | |
| 4626 | |
| 4627 HInstruction* HOptimizedGraphBuilder::BuildStoreNamedMonomorphic( | 4614 HInstruction* HOptimizedGraphBuilder::BuildStoreNamedMonomorphic( |
| 4628 HValue* object, | 4615 HValue* object, |
| 4629 Handle<String> name, | 4616 Handle<String> name, |
| 4630 HValue* value, | 4617 HValue* value, |
| 4631 Handle<Map> map) { | 4618 Handle<Map> map) { |
| 4632 // Handle a store to a known field. | 4619 // Handle a store to a known field. |
| 4633 LookupResult lookup(isolate()); | 4620 LookupResult lookup(isolate()); |
| 4634 if (ComputeLoadStoreField(map, name, &lookup, true)) { | 4621 if (ComputeLoadStoreField(map, name, &lookup, true)) { |
| 4635 AddCheckMapsWithTransitions(object, map); | 4622 AddCheckMapsWithTransitions(object, map); |
| 4636 return BuildStoreNamedField(object, name, value, map, &lookup); | 4623 return BuildStoreNamedField(object, name, value, map, &lookup); |
| (...skipping 5370 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10007 if (ShouldProduceTraceOutput()) { | 9994 if (ShouldProduceTraceOutput()) { |
| 10008 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); | 9995 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); |
| 10009 } | 9996 } |
| 10010 | 9997 |
| 10011 #ifdef DEBUG | 9998 #ifdef DEBUG |
| 10012 graph_->Verify(false); // No full verify. | 9999 graph_->Verify(false); // No full verify. |
| 10013 #endif | 10000 #endif |
| 10014 } | 10001 } |
| 10015 | 10002 |
| 10016 } } // namespace v8::internal | 10003 } } // namespace v8::internal |
| OLD | NEW |