| OLD | NEW |
| 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2009 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 903 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 914 __ push(r2); // name | 914 __ push(r2); // name |
| 915 __ push(r0); // value | 915 __ push(r0); // value |
| 916 | 916 |
| 917 // Do tail-call to the runtime system. | 917 // Do tail-call to the runtime system. |
| 918 ExternalReference store_callback_property = | 918 ExternalReference store_callback_property = |
| 919 ExternalReference(IC_Utility(IC::kStoreCallbackProperty)); | 919 ExternalReference(IC_Utility(IC::kStoreCallbackProperty)); |
| 920 __ TailCallRuntime(store_callback_property, 4, 1); | 920 __ TailCallRuntime(store_callback_property, 4, 1); |
| 921 | 921 |
| 922 // Handle store cache miss. | 922 // Handle store cache miss. |
| 923 __ bind(&miss); | 923 __ bind(&miss); |
| 924 __ mov(r2, Operand(Handle<String>(name))); // restore name | |
| 925 Handle<Code> ic(Builtins::builtin(Builtins::StoreIC_Miss)); | 924 Handle<Code> ic(Builtins::builtin(Builtins::StoreIC_Miss)); |
| 926 __ Jump(ic, RelocInfo::CODE_TARGET); | 925 __ Jump(ic, RelocInfo::CODE_TARGET); |
| 927 | 926 |
| 928 // Return the generated code. | 927 // Return the generated code. |
| 929 return GetCode(CALLBACKS, name); | 928 return GetCode(CALLBACKS, name); |
| 930 } | 929 } |
| 931 | 930 |
| 932 | 931 |
| 933 Object* StoreStubCompiler::CompileStoreInterceptor(JSObject* receiver, | 932 Object* StoreStubCompiler::CompileStoreInterceptor(JSObject* receiver, |
| 934 String* name) { | 933 String* name) { |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 966 __ push(r2); // name | 965 __ push(r2); // name |
| 967 __ push(r0); // value | 966 __ push(r0); // value |
| 968 | 967 |
| 969 // Do tail-call to the runtime system. | 968 // Do tail-call to the runtime system. |
| 970 ExternalReference store_ic_property = | 969 ExternalReference store_ic_property = |
| 971 ExternalReference(IC_Utility(IC::kStoreInterceptorProperty)); | 970 ExternalReference(IC_Utility(IC::kStoreInterceptorProperty)); |
| 972 __ TailCallRuntime(store_ic_property, 3, 1); | 971 __ TailCallRuntime(store_ic_property, 3, 1); |
| 973 | 972 |
| 974 // Handle store cache miss. | 973 // Handle store cache miss. |
| 975 __ bind(&miss); | 974 __ bind(&miss); |
| 976 __ mov(r2, Operand(Handle<String>(name))); // restore name | |
| 977 Handle<Code> ic(Builtins::builtin(Builtins::StoreIC_Miss)); | 975 Handle<Code> ic(Builtins::builtin(Builtins::StoreIC_Miss)); |
| 978 __ Jump(ic, RelocInfo::CODE_TARGET); | 976 __ Jump(ic, RelocInfo::CODE_TARGET); |
| 979 | 977 |
| 980 // Return the generated code. | 978 // Return the generated code. |
| 981 return GetCode(INTERCEPTOR, name); | 979 return GetCode(INTERCEPTOR, name); |
| 982 } | 980 } |
| 983 | 981 |
| 984 | 982 |
| 985 Object* StoreStubCompiler::CompileStoreGlobal(GlobalObject* object, | 983 Object* StoreStubCompiler::CompileStoreGlobal(GlobalObject* object, |
| 986 JSGlobalPropertyCell* cell, | 984 JSGlobalPropertyCell* cell, |
| (...skipping 535 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1522 __ Jump(generic_construct_stub, RelocInfo::CODE_TARGET); | 1520 __ Jump(generic_construct_stub, RelocInfo::CODE_TARGET); |
| 1523 | 1521 |
| 1524 // Return the generated code. | 1522 // Return the generated code. |
| 1525 return GetCode(); | 1523 return GetCode(); |
| 1526 } | 1524 } |
| 1527 | 1525 |
| 1528 | 1526 |
| 1529 #undef __ | 1527 #undef __ |
| 1530 | 1528 |
| 1531 } } // namespace v8::internal | 1529 } } // namespace v8::internal |
| OLD | NEW |