summaryrefslogtreecommitdiffstats
path: root/js/src/jit/CodeGenerator.h
diff options
context:
space:
mode:
authorjanekptacijarabaci <janekptacijarabaci@seznam.cz>2018-03-25 17:00:47 +0200
committerjanekptacijarabaci <janekptacijarabaci@seznam.cz>2018-03-25 17:00:47 +0200
commit727c27a30d10a811d5a3fe04e2407cd7b3993b5e (patch)
treeffca6abc0cae35533a84df6f19b88f31ca3ad97b /js/src/jit/CodeGenerator.h
parentb311e8fa718e2a32805c25847781cc8a6a0541bd (diff)
downloadUXP-727c27a30d10a811d5a3fe04e2407cd7b3993b5e.tar
UXP-727c27a30d10a811d5a3fe04e2407cd7b3993b5e.tar.gz
UXP-727c27a30d10a811d5a3fe04e2407cd7b3993b5e.tar.lz
UXP-727c27a30d10a811d5a3fe04e2407cd7b3993b5e.tar.xz
UXP-727c27a30d10a811d5a3fe04e2407cd7b3993b5e.zip
Bug 1342553 - Part 0.2: Support JSOP_CHECKISCALLABLE in JIT
Issue #74
Diffstat (limited to 'js/src/jit/CodeGenerator.h')
-rw-r--r--js/src/jit/CodeGenerator.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/js/src/jit/CodeGenerator.h b/js/src/jit/CodeGenerator.h
index b69e919a3..d3126651b 100644
--- a/js/src/jit/CodeGenerator.h
+++ b/js/src/jit/CodeGenerator.h
@@ -364,6 +364,12 @@ class CodeGenerator final : public CodeGeneratorSpecific
void visitCallDOMNative(LCallDOMNative* lir);
void visitCallGetIntrinsicValue(LCallGetIntrinsicValue* lir);
void visitCallBindVar(LCallBindVar* lir);
+ enum CallableOrConstructor {
+ Callable,
+ Constructor
+ };
+ template <CallableOrConstructor mode>
+ void emitIsCallableOrConstructor(Register object, Register output, Label* failure);
void visitIsCallable(LIsCallable* lir);
void visitOutOfLineIsCallable(OutOfLineIsCallable* ool);
void visitIsConstructor(LIsConstructor* lir);
@@ -384,6 +390,7 @@ class CodeGenerator final : public CodeGeneratorSpecific
void visitArrowNewTarget(LArrowNewTarget* ins);
void visitCheckReturn(LCheckReturn* ins);
void visitCheckIsObj(LCheckIsObj* ins);
+ void visitCheckIsCallable(LCheckIsCallable* ins);
void visitCheckObjCoercible(LCheckObjCoercible* ins);
void visitDebugCheckSelfHosted(LDebugCheckSelfHosted* ins);
void visitNaNToZero(LNaNToZero* ins);