org.mozilla.javascript.optimizer.Codegen.class Maven / Gradle / Ivy
The newest version!
???? 1n
b S
!
"
#$%&%'()*
+ ,
-
U.
/ 0
^1 2
34
15
678
49
:;<
:=
U>
U?
@A
B
CD
UE
UF
QG QH
4I
JK
ELMN
H OP
KQ
K-R
N
NST
QU
V
HWX Y
HZ[
X \
X]
H^
C_`a
^bc
^defb
g
^h
i
j
k
l
m
no
p pp pq p, pr ps
pt
Qu
v
Qw
x
y
z
{
^|
}
~
^
4?
^????
^?
^?
^?
?
^?
^??
^?
^?
^?
^?
4?
???
^?
^?
^?
^?
^?
^?
^??<d??
????????
^?
^?
^?
^???./????
?
???
4?
???
C??????????
^?
???
U?
U?
U?
U?
^?
U?
U? ??
U????P
?
U?
U???? ? ??
??
??????????? ??
???????
X???
???
?
????
????? DEFAULT_MAIN_METHOD_CLASS Ljava/lang/String;
ConstantValue SUPER_CLASS_NAME DIRECT_CALL_PARENT_FIELD
ID_FIELD_NAME REGEXP_INIT_METHOD_NAME REGEXP_INIT_METHOD_SIGNATURE REGEXP_ARRAY_FIELD_NAME REGEXP_ARRAY_FIELD_TYPE FUNCTION_INIT_SIGNATURE FUNCTION_CONSTRUCTOR_SIGNATURE
globalLock Ljava/lang/Object; globalSerialClassCounter I compilerEnv )Lorg/mozilla/javascript/CompilerEnvirons; directCallTargets !Lorg/mozilla/javascript/ObjArray; scriptOrFnNodes ([Lorg/mozilla/javascript/ScriptOrFnNode; scriptOrFnIndexes $Lorg/mozilla/javascript/ObjToIntMap; mainMethodClass
mainClassName mainClassSignature itsConstantList [D itsConstantListSize ()V Code LineNumberTable LocalVariableTable this *Lorg/mozilla/javascript/optimizer/Codegen; captureStackInfo *(Lorg/mozilla/javascript/RhinoException;)V ex 'Lorg/mozilla/javascript/RhinoException; getSourcePositionFromStack 6(Lorg/mozilla/javascript/Context;[I)Ljava/lang/String; cx Lorg/mozilla/javascript/Context; linep [I getPatchedStack M(Lorg/mozilla/javascript/RhinoException;Ljava/lang/String;)Ljava/lang/String; nativeStackTrace getScriptStack 9(Lorg/mozilla/javascript/RhinoException;)Ljava/util/List; Signature M(Lorg/mozilla/javascript/RhinoException;)Ljava/util/List; setEvalScriptFlag "(Lorg/mozilla/javascript/Script;)V script Lorg/mozilla/javascript/Script; compile w(Lorg/mozilla/javascript/CompilerEnvirons;Lorg/mozilla/javascript/ScriptOrFnNode;Ljava/lang/String;Z)Ljava/lang/Object; tree 'Lorg/mozilla/javascript/ScriptOrFnNode;
encodedSource returnFunction Z serial mainClassBytes [B createScriptObject E(Ljava/lang/Object;Ljava/lang/Object;)Lorg/mozilla/javascript/Script; Ljava/lang/Exception; bytecode staticSecurityDomain cl Ljava/lang/Class; LocalVariableTypeTable Ljava/lang/Class<*>; createFunctionObject ?(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Ljava/lang/Object;Ljava/lang/Object;)Lorg/mozilla/javascript/Function; ctor Ljava/lang/reflect/Constructor; initArgs [Ljava/lang/Object; scope #Lorg/mozilla/javascript/Scriptable; f 'Lorg/mozilla/javascript/NativeFunction; "Ljava/lang/reflect/Constructor<*>; defineClass 7(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Class; x Ljava/lang/SecurityException; $Ljava/lang/IllegalArgumentException;
nameBytesPair className
classBytes rhinoLoader Ljava/lang/ClassLoader; loader -Lorg/mozilla/javascript/GeneratedClassLoader; e :(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Class<*>; compileToClassFile y(Lorg/mozilla/javascript/CompilerEnvirons;Ljava/lang/String;Lorg/mozilla/javascript/ScriptOrFnNode;Ljava/lang/String;Z)[B ClassFileFormatException InnerClasses @Lorg/mozilla/classfile/ClassFileWriter$ClassFileFormatException;
scriptOrFn reportClassFileFormatException W(Lorg/mozilla/javascript/ScriptOrFnNode;Ljava/lang/String;)Ljava/lang/RuntimeException; message msg transform *(Lorg/mozilla/javascript/ScriptOrFnNode;)V name ofn 2Lorg/mozilla/javascript/optimizer/OptFunctionNode; i
functionCount optLevel possibleDirectCalls Ljava/util/Map; ot 1Lorg/mozilla/javascript/optimizer/OptTransformer; ULjava/util/Map; initOptFunctions_r fn %Lorg/mozilla/javascript/FunctionNode; N initScriptOrFnNodesData count collectScriptOrFnNodes_r K(Lorg/mozilla/javascript/ScriptOrFnNode;Lorg/mozilla/javascript/ObjArray;)V n nestedCount generateCode (Ljava/lang/String;)[B bodygen .Lorg/mozilla/javascript/optimizer/BodyCodegen; j hasScript hasFunctions
sourceFile cfw 'Lorg/mozilla/classfile/ClassFileWriter; emitDirectConstructor \(Lorg/mozilla/classfile/ClassFileWriter;Lorg/mozilla/javascript/optimizer/OptFunctionNode;)V argCount
firstLocal exitLabel isGenerator *(Lorg/mozilla/javascript/ScriptOrFnNode;)Z node generateResumeGenerator *(Lorg/mozilla/classfile/ClassFileWriter;)V type
hasGenerators startSwitch endlabel generateCallMethod undefArg beyond p pcount nonTopCallLabel end generateSwitch switchStart switchStackTop generateMain generateExecute CONTEXT_ARG SCOPE_ARG generateScriptCtor generateFunctionConstructor ID_ARG start generateFunctionInit regexpCount generateNativeFunctionOverrides <(Lorg/mozilla/classfile/ClassFileWriter;Ljava/lang/String;)V s paramSwitchStart paramAndVarCount constness [Z methodLocals S methodIndex Do_getFunctionName Do_getParamCount Do_getParamAndVarCount Do_getParamOrVarName Do_getEncodedSource Do_getParamOrVarConst SWITCH_COUNT emitRegExpInit reFieldName reFieldType reString reFlags regCount
totalRegCount doInit emitConstantDudeInitializers num D constantName constantType inum array pushRegExpArray S(Lorg/mozilla/classfile/ClassFileWriter;Lorg/mozilla/javascript/ScriptOrFnNode;II)V
contextArg scopeArg pushNumberAsObject +(Lorg/mozilla/classfile/ClassFileWriter;D)V index
addDoubleWrap getStaticConstantWrapperType (D)Ljava/lang/String;
pushUndefined getIndex *(Lorg/mozilla/javascript/ScriptOrFnNode;)I getDirectTargetFieldName (I)Ljava/lang/String; getDirectCtorName ;(Lorg/mozilla/javascript/ScriptOrFnNode;)Ljava/lang/String; getBodyMethodName getBodyMethodSignature pCount sb Ljava/lang/StringBuffer; getFunctionInitMethodName F(Lorg/mozilla/javascript/optimizer/OptFunctionNode;)Ljava/lang/String; getCompiledRegexpName <(Lorg/mozilla/javascript/ScriptOrFnNode;I)Ljava/lang/String; regexpIndex badTree ()Ljava/lang/RuntimeException; setMainMethodClass (Ljava/lang/String;)V
SourceFile Codegen.java./ +org.mozilla.javascript.optimizer.OptRuntime( 'java/lang/UnsupportedOperationException java/lang/StringBuilder org.mozilla.javascript.gen.c???? ?vw java/lang/Objecthi org/mozilla/javascript/Script java/lang/Exception java/lang/RuntimeException %Unable to instantiate compiled class:. java/lang/Integer.? %org/mozilla/javascript/NativeFunction java/lang/String
h java/lang/SecurityException "java/lang/IllegalArgumentException Malformed optimizer package ? !????)*?? >org/mozilla/classfile/ClassFileWriter$ClassFileFormatException?|} #org/mozilla/javascript/FunctionNode msg.while.compiling.fn??? msg.while.compiling.script?? !??"#?$?%?&'(?)?*? java/util/HashMap+,- org/mozilla/javascript/ObjArray"# /org/mozilla/javascript/optimizer/OptTransformer.. *org/mozilla/javascript/optimizer/Optimizer/? 0org/mozilla/javascript/optimizer/OptFunctionNode.0??1? %org/mozilla/javascript/ScriptOrFnNode$%23 "org/mozilla/javascript/ObjToIntMap&',45678 %org/mozilla/classfile/ClassFileWriter %org.mozilla.javascript.NativeFunction.9 _id:; _dcp _re??<???????????? ,org/mozilla/javascript/optimizer/BodyCodegen??=4{M>?/&@??A8????????BC????D;??E? #org/mozilla/javascript/BaseFunction createObject h(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;FGH?I???J?5? !org/mozilla/javascript/Scriptable5K5LM?NO?8?? resumeGenerator |(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;ILjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;P?Q/R?5GSTU?VW ( &Ljava/lang/Object;I)Ljava/lang/Object; _gen?? call ?(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object; $org/mozilla/javascript/ScriptRuntime
hasTopCall #(Lorg/mozilla/javascript/Context;)Z doTopCall ?(Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;XYZ?[?Z\ main ([Ljava/lang/String;)V 5(Lorg/mozilla/javascript/Script;[Ljava/lang/String;)V exec W(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Ljava/lang/Object; G(Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Context;I)V???? F(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)V initScriptFunction]??? getLanguageVersion ()I?? getFunctionName ()Ljava/lang/String;
getParamCount getParamAndVarCount getParamOrVarName getParamOrVarConst (I)Z getEncodedSourceZ^_? ????`aZbc?d? substring (II)Ljava/lang/String; _reInit G(Lorg/mozilla/javascript/RegExpProxy;Lorg/mozilla/javascript/Context;)V _reInitDone??e?f? "org/mozilla/javascript/RegExpProxy
compileRegExp X(Lorg/mozilla/javascript/Context;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;-+, _k?? (I)V?? checkRegExpProxy F(Lorg/mozilla/javascript/Context;)Lorg/mozilla/javascript/RegExpProxy;
wrapRegExp z(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Ljava/lang/Object;)Lorg/mozilla/javascript/Scriptable; +org/mozilla/javascript/optimizer/OptRuntime zeroObj Ljava/lang/Double; oneObj minusOneObj NaNobjghi
wrapDouble (D)Ljava/lang/Double; Ljava/lang/Integer; org/mozilla/javascript/Undefined instancejk _dt _n?? _c java/lang/StringBuffer?l?m fLorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable; Ljava/lang/Object;D &[Ljava/lang/Object;)Ljava/lang/Object; _i _ Bad tree in codegen (org/mozilla/javascript/optimizer/Codegen org/mozilla/javascript/Evaluator append -(Ljava/lang/String;)Ljava/lang/StringBuilder; (I)Ljava/lang/StringBuilder; toString java/lang/Class newInstance ()Ljava/lang/Object; getConstructors "()[Ljava/lang/reflect/Constructor; java/lang/reflect/Constructor '([Ljava/lang/Object;)Ljava/lang/Object; getClass ()Ljava/lang/Class; getClassLoader ()Ljava/lang/ClassLoader; )org/mozilla/javascript/SecurityController createLoader X(Ljava/lang/ClassLoader;Ljava/lang/Object;)Lorg/mozilla/javascript/GeneratedClassLoader; +org/mozilla/javascript/GeneratedClassLoader '(Ljava/lang/String;[B)Ljava/lang/Class; linkClass (Ljava/lang/Class;)V -(Ljava/lang/Object;)Ljava/lang/StringBuilder; getFunctionNode ((I)Lorg/mozilla/javascript/FunctionNode; classNameToSignature &(Ljava/lang/String;)Ljava/lang/String;
getMessage getMessage2 J(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/String; getMessage1 8(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
getSourceName getLineno org/mozilla/javascript/Context reportRuntimeError e(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;I)Lorg/mozilla/javascript/EvaluatorException; 'org/mozilla/javascript/CompilerEnvirons getOptimizationLevel getType getFunctionCount get \(Lorg/mozilla/javascript/ScriptOrFnNode;I)Lorg/mozilla/javascript/optimizer/OptFunctionNode; fnode getFunctionType length
java/util/Map put 8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 3(Ljava/util/Map;Lorg/mozilla/javascript/ObjArray;)V optimize ((Lorg/mozilla/javascript/FunctionNode;)V size toArray ([Ljava/lang/Object;)V (Ljava/lang/Object;I)V add (Ljava/lang/Object;)V isGenerateDebugInfo ()Z 9(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V addField ((Ljava/lang/String;Ljava/lang/String;S)V addInterface codegen scriptOrFnIndex generateBodyCode [(Lorg/mozilla/javascript/ScriptOrFnNode;)Lorg/mozilla/javascript/optimizer/OptFunctionNode; isTargetOfDirectCall toByteArray ()[B startMethod addALoad addInvoke :(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V addAStore addDLoad acquireLabel (ILjava/lang/String;)V (II)V markLabel
stopMethod (S)V addILoad addLoadThis getClassName addTableSwitch (II)I markTableSwitchDefault markTableSwitchCase (III)V getStackTop ()S addPush adjustStackTop (D)V getRegexpCount org/mozilla/javascript/Kit codeBug getParamAndVarConst ()[Z (Z)V getEncodedSourceStart getEncodedSourceEnd getRegexpString getRegexpFlags java/lang/System arraycopy *(Ljava/lang/Object;ILjava/lang/Object;II)V getExisting (Ljava/lang/Object;)I (C)Ljava/lang/StringBuffer; ,(Ljava/lang/String;)Ljava/lang/StringBuffer; ! _ d a ? ? e f ? ?
! "# $% &' ( ) * +, - , ./ 0 9 *? *? ? 1
: $2 34 56 0 <