| 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 3241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3252 | 3252 |
| 3253 __ bind(&miss); | 3253 __ bind(&miss); |
| 3254 Handle<Code> ic(Builtins::builtin(Builtins::KeyedStoreIC_Miss)); | 3254 Handle<Code> ic(Builtins::builtin(Builtins::KeyedStoreIC_Miss)); |
| 3255 __ Jump(ic, RelocInfo::CODE_TARGET); | 3255 __ Jump(ic, RelocInfo::CODE_TARGET); |
| 3256 | 3256 |
| 3257 // Return the generated code. | 3257 // Return the generated code. |
| 3258 return GetCode(NORMAL, NULL); | 3258 return GetCode(NORMAL, NULL); |
| 3259 } | 3259 } |
| 3260 | 3260 |
| 3261 | 3261 |
| 3262 MaybeObject* KeyedStoreStubCompiler::CompileStorePixelArray( |
| 3263 JSObject* receiver) { |
| 3264 // ----------- S t a t e ------------- |
| 3265 // -- r0 : value |
| 3266 // -- r1 : key |
| 3267 // -- r2 : receiver |
| 3268 // -- r3 : scratch |
| 3269 // -- r4 : scratch |
| 3270 // -- r5 : scratch |
| 3271 // -- r6 : scratch |
| 3272 // -- lr : return address |
| 3273 // ----------------------------------- |
| 3274 Label miss; |
| 3275 |
| 3276 // Check that the map matches. |
| 3277 __ CheckMap(r2, r6, Handle<Map>(receiver->map()), &miss, false); |
| 3278 |
| 3279 GenerateFastPixelArrayStore(masm(), |
| 3280 r2, |
| 3281 r1, |
| 3282 r0, |
| 3283 r3, |
| 3284 r4, |
| 3285 r5, |
| 3286 r6, |
| 3287 true, |
| 3288 true, |
| 3289 &miss, |
| 3290 &miss, |
| 3291 NULL, |
| 3292 &miss); |
| 3293 |
| 3294 __ bind(&miss); |
| 3295 Handle<Code> ic(Builtins::builtin(Builtins::KeyedStoreIC_Miss)); |
| 3296 __ Jump(ic, RelocInfo::CODE_TARGET); |
| 3297 |
| 3298 // Return the generated code. |
| 3299 return GetCode(NORMAL, NULL); |
| 3300 } |
| 3301 |
| 3302 |
| 3262 MaybeObject* ConstructStubCompiler::CompileConstructStub(JSFunction* function) { | 3303 MaybeObject* ConstructStubCompiler::CompileConstructStub(JSFunction* function) { |
| 3263 // ----------- S t a t e ------------- | 3304 // ----------- S t a t e ------------- |
| 3264 // -- r0 : argc | 3305 // -- r0 : argc |
| 3265 // -- r1 : constructor | 3306 // -- r1 : constructor |
| 3266 // -- lr : return address | 3307 // -- lr : return address |
| 3267 // -- [sp] : last argument | 3308 // -- [sp] : last argument |
| 3268 // ----------------------------------- | 3309 // ----------------------------------- |
| 3269 Label generic_stub_call; | 3310 Label generic_stub_call; |
| 3270 | 3311 |
| 3271 // Use r7 for holding undefined which is used in several places below. | 3312 // Use r7 for holding undefined which is used in several places below. |
| (...skipping 726 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3998 | 4039 |
| 3999 return GetCode(flags); | 4040 return GetCode(flags); |
| 4000 } | 4041 } |
| 4001 | 4042 |
| 4002 | 4043 |
| 4003 #undef __ | 4044 #undef __ |
| 4004 | 4045 |
| 4005 } } // namespace v8::internal | 4046 } } // namespace v8::internal |
| 4006 | 4047 |
| 4007 #endif // V8_TARGET_ARCH_ARM | 4048 #endif // V8_TARGET_ARCH_ARM |
| OLD | NEW |