diff options
author | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-03-19 15:59:22 +0100 |
---|---|---|
committer | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-03-19 15:59:22 +0100 |
commit | e3f1d0d10638e46e3a22cf8363c03922200cb158 (patch) | |
tree | 4f62ebdc97e6083dd53b12a0f62510ed7e4fa913 /js/src/jit/CodeGenerator.cpp | |
parent | f67a2b88d7e8780f4ae81419338004b6fd781567 (diff) | |
download | UXP-e3f1d0d10638e46e3a22cf8363c03922200cb158.tar UXP-e3f1d0d10638e46e3a22cf8363c03922200cb158.tar.gz UXP-e3f1d0d10638e46e3a22cf8363c03922200cb158.tar.lz UXP-e3f1d0d10638e46e3a22cf8363c03922200cb158.tar.xz UXP-e3f1d0d10638e46e3a22cf8363c03922200cb158.zip |
Part 3: Support JSOP_SETFUNNAME in Baseline and Ion
Issue #87
Diffstat (limited to 'js/src/jit/CodeGenerator.cpp')
-rw-r--r-- | js/src/jit/CodeGenerator.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/js/src/jit/CodeGenerator.cpp b/js/src/jit/CodeGenerator.cpp index ce97363be..3b5ec6baa 100644 --- a/js/src/jit/CodeGenerator.cpp +++ b/js/src/jit/CodeGenerator.cpp @@ -2548,6 +2548,20 @@ CodeGenerator::emitLambdaInit(Register output, Register envChain, masm.storePtr(ImmGCPtr(info.fun->displayAtom()), Address(output, JSFunction::offsetOfAtom())); } +typedef bool (*SetFunNameFn)(JSContext*, HandleFunction, HandleValue, FunctionPrefixKind); +static const VMFunction SetFunNameInfo = + FunctionInfo<SetFunNameFn>(js::SetFunctionNameIfNoOwnName, "SetFunName"); + +void +CodeGenerator::visitSetFunName(LSetFunName* lir) +{ + pushArg(Imm32(lir->mir()->prefixKind())); + pushArg(ToValue(lir, LSetFunName::NameValue)); + pushArg(ToRegister(lir->fun())); + + callVM(SetFunNameInfo, lir); +} + void CodeGenerator::visitOsiPoint(LOsiPoint* lir) { |