Backed out changeset 97977f224aff due to build breakage
This commit is contained in:
@@ -75,14 +75,6 @@
|
||||
# include "jsnum.h"
|
||||
#endif
|
||||
|
||||
#include "jsautooplen.h"
|
||||
|
||||
/* Verify JSOP_XXX_LENGTH constant definitions. */
|
||||
#define OPDEF(op,val,name,token,length,nuses,ndefs,prec,format) \
|
||||
JS_STATIC_ASSERT(op##_LENGTH == length);
|
||||
#include "jsopcode.tbl"
|
||||
#undef OPDEF
|
||||
|
||||
static const char js_incop_strs[][3] = {"++", "--"};
|
||||
|
||||
const JSCodeSpec js_CodeSpec[] = {
|
||||
@@ -2160,6 +2152,14 @@ Decompile(SprintStack *ss, jsbytecode *pc, intN nb, JSOp nextop)
|
||||
todo = -2;
|
||||
break;
|
||||
|
||||
case JSOP_SWAP:
|
||||
/*
|
||||
* We don't generate this opcode currently, and previously we
|
||||
* did not need to decompile it. If old, serialized bytecode
|
||||
* uses it still, we should fall through and set todo = -2.
|
||||
*/
|
||||
/* FALL THROUGH */
|
||||
|
||||
case JSOP_GOSUB:
|
||||
case JSOP_GOSUBX:
|
||||
/*
|
||||
@@ -4993,7 +4993,8 @@ DecompileExpression(JSContext *cx, JSScript *script, JSFunction *fun,
|
||||
|
||||
/* None of these stack-writing ops generates novel values. */
|
||||
JS_ASSERT(op != JSOP_CASE && op != JSOP_CASEX &&
|
||||
op != JSOP_DUP && op != JSOP_DUP2);
|
||||
op != JSOP_DUP && op != JSOP_DUP2 &&
|
||||
op != JSOP_SWAP);
|
||||
|
||||
/*
|
||||
* |this| could convert to a very long object initialiser, so cite it by
|
||||
@@ -5273,6 +5274,13 @@ ReconstructPCStack(JSContext *cx, JSScript *script, jsbytecode *pc,
|
||||
pcstack[pcdepth + 3] = pcstack[pcdepth + 1];
|
||||
break;
|
||||
|
||||
case JSOP_SWAP:
|
||||
JS_ASSERT(ndefs == 2);
|
||||
pc2 = pcstack[pcdepth];
|
||||
pcstack[pcdepth] = pcstack[pcdepth + 1];
|
||||
pcstack[pcdepth + 1] = pc2;
|
||||
break;
|
||||
|
||||
case JSOP_LEAVEBLOCKEXPR:
|
||||
/*
|
||||
* The decompiler wants to see [leaveblockexpr] on pcstack, not
|
||||
|
||||
Reference in New Issue
Block a user