Skip to content

Commit e9e5255

Browse files
committed
replace two more ScriptRuntime method invoke
1 parent 147bc48 commit e9e5255

File tree

3 files changed

+7
-17
lines changed

3 files changed

+7
-17
lines changed

rhino/src/main/java/org/mozilla/javascript/ScriptRuntime.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5843,10 +5843,12 @@ public static RegExpProxy checkRegExpProxy(Context cx) {
58435843
return result;
58445844
}
58455845

5846+
@CodeGenMarker(ScriptRuntimeMethodSig.wrapRegExp)
58465847
public static Scriptable wrapRegExp(Context cx, Scriptable scope, Object compiled) {
58475848
return cx.getRegExpProxy().wrapRegExp(cx, scope, compiled);
58485849
}
58495850

5851+
@CodeGenMarker(ScriptRuntimeMethodSig.getTemplateLiteralCallSite)
58505852
public static Scriptable getTemplateLiteralCallSite(
58515853
Context cx, Scriptable scope, Object[] strings, int index) {
58525854
Object callsite = strings[index];

rhino/src/main/java/org/mozilla/javascript/optimizer/BodyCodegen.java

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1116,14 +1116,7 @@ private void generateExpression(Node node, Node parent) {
11161116
codegen.mainClassName,
11171117
codegen.getCompiledRegexpName(scriptOrFn, i),
11181118
"Ljava/lang/Object;");
1119-
cfw.addInvoke(
1120-
ByteCode.INVOKESTATIC,
1121-
"org/mozilla/javascript/ScriptRuntime",
1122-
"wrapRegExp",
1123-
"(Lorg/mozilla/javascript/Context;"
1124-
+ "Lorg/mozilla/javascript/Scriptable;"
1125-
+ "Ljava/lang/Object;"
1126-
+ ")Lorg/mozilla/javascript/Scriptable;");
1119+
ScriptRuntimeMethodSig.wrapRegExp.addInvoke(cfw);
11271120
}
11281121
break;
11291122

@@ -1839,14 +1832,7 @@ private void visitTemplateLiteral(Node node) {
18391832
codegen.getTemplateLiteralName(scriptOrFn),
18401833
"[Ljava/lang/Object;");
18411834
cfw.addPush(index);
1842-
cfw.addInvoke(
1843-
ByteCode.INVOKESTATIC,
1844-
"org/mozilla/javascript/ScriptRuntime",
1845-
"getTemplateLiteralCallSite",
1846-
"(Lorg/mozilla/javascript/Context;"
1847-
+ "Lorg/mozilla/javascript/Scriptable;"
1848-
+ "[Ljava/lang/Object;I"
1849-
+ ")Lorg/mozilla/javascript/Scriptable;");
1835+
ScriptRuntimeMethodSig.getTemplateLiteralCallSite.addInvoke(cfw);
18501836
}
18511837

18521838
private void generateIfJump(Node node, Node parent, int trueLabel, int falseLabel) {

rhino/src/main/java/org/mozilla/javascript/optimizer/ScriptRuntimeMethodSig.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,9 @@ public enum ScriptRuntimeMethodSig {
8686
in,
8787
enterDotQuery,
8888
updateDotQuery,
89-
leaveDotQuery;
89+
leaveDotQuery,
90+
wrapRegExp,
91+
getTemplateLiteralCallSite;
9092

9193
private static final String CLASS_INTERNAL_NAME =
9294
ScriptRuntime.class.getName().replace('.', '/');

0 commit comments

Comments
 (0)