Lines Matching refs:Code
6 // * Redistributions of source code must retain the above copyright
44 Code::Flags flags,
73 // Multiply by 3 because there are 3 fields per entry (name, code, map).
91 // Get the code entry from the cache.
92 Register code = scratch2;
94 __ ldr(code, MemOperand(base_addr, value_off_addr - key_off_addr));
99 __ ldr(flags_reg, FieldMemOperand(code, Code::kFlagsOffset));
102 uint32_t mask = Code::kFlagsNotUsedInLookup;
121 // Jump to the first instruction in the code stub.
122 __ add(pc, code, Operand(Code::kHeaderSize - kHeapObjectTag));
189 Code::Flags flags,
199 // Make sure that code is valid. The multiplying code relies on the
204 ASSERT(Code::ExtractTypeFromFlags(flags) == 0);
361 // Generate code to check if an object is a string. If the object is a
383 // Generate code to load the length from a string object and return the length.
430 // Generate StoreField code, value is passed in r0 register.
431 // When leaving generated code after success, the receiver_reg and name_reg
531 void StubCompiler::GenerateLoadMiss(MacroAssembler* masm, Code::Kind kind) {
532 ASSERT(kind == Code::LOAD_IC || kind == Code::KEYED_LOAD_IC);
533 Handle<Code> code = (kind == Code::LOAD_IC)
536 __ Jump(code, RelocInfo::CODE_TARGET);
544 Code::ExtraICState extra_ic_state) {
698 Code::ExtraICState extra_ic_state)
812 // Deferred code for fast API call case---clean preallocated space.
880 Code::ExtraICState extra_ic_state_;
884 // Generate code to check that a global property cell is empty. Create
1099 // in the code. Load it from the map.
1261 // Compile the interceptor call, followed by inline code to load the
1271 // result. The CALLBACKS case needs the receiver to be passed into C++ code,
1340 // Important invariant in CALLBACKS case: the code above must be
1380 if (kind_ == Code::KEYED_CALL_IC) {
1436 Handle<Code> code =
1440 __ Jump(code, RelocInfo::CODE_TARGET);
1444 Handle<Code> CallStubCompiler::CompileCallField(Handle<JSObject> object,
1473 // Return the generated code.
1478 Handle<Code> CallStubCompiler::CompileArrayPushCall(
1493 if (!object->IsJSArray() || !cell.is_null()) return Handle<Code>::null();
1683 // Return the generated code.
1688 Handle<Code> CallStubCompiler::CompileArrayPopCall(
1703 if (!object->IsJSArray() || !cell.is_null()) return Handle<Code>::null();
1769 // Return the generated code.
1774 Handle<Code> CallStubCompiler::CompileStringCharCodeAtCall(
1789 if (!object->IsString() || !cell.is_null()) return Handle<Code>::null();
1797 if (kind_ == Code::CALL_IC &&
1850 // Return the generated code.
1855 Handle<Code> CallStubCompiler::CompileStringCharAtCall(
1870 if (!object->IsString() || !cell.is_null()) return Handle<Code>::null();
1877 if (kind_ == Code::CALL_IC &&
1932 // Return the generated code.
1937 Handle<Code> CallStubCompiler::CompileStringFromCharCodeCall(
1955 if (!object->IsJSObject() || argc != 1) return Handle<Code>::null();
1975 // Load the char code argument.
1976 Register code = r1;
1977 __ ldr(code, MemOperand(sp, 0 * kPointerSize));
1979 // Check the code is a smi.
1982 __ JumpIfNotSmi(code, &slow);
1984 // Convert the smi code to uint16.
1985 __ and_(code, code, Operand(Smi::FromInt(0xffff)));
1987 StringCharFromCodeGenerator generator(code, r0);
2005 // Return the generated code.
2010 Handle<Code> CallStubCompiler::CompileMathFloorCall(
2025 return Handle<Code>::null();
2032 if (!object->IsJSObject() || argc != 1) return Handle<Code>::null();
2151 // Return the generated code.
2156 Handle<Code> CallStubCompiler::CompileMathAbsCall(
2173 if (!object->IsJSObject() || argc != 1) return Handle<Code>::null();
2250 // Return the generated code.
2255 Handle<Code> CallStubCompiler::CompileFastApiCall(
2267 if (object->IsGlobalObject()) return Handle<Code>::null();
2268 if (!cell.is_null()) return Handle<Code>::null();
2269 if (!object->IsJSObject()) return Handle<Code>::null();
2272 if (depth == kInvalidProtoDepth) return Handle<Code>::null();
2301 // Return the generated code.
2306 Handle<Code> CallStubCompiler::CompileCallConstant(Handle<Object> object,
2316 Handle<Code> code = CompileCustomCall(object, holder,
2319 // A null handle means bail out to the regular compiler code below.
2320 if (!code.is_null()) return code;
2429 // Return the generated code.
2434 Handle<Code> CallStubCompiler::CompileCallInterceptor(Handle<JSObject> object,
2467 // Return the generated code.
2472 Handle<Code> CallStubCompiler::CompileCallGlobal(
2483 Handle<Code> code = CompileCustomCall(object, holder, cell, function, name);
2484 // A null handle means bail out to the regular compiler code below.
2485 if (!code.is_null()) return code;
2506 // Jump to the cached code (tail call).
2513 // We call indirectly through the code field in the function to
2525 // Return the generated code.
2530 Handle<Code> StoreStubCompiler::CompileStoreField(Handle<JSObject> object,
2544 Handle<Code> ic = masm()->isolate()->builtins()->StoreIC_Miss();
2547 // Return the generated code.
2552 Handle<Code> StoreStubCompiler::CompileStoreCallback(
2589 Handle<Code> ic = masm()->isolate()->builtins()->StoreIC_Miss();
2592 // Return the generated code.
2597 Handle<Code> StoreStubCompiler::CompileStoreInterceptor(
2634 Handle<Code> ic = masm()->isolate()->builtins()->StoreIC_Miss();
2637 // Return the generated code.
2642 Handle<Code> StoreStubCompiler::CompileStoreGlobal(
2680 Handle<Code> ic = masm()->isolate()->builtins()->StoreIC_Miss();
2683 // Return the generated code.
2688 Handle<Code> LoadStubCompiler::CompileLoadNonexistent(Handle<String> name,
2716 GenerateLoadMiss(masm(), Code::LOAD_IC);
2718 // Return the generated code.
2723 Handle<Code> LoadStubCompiler::CompileLoadField(Handle<JSObject> object,
2736 GenerateLoadMiss(masm(), Code::LOAD_IC);
2738 // Return the generated code.
2743 Handle<Code> LoadStubCompiler::CompileLoadCallback(
2757 GenerateLoadMiss(masm(), Code::LOAD_IC);
2759 // Return the generated code.
2764 Handle<Code> LoadStubCompiler::CompileLoadConstant(Handle<JSObject> object,
2777 GenerateLoadMiss(masm(), Code::LOAD_IC);
2779 // Return the generated code.
2784 Handle<Code> LoadStubCompiler::CompileLoadInterceptor(Handle<JSObject> object,
2799 GenerateLoadMiss(masm(), Code::LOAD_IC);
2801 // Return the generated code.
2806 Handle<Code> LoadStubCompiler::CompileLoadGlobal(
2841 GenerateLoadMiss(masm(), Code::LOAD_IC);
2843 // Return the generated code.
2848 Handle<Code> KeyedLoadStubCompiler::CompileLoadField(Handle<String> name,
2865 GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC);
2871 Handle<Code> KeyedLoadStubCompiler::CompileLoadCallback(
2890 GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC);
2896 Handle<Code> KeyedLoadStubCompiler::CompileLoadConstant(
2914 GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC);
2916 // Return the generated code.
2921 Handle<Code> KeyedLoadStubCompiler::CompileLoadInterceptor(
2941 GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC);
2947 Handle<Code> KeyedLoadStubCompiler::CompileLoadArrayLength(
2962 GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC);
2968 Handle<Code> KeyedLoadStubCompiler::CompileLoadStringLength(
2988 GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC);
2994 Handle<Code> KeyedLoadStubCompiler::CompileLoadFunctionPrototype(
3013 GenerateLoadMiss(masm(), Code::KEYED_LOAD_IC);
3019 Handle<Code> KeyedLoadStubCompiler::CompileLoadElement(
3027 Handle<Code> stub = KeyedLoadElementStub(elements_kind).GetCode();
3031 Handle<Code> ic = isolate()->builtins()->KeyedLoadIC_Miss();
3034 // Return the generated code.
3039 Handle<Code> KeyedLoadStubCompiler::CompileLoadPolymorphic(
3059 Handle<Code> miss_ic = isolate()->builtins()->KeyedLoadIC_Miss();
3062 // Return the generated code.
3067 Handle<Code> KeyedStoreStubCompiler::CompileStoreField(Handle<JSObject> object,
3092 Handle<Code> ic = masm()->isolate()->builtins()->KeyedStoreIC_Miss();
3095 // Return the generated code.
3100 Handle<Code> KeyedStoreStubCompiler::CompileStoreElement(
3111 Handle<Code> stub =
3116 Handle<Code> ic = isolate()->builtins()->KeyedStoreIC_Miss();
3119 // Return the generated code.
3124 Handle<Code> KeyedStoreStubCompiler::CompileStorePolymorphic(
3155 Handle<Code> miss_ic = isolate()->builtins()->KeyedStoreIC_Miss();
3158 // Return the generated code.
3163 Handle<Code> ConstructStubCompiler::CompileConstructStub(
3177 // Check to see whether there are any break points in the function code. If
3179 // code for the function thereby hitting the break points.
3291 // Jump to the generic stub in case the specialized code cannot handle the
3294 Handle<Code> code = masm()->isolate()->builtins()->JSConstructStubGeneric();
3295 __ Jump(code, RelocInfo::CODE_TARGET);
3297 // Return the generated code.
3334 Handle<Code> slow_ic =
3347 Handle<Code> miss_ic =
3701 Handle<Code> stub =
4023 Handle<Code> slow_ic =
4036 Handle<Code> miss_ic =
4077 Handle<Code> stub =
4143 Handle<Code> slow_ic =
4148 Handle<Code> miss_ic =
4243 Handle<Code> ic =
4248 Handle<Code> ic_miss = masm->isolate()->builtins()->KeyedStoreIC_Miss();
4314 Handle<Code> ic_slow = masm->isolate()->builtins()->KeyedStoreIC_Slow();
4383 Handle<Code> ic =
4388 Handle<Code> ic_miss = masm->isolate()->builtins()->KeyedStoreIC_Miss();
4456 Handle<Code> ic_slow = masm->isolate()->builtins()->KeyedStoreIC_Slow();