Files
jpexs-decompiler/trunk/doc/avm2opcodes.htm
Jindra Petøík 34c819002c version apha 9
AS3: Included new undocumented instructions, new Multiname kind - Typename
AS3: Export PCode
AS3: Implemented code for executing some instructions
Many bugfixes
2011-07-02 18:29:59 +02:00

167 lines
9.3 KiB
HTML

<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"><title>Paste number 70938: complete AVM2 opcodes, from Tamarin sources.</title><link type="text/css" rel="stylesheet" href="avm2opcodes_soubory/lisppaste.css"><link rel="alternate" type="application/rss+xml" title="Lisppaste RSS" href="http://paste.lisp.org/list.rss"></head><body><div class="top-header">Paste number 70938: complete AVM2 opcodes, from Tamarin sources.</div><p></p><div><form accept-charset="utf-8" action="http://paste.lisp.org/new" method="post"></form><p></p><div><table class="paste-header"><tbody><tr><td align="left" nowrap="nowrap" width="0%">Paste number 70938: </td><td align="left" width="100%"><b>complete AVM2 opcodes, from Tamarin sources.</b></td></tr><tr><td align="left" nowrap="nowrap">Pasted by: </td><td align="left" width="100%">fusss</td></tr><tr><td>When:</td><td align="left" width="100%">2 years, 7 months ago</td></tr><tr><td>Share:</td><td align="left" width="100%"><a href="http://twitter.com/home?status=http%3A%2F%2Fpaste.lisp.org%2F%2B1IQI%20complete%20AVM2%20opcodes%2C%20from%20Tamarin%20sources.">Tweet this!</a> | <a href="http://paste.lisp.org/+1IQI">http://paste.lisp.org/+1IQI</a></td></tr><tr><td>Channel:</td><td align="left" width="100%"><a href="http://paste.lisp.org/list/lisp">#lisp</a></td></tr><tr><td align="left" nowrap="nowrap" valign="top">Paste contents:</td><td width="100%"><form accept-charset="utf-8" action="http://paste.lisp.org/display/70938/raw" method="post"><a href="http://paste.lisp.org/display/70938/raw">Raw Source</a> | <a href="http://paste.lisp.org/display/70938/xml">XML</a> | Display As <select name="type"><option selected="selected" value="text/plain">text/plain</option><option value="image/svg+xml">image/svg+xml</option><option value="text/html">text/html</option><option value="application/xhtml+xml">application/xhtml+xml</option></select><input value="OK" type="submit"></form></td></tr></tbody></table><pre class="paste-area"><span class="paste"><span class="comment">;; 160 opcodes. only 136 are in the avm2 docs.
</span>add:int = 0xA0
add_d:int = 0x9B
add_i:int = 0xC5
applytype:int = 0x53
astype:int = 0x86
astypelate:int = 0x87
bitand:int = 0xA8
bitnot:int = 0x97
bitor:int = 0xA9
bitxor:int = 0xAA
bkpt:int = 0x01
bkptline:int = 0xF2
call:int = 0x41
callinterface:int = 0x4D
callmethod:int = 0x43
callproperty:int = 0x46
callproplex:int = 0x4C
callpropvoid:int = 0x4F
callstatic:int = 0x44
callsuper:int = 0x45
callsuperid:int = 0x4B
callsupervoid:int = 0x4E
coerce:int = 0x80
coerce_a:int = 0x82
coerce_b:int = 0x81
coerce_d:int = 0x84
coerce_i:int = 0x83
coerce_o:int = 0x89
coerce_s:int = 0x85
coerce_u:int = 0x88
concat:int = 0x9A
construct:int = 0x42
constructprop:int = 0x4A
constructsuper:int = 0x49
convert_b:int = 0x76
convert_d:int = 0x75
convert_i:int = 0x73
convert_o:int = 0x77
convert_s:int = 0x70
convert_u:int = 0x74
debug:int = 0xEF
debugfile:int = 0xF1
debugline:int = 0xF0
declocal:int = 0x94
declocal_i:int = 0xC3
decrement:int = 0x93
decrement_i:int = 0xC1
deleteproperty:int = 0x6A
deletepropertylate:int = 0x6B
divide:int = 0xA3
dup:int = 0x2A
dxns:int = 0x06
dxnslate:int = 0x07
equals:int = 0xAB
esc_xattr:int = 0x72
esc_xelem:int = 0x71
finddef:int = 0x5F
findproperty:int = 0x5E
findpropstrict:int = 0x5D
getdescendants:int = 0x59
getglobalscope:int = 0x64
getglobalslot:int = 0x6E
getlex:int = 0x60
getlocal0:int = 0xD0
getlocal1:int = 0xD1
getlocal2:int = 0xD2
getlocal3:int = 0xD3
getlocal:int = 0x62
getouterscope:int = 0x67
getproperty:int = 0x66
getscopeobject:int = 0x65
getslot:int = 0x6C
getsuper:int = 0x04
greaterequals:int = 0xB0
greaterthan:int = 0xAF
hasnext2:int = 0x32
hasnext:int = 0x1F
ifeq:int = 0x13
iffalse:int = 0x12
ifge:int = 0x18
ifgt:int = 0x17
ifle:int = 0x16
iflt:int = 0x15
ifne:int = 0x14
ifnge:int = 0x0F
ifngt:int = 0x0E
ifnle:int = 0x0D
ifnlt:int = 0x0C
ifstricteq:int = 0x19
ifstrictne:int = 0x1A
iftrue:int = 0x11
in:int = 0xB4
inclocal:int = 0x92
inclocal_i:int = 0xC2
increment:int = 0x91
increment_i:int = 0xC0
initproperty:int = 0x68
instanceof:int = 0xB1
istype:int = 0xB2
istypelate:int = 0xB3
jump:int = 0x10
kill:int = 0x08
label:int = 0x09
lessequals:int = 0xAE
lessthan:int = 0xAD
lookupswitch:int = 0x1B
lshift:int = 0xA5
modulo:int = 0xA4
multiply:int = 0xA2
multiply_i:int = 0xC7
negate:int = 0x90
negate_i:int = 0xC4
newactivation:int = 0x57
newarray:int = 0x56
newcatch:int = 0x5A
newclass:int = 0x58
newfunction:int = 0x40
newobject:int = 0x55
nextname:int = 0x1E
nextvalue:int = 0x23
nop:int = 0x02
not:int = 0x96
pop:int = 0x29
popscope:int = 0x1D
pushbyte:int = 0x24
pushconstant:int = 0x22
pushdouble:int = 0x2F
pushfalse:int = 0x27
pushint:int = 0x2D
pushnamespace:int = 0x31
pushnan:int = 0x28
pushnull:int = 0x20
pushscope:int = 0x30
pushshort:int = 0x25
pushstring:int = 0x2C
pushtrue:int = 0x26
pushuint:int = 0x2E
pushundefined:int = 0x21
pushwith:int = 0x1C
returnvalue:int = 0x48
returnvoid:int = 0x47
rshift:int = 0xA6
setglobalslot:int = 0x6F
setlocal0:int = 0xD4
setlocal1:int = 0xD5
setlocal2:int = 0xD6
setlocal3:int = 0xD7
setlocal:int = 0x63
setproperty:int = 0x61
setpropertylate:int = 0x69
setslot:int = 0x6D
setsuper:int = 0x05
strictequals:int = 0xAC
subtract:int = 0xA1
subtract_i:int = 0xC6
swap:int = 0x2B
throw:int = 0x03
typeof:int = 0x95
urshift:int = 0xA7
</span></pre></div><p><span class="small-header">This paste has no annotations.</span></p><p><table width="100%"><tbody><tr><td align="left"><form accept-charset="utf-8" action="http://paste.lisp.org/display/70938" method="post"><table class="controls"><tbody><tr><td>Colorize as: <select name="colorize"><option value="None">None</option><option value="Basic Lisp">Basic Lisp</option><option value="Scheme">Scheme</option><option value="Emacs Lisp">Emacs Lisp</option><option value="Common Lisp" selected="selected">Common Lisp</option><option value="C">C</option><option value="C++">C++</option><option value="Java">Java</option><option value="Objective C">Objective C</option><option value="Erlang">Erlang</option><option value="Python">Python</option><option value="Haskell">Haskell</option><option value="Unified Context Diff">Unified Context Diff</option><option value="WebKit (text or diff)">WebKit (text or diff)</option></select><br><input name="linenumbers" value="true" type="checkbox"> Show Line Numbers<br><center><input value="Format" type="submit"></center></td></tr></tbody></table></form></td><td align="right"><form accept-charset="utf-8" name="MARK_AS_SPAM" action="http://paste.lisp.org/mark-as-spam" method="GET"><input name="PASTE" value="70938" type="hidden"><input name="submit" value="Mark as Spam" type="submit"> <script language="JavaScript"></script></form><form accept-charset="utf-8" name="REQUEST_DELETION" action="http://paste.lisp.org/request-deletion" method="GET"><input name="PASTE" value="70938" type="hidden"><input name="submit" value="Request Deletion" type="submit"> <script language="JavaScript"></script></form><form accept-charset="utf-8" name="MARK_AS_WRONG_CHANNEL" action="http://paste.lisp.org/mark-as-wrong-channel" method="GET"><input name="PASTE" value="70938" type="hidden"><input name="submit" value="Wrong Channel" type="submit"> <script language="JavaScript"></script></form></td></tr></tbody></table></p><p></p><center><div class="ohloh"><script type="text/javascript" src="avm2opcodes_soubory/project_users"></script><a href="http://www.ohloh.net/stack_entries/new?project_id=lisppaste&amp;ref=WidgetProjectUsers" onmouseout="this.style.background = 'url(http://www.ohloh.net/images/stack/badges.png) -66px 0 no-repeat'" onmouseover="this.style.background = 'url(http://www.ohloh.net/images/stack/badges.png) 0 0 no-repeat'" style="display: block; border-bottom: medium none; background: url(&quot;http://www.ohloh.net/images/stack/badges.png&quot;) no-repeat scroll -66px 0pt transparent; text-decoration: none; width: 66px; height: 66px;" target="_top"><div style="width: 66px; line-height: 1.2em; height: 66px">
<p style="font-weight:bold; font-size:16pt; text-align:center; padding:2px 0px 0px 6px; color:#000; font-family:arial; letter-spacing:-0.05em; line-height: 1.2em; margin:0px;">98</p>
</div>
</a></div><div class="ads-text"><div><ul><li>Follow lisppaste's author: <a href="http://twitter.com/bmastenbrook">Twitter</a> | <a href="http://www.ohloh.net/accounts/bmastenbrook">Ohloh</a></li><li><a href="http://planet.lisp.org/">Planet Lisp</a></li><li><a href="http://www.gigamonkeys.com/book/">Practical Common Lisp - learn Lisp!</a></li></ul></div></div></center></div><p></p><div class="bottom-links"><table width="100%"><tbody><tr><td id="main-link"><a href="http://paste.lisp.org/">Main page</a></td><td id="other-links"><a href="http://paste.lisp.org/new">New paste</a> | <a href="http://paste.lisp.org/list">List all pastes</a> | <a href="http://paste.lisp.org/syndication">Syndication</a> | <a href="http://common-lisp.net/project/lisppaste/xml-rpc.html">XML-RPC</a> | <a href="http://paste.lisp.org/email">Requests Email</a> | <a href="http://paste.lisp.org/administration">Administrate</a> | <a href="http://www.common-lisp.net/project/lisppaste">Project home</a></td></tr></tbody></table></div><i>Lisppaste
pastes can be made by anyone at any time. Imagine a fearsomely
comprehensive disclaimer of liability. Now fear, comprehensively.</i></body></html>