MacroAssemblerCodeRef charCodeAtThunkGenerator(JSGlobalData* globalData) { SpecializedThunkJIT jit(1); stringCharLoad(jit); jit.returnInt32(SpecializedThunkJIT::regT0); return jit.finalize(*globalData, globalData->jitStubs->ctiNativeCall(), "charCodeAt"); }
MacroAssemblerCodeRef charCodeAtThunkGenerator(VM* vm) { SpecializedThunkJIT jit(1); stringCharLoad(jit, vm); jit.returnInt32(SpecializedThunkJIT::regT0); return jit.finalize(*vm, vm->jitStubs->ctiNativeCall(vm), "charCodeAt"); }
MacroAssemblerCodePtr charCodeAtThunkGenerator(JSGlobalData* globalData, ExecutablePool* pool) { SpecializedThunkJIT jit(1, globalData, pool); stringCharLoad(jit); jit.returnInt32(SpecializedThunkJIT::regT0); return jit.finalize(globalData->jitStubs->ctiNativeCall()); }
MacroAssemblerCodeRef charAtThunkGenerator(JSGlobalData* globalData) { SpecializedThunkJIT jit(1, globalData); stringCharLoad(jit); charToString(jit, globalData, SpecializedThunkJIT::regT0, SpecializedThunkJIT::regT0, SpecializedThunkJIT::regT1); jit.returnJSCell(SpecializedThunkJIT::regT0); return jit.finalize(*globalData, globalData->jitStubs->ctiNativeCall()); }
MacroAssemblerCodeRef charAtThunkGenerator(VM* vm) { SpecializedThunkJIT jit(vm, 1); stringCharLoad(jit, vm); charToString(jit, vm, SpecializedThunkJIT::regT0, SpecializedThunkJIT::regT0, SpecializedThunkJIT::regT1); jit.returnJSCell(SpecializedThunkJIT::regT0); return jit.finalize(vm->jitStubs->ctiNativeTailCall(vm), "charAt"); }