Edit C:\Users\Admin\.m2\repository\rhino\js\1.6R7\org\mozilla\javascript\optimizer\BodyCodegen.class
???? /T k| j} j~ j j? ?? ?? ?? j? j? ?? j? j? j? ?? ?? j? j? ?? ?? ?? ?? j? ?? ?? j? ?? j? j? j? j? j? j? j? j? j? j? j? j? j? ?? ?? ?? j? ????? ?? ?? ?? ?? j? ?? ?? j? ?? ????? ?? ?? j? ?? ?? ???? j? ?? ?? ?? j? ?? ?? j? ?? ?? ?? ???? ?? ?????????? ?? ?? ?? j?? ?? ?? ????? ??? ?? j? ?? j? ???? j? `? `? `? `? `? `?? j? j? `? j? ????? ?? j?? j ? j j ` j j ? ` j j j j j j ` ? ? !"#$ j% j& j' ?()*+, j- j./0 ?1 ?234 j567 j8 j9 j: j; j< j= j>?@ABC jD jE jF jG jHIJKLMNOPQRSTUV jWXYZ[\] ?|^ ?_ ?` ?a ?b ?cde ?f ?g ?hij `k `l ym jn jo? pqrs?t ?uvwxyz{|}~??????????????? j? ????? j??????????? `? y? j??? y? y??? y? ??? j??? ??????????? j???? ????? j? j???????? ??????????????????????? j?? ???? JAVASCRIPT_EXCEPTION I ConstantValue EVALUATOR_EXCEPTION ECMAERROR_EXCEPTION cfw 'Lorg/mozilla/classfile/ClassFileWriter; codegen *Lorg/mozilla/javascript/optimizer/Codegen; compilerEnv )Lorg/mozilla/javascript/CompilerEnvirons; scriptOrFn 'Lorg/mozilla/javascript/ScriptOrFnNode; fnCurrent 2Lorg/mozilla/javascript/optimizer/OptFunctionNode; isTopLevel Z MAX_LOCALS locals [Z firstFreeLocal S localsMax itsLineNumber hasVarsInRegs varRegisters [S inDirectCallFunction itsForcedObjectParameters enterAreaStartLabel epilogueLabel variableObjectLocal popvLocal contextLocal argsLocal thisObjLocal funObjLocal itsZeroArgArray itsOneArgArray scriptRegexpLocal <init> ()V Code LineNumberTable LocalVariableTable this .Lorg/mozilla/javascript/optimizer/BodyCodegen; generateBodyCode treeTop Lorg/mozilla/javascript/Node; initBodyGeneration n generatePrologue i reg isObjectLabel directParameterCount label name Ljava/lang/String; type startPC parmCount paramCount varCount constDeclarations firstUndefVar debugVariableName ofn linenum functionCount generateEpilogue finallyHandler exceptionObject generateActivationExit generateStatement (Lorg/mozilla/javascript/Node;)V local fnIndex t scopeIndex finallyRegister node child generateExpression =(Lorg/mozilla/javascript/Node;Lorg/mozilla/javascript/Node;)V target specialType num D next trueTarget falseTarget beyond ifThen ifElse elseTarget stack afterHook prop trueGOTO falseGOTO special memberTypeFlags methodName signature parent generateIfJump ?(Lorg/mozilla/javascript/Node;Lorg/mozilla/javascript/Node;II)V interLabel trueLabel falseLabel visitFunction 6(Lorg/mozilla/javascript/optimizer/OptFunctionNode;I)V functionType directTargetIndex getTargetLabel (Lorg/mozilla/javascript/Node;)I labelId visitGOTO Jump InnerClasses C(Lorg/mozilla/javascript/Node$Jump;ILorg/mozilla/javascript/Node;)V targetLabel fallThruLabel "Lorg/mozilla/javascript/Node$Jump; visitArrayLiteral cursor count skipIndexes [I visitObjectLiteral id Ljava/lang/Object; childType properties [Ljava/lang/Object; child2 visitSpecialCall ?(Lorg/mozilla/javascript/Node;IILorg/mozilla/javascript/Node;)V callSignature sourceName visitStandardCall propTarget property arg argCount firstArgChild visitStandardNew visitOptimizedCall p(Lorg/mozilla/javascript/Node;Lorg/mozilla/javascript/optimizer/OptFunctionNode;ILorg/mozilla/javascript/Node;)V dcp_register regularCall stackHeight argChild generateCallArgArray >(Lorg/mozilla/javascript/Node;Lorg/mozilla/javascript/Node;Z)V childNumberFlag directCall generateFunctionAndThisObj updateLineNumber visitTryCatchFinally B(Lorg/mozilla/javascript/Node$Jump;Lorg/mozilla/javascript/Node;)V catchLabel finallyLabel savedVariableObject startLabel catchTarget finallyTarget realEnd exceptionLocal generateCatchBlock (ISIII)V exceptionName exceptionType handler visitSwitch test caseNode switchNode selector visitTypeofname isNumberLabel varIndex visitIncDec post offset getPropChild elemChild refChild incrDecrMask isArithmeticNode (Lorg/mozilla/javascript/Node;)Z visitArithmetic [(Lorg/mozilla/javascript/Node;ILorg/mozilla/javascript/Node;Lorg/mozilla/javascript/Node;)V childOfArithmetic opCode visitBitOp >(Lorg/mozilla/javascript/Node;ILorg/mozilla/javascript/Node;)V nodeIsDirectCallParameter varIsDirectCallParameter (I)Z genSimpleCompare (III)V visitIfJumpRelOp leftIsNotNumber rightIsNotNumber routine rChild left_dcp_register right_dcp_register visitIfJumpEqOp testCode tmp undefCheckLabel notNumbersLabel convertChild child_dcp_register stackInitial visitSetName visitSetConst visitGetVar visitSetVar needValue isNumber visitSetConstVar noAssign visitGetProp nameChild visitSetProp >(ILorg/mozilla/javascript/Node;Lorg/mozilla/javascript/Node;)V objectChild visitSetElem indexIsNumber visitDotQuery queryLoopStart getLocalBlockRegister localBlock localSlot dcpLoadAsNumber (I)V dcpLoadAsObject addGoto !(Lorg/mozilla/javascript/Node;I)V jumpcode addObjectToDouble addNewObjectArray size addScriptRuntimeInvoke '(Ljava/lang/String;Ljava/lang/String;)V methodSignature addOptRuntimeInvoke addJumpedBooleanWrap (II)V skip addDoubleWrap getNewWordPairLocal (Z)S isConst result getNewWordLocal ()S getConsecutiveSlots (IZ)S releaseWordLocal (S)V SourceFile Codegen.java????tuvwz{??????????|}??????????y??~??????????????????????????????????????????m?m?????????` java/lang/Void TYPE Ljava/lang/Class;3 ?3m`o?``xy?? !org/mozilla/javascript/Scriptable getParentScope %()Lorg/mozilla/javascript/Scriptable; ?tu 3`` padArguments )([Ljava/lang/Object;I)[Ljava/lang/Object;hi 9pq`tq`?? activation createFunctionActivation ?(Lorg/mozilla/javascript/NativeFunction;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Lorg/mozilla/javascript/Scriptable; enterActivationFunction F(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)V global initScript ?(Lorg/mozilla/javascript/NativeFunction;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Z)V????? #Lorg/mozilla/javascript/Scriptable;?y $org/mozilla/javascript/ScriptRuntime emptyArgs! java/lang/Object3"??#`xy$% exitActivationFunction #(Lorg/mozilla/javascript/Context;)V?&?'?(m)`*+ org/mozilla/javascript/Node$Jump\?,-??. newCatchScope ?(Ljava/lang/Throwable;Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable; *org/mozilla/javascript/JavaScriptException/-?m ((Ljava/lang/Object;Ljava/lang/String;I)V enterWith z(Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable; leaveWith H(Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable;0 enumInit G(Ljava/lang/Object;Lorg/mozilla/javascript/Context;Z)Ljava/lang/Object;NQ12???? i(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;)Ljava/lang/Object;34 0org/mozilla/javascript/optimizer/OptFunctionNode?????? callRef ?(Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;Lorg/mozilla/javascript/Context;)Lorg/mozilla/javascript/Ref;5678 java/lang/Boolean TRUE Ljava/lang/Boolean; FALSE9? _re enumNext '(Ljava/lang/Object;)Ljava/lang/Boolean; enumId F(Ljava/lang/Object;Lorg/mozilla/javascript/Context;)Ljava/lang/Object;??????:` toInt32 (Ljava/lang/Object;)I typeof &(Ljava/lang/Object;)Ljava/lang/String;%?(? toBoolean (Ljava/lang/Object;)Z;u< add '(DLjava/lang/Object;)Ljava/lang/Object;ki '(Ljava/lang/Object;D)Ljava/lang/Object; X(Ljava/lang/Object;Ljava/lang/Object;Lorg/mozilla/javascript/Context;)Ljava/lang/Object;1256e?<?lmC?S? getObjectIndex G(Ljava/lang/Object;DLorg/mozilla/javascript/Context;)Ljava/lang/Object; getObjectElem refGet P(Lorg/mozilla/javascript/Ref;Lorg/mozilla/javascript/Context;)Ljava/lang/Object;M?K?L?UVXV refSet b(Lorg/mozilla/javascript/Ref;Ljava/lang/Object;Lorg/mozilla/javascript/Context;)Ljava/lang/Object; refDel delete bind z(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;)Lorg/mozilla/javascript/Scriptable; java/lang/String specialRef b(Ljava/lang/Object;Ljava/lang/String;Lorg/mozilla/javascript/Context;)Lorg/mozilla/javascript/Ref; memberRef c(Ljava/lang/Object;Ljava/lang/Object;Lorg/mozilla/javascript/Context;I)Lorg/mozilla/javascript/Ref; u(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Lorg/mozilla/javascript/Context;I)Lorg/mozilla/javascript/Ref; nameRef t(Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;I)Lorg/mozilla/javascript/Ref;Z? escapeAttributeValue F(Ljava/lang/Object;Lorg/mozilla/javascript/Context;)Ljava/lang/String; escapeTextValue setDefaultNamespace java/lang/RuntimeException java/lang/StringBuffer Unexpected node type =>=?@-?.AB G(Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Context;I)V _dcpC?D?E initFunction n(Lorg/mozilla/javascript/NativeFunction;ILorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Context;)V???`??bcf`?FG newArrayLiteral ?([Ljava/lang/Object;Ljava/lang/String;ILorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable; java/lang/IntegerH? wrapInt (I)Ljava/lang/Integer; newObjectLiteral ?([Ljava/lang/Object;[Ljava/lang/Object;[ILorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable; newObjectSpecial ?(Lorg/mozilla/javascript/Context;Ljava/lang/Object;[Ljava/lang/Object;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;I)Ljava/lang/Object; callSpecial ?(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;ILjava/lang/String;I)Ljava/lang/Object; callName0 i(Ljava/lang/String;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Ljava/lang/Object; callProp0 {(Ljava/lang/Object;Ljava/lang/String;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Ljava/lang/Object; call0 ?(Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Ljava/lang/Object; callName |([Ljava/lang/Object;Ljava/lang/String;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Ljava/lang/Object; call1 ?(Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Scriptable;Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Ljava/lang/Object; call2 ?(Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Scriptable;Ljava/lang/Object;Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Ljava/lang/Object; callN ?(Lorg/mozilla/javascript/Callable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Ljava/lang/Object; newObject ?(Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Lorg/mozilla/javascript/Scriptable;7?I? org/mozilla/javascript/Callable call ?(Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Lorg/mozilla/javascript/Scriptable;[Ljava/lang/Object;)Ljava/lang/Object;a` getPropFunctionAndThis g(Ljava/lang/Object;Ljava/lang/String;Lorg/mozilla/javascript/Context;)Lorg/mozilla/javascript/Callable; getElemFunctionAndThis g(Ljava/lang/Object;Ljava/lang/Object;Lorg/mozilla/javascript/Context;)Lorg/mozilla/javascript/Callable; getNameFunctionAndThis x(Ljava/lang/String;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Callable; getValueFunctionAndThis U(Ljava/lang/Object;Lorg/mozilla/javascript/Context;)Lorg/mozilla/javascript/Callable; lastStoredScriptable E(Lorg/mozilla/javascript/Context;)Lorg/mozilla/javascript/Scriptable;J?K? )org/mozilla/javascript/EvaluatorException org/mozilla/javascript/EcmaError shallowEq '(Ljava/lang/Object;Ljava/lang/Object;)ZLM number89 typeofName I(Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;)Ljava/lang/String;N? nameIncrDecr j(Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;Lorg/mozilla/javascript/Context;I)Ljava/lang/Object; propIncrDecr Y(Ljava/lang/Object;Ljava/lang/String;Lorg/mozilla/javascript/Context;I)Ljava/lang/Object; elemIncrDecr H(Ljava/lang/Object;DLorg/mozilla/javascript/Context;I)Ljava/lang/Object; Y(Ljava/lang/Object;Ljava/lang/Object;Lorg/mozilla/javascript/Context;I)Ljava/lang/Object; refIncrDecr Q(Lorg/mozilla/javascript/Ref;Lorg/mozilla/javascript/Context;I)Ljava/lang/Object;/0 toUint32 (Ljava/lang/Object;)J (D)IO9 instanceOf in G(Ljava/lang/Object;Ljava/lang/Object;Lorg/mozilla/javascript/Context;)Z_`:; cmp_LT cmp_LE eq setName ?(Lorg/mozilla/javascript/Scriptable;Ljava/lang/Object;Lorg/mozilla/javascript/Context;Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;)Ljava/lang/Object; setConst {(Lorg/mozilla/javascript/Scriptable;Ljava/lang/Object;Lorg/mozilla/javascript/Context;Ljava/lang/String;)Ljava/lang/Object;P` getObjectProp i(Lorg/mozilla/javascript/Scriptable;Ljava/lang/String;Lorg/mozilla/javascript/Context;)Ljava/lang/Object; X(Ljava/lang/Object;Ljava/lang/String;Lorg/mozilla/javascript/Context;)Ljava/lang/Object; setObjectProp j(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;Lorg/mozilla/javascript/Context;)Ljava/lang/Object; setObjectIndex Y(Ljava/lang/Object;DLjava/lang/Object;Lorg/mozilla/javascript/Context;)Ljava/lang/Object; setObjectElem j(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Lorg/mozilla/javascript/Context;)Ljava/lang/Object; enterDotQuery Z(Ljava/lang/Object;Lorg/mozilla/javascript/Scriptable;)Lorg/mozilla/javascript/Scriptable; updateDotQuery 8(ZLorg/mozilla/javascript/Scriptable;)Ljava/lang/Object; leaveDotQuery org/mozilla/javascript/Node toNumber (Ljava/lang/Object;)D $org.mozilla.javascript.ScriptRuntime +org/mozilla/javascript/optimizer/OptRuntime wrapDouble (D)Ljava/lang/Double;vw #Program too complex (out of locals)QRS ,org/mozilla/javascript/optimizer/BodyCodegen (org/mozilla/javascript/optimizer/Codegen getBodyMethodName ;(Lorg/mozilla/javascript/ScriptOrFnNode;)Ljava/lang/String; getBodyMethodSignature %org/mozilla/classfile/ClassFileWriter startMethod ((Ljava/lang/String;Ljava/lang/String;S)V %org/mozilla/javascript/ScriptOrFnNode getLastChild ()Lorg/mozilla/javascript/Node; stopMethod scriptOrFnNodes ([Lorg/mozilla/javascript/ScriptOrFnNode; getType ()I get [(Lorg/mozilla/javascript/ScriptOrFnNode;)Lorg/mozilla/javascript/optimizer/OptFunctionNode; fnode %Lorg/mozilla/javascript/FunctionNode; #org/mozilla/javascript/FunctionNode requiresActivation ()Z getParamAndVarCount isTargetOfDirectCall badTree ()Ljava/lang/RuntimeException; getParamCount org/mozilla/javascript/Kit codeBug getParameterNumberContext addALoad :(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V acquireLabel addDLoad addAStore markLabel 'org/mozilla/javascript/CompilerEnvirons isUseDynamicScope getIgnoreDynamicScope addInvoke getRegexpCount pushRegExpArray S(Lorg/mozilla/classfile/ClassFileWriter;Lorg/mozilla/javascript/ScriptOrFnNode;II)V addPush getParamAndVarConst ()[Z isNumberVar (D)V addDStore pushUndefined *(Lorg/mozilla/classfile/ClassFileWriter;)V addIStore isGenerateDebugInfo getParamOrVarName (I)Ljava/lang/String; getCurrentCodeOffset addVariableDescriptor )(Ljava/lang/String;Ljava/lang/String;II)V getFunctionCount \(Lorg/mozilla/javascript/ScriptOrFnNode;I)Lorg/mozilla/javascript/optimizer/OptFunctionNode; getFunctionType getEndLineno addLineNumberEntry itsContainsCalls0 itsContainsCalls1 (ILjava/lang/String;)V markHandler addExceptionHandler (IIILjava/lang/String;)V getFirstChild getNext putIntProp removeProp getExistingIntProp (I)I getString ()Ljava/lang/String; (Ljava/lang/String;)V getSourceName (Z)V getIntProp (II)I getProp (I)Ljava/lang/Object; getDouble ()D pushNumberAsObject +(Lorg/mozilla/classfile/ClassFileWriter;D)V mainClassName adjustStackTop getStackTop (IS)V append ,(Ljava/lang/String;)Ljava/lang/StringBuffer; (I)Ljava/lang/StringBuffer; toString getIndex *(Lorg/mozilla/javascript/ScriptOrFnNode;)I mainClassSignature getDirectTargetIndex getDirectTargetFieldName encodeIntArray ([I)Ljava/lang/String; intValue getDirectCtorName getLineno getFinally getParamOrVarIndex (Ljava/lang/String;)I getVarIndex isParameter addILoad org/mozilla/javascript/Context reportRuntimeError ?(Ljava/lang/String;)Lorg/mozilla/javascript/EvaluatorException; jk lm n o pm n q rm n s tu vw xy z{ |} ~ ?m n ? ?? ?? ?? ?m ? ?? ? ? ?m ?m ?? ?? ?? ?? ?? ?? ?? ?? ?? : ?? ? / *? ? ? ?? ?? ?? ? ? V*? *? *? *? ? *? *? ? ? *? *? ? *? ? L? *? L*+? *? *? *? `?? ? ? . ? ? #? '? .? 6? 9? >? C? G? U?? 6 ?? V?? >