git.asbjorn.biz
/
swftools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed multiline comments
[swftools.git]
/
lib
/
as3
/
opcodes.c
diff --git
a/lib/as3/opcodes.c
b/lib/as3/opcodes.c
index
b21bccb
..
b5def9d
100644
(file)
--- a/
lib/as3/opcodes.c
+++ b/
lib/as3/opcodes.c
@@
-52,7
+52,7
@@
code_t* abc_call(code_t*prev, int v)
self->data[0] = (void*)(ptroff_t)v;
return self;
}
self->data[0] = (void*)(ptroff_t)v;
return self;
}
-code_t* abc_callmethod(code_t*prev, abc_method_body_t* m, int v)
+code_t* abc_callmethod(code_t*prev, abc_method_t* m, int v)
{
code_t*self = add_opcode(prev, 0x43);
self->data[0] = m;
{
code_t*self = add_opcode(prev, 0x43);
self->data[0] = m;
@@
-101,7
+101,7
@@
code_t* abc_callpropvoid2(code_t*prev, multiname_t* name, int v)
self->data[1] = (void*)(ptroff_t)v;
return self;
}
self->data[1] = (void*)(ptroff_t)v;
return self;
}
-code_t* abc_callstatic(code_t*prev, abc_method_t* m, int v)
+code_t* abc_callstatic(code_t*prev, abc_method_body_t* m, int v)
{
code_t*self = add_opcode(prev, 0x44);
self->data[0] = m;
{
code_t*self = add_opcode(prev, 0x44);
self->data[0] = m;
@@
-225,10
+225,16
@@
code_t* abc_debug(code_t*prev, void* debuginfo)
/* FIXME: write debuginfo debuginfo */
return self;
}
/* FIXME: write debuginfo debuginfo */
return self;
}
-code_t* abc_debugfile(code_t*prev, char* s)
+code_t* abc_debugfile(code_t*prev, char* name)
{
code_t*self = add_opcode(prev, 0xf1);
{
code_t*self = add_opcode(prev, 0xf1);
- self->data[0] = strdup(s);
+ self->data[0] = string_new4(name);
+ return self;
+}
+code_t* abc_debugfile2(code_t*prev, string_t* s)
+{
+ code_t*self = add_opcode(prev, 0xf1);
+ self->data[0] = string_dup3(s);
return self;
}
code_t* abc_debugline(code_t*prev, int v)
return self;
}
code_t* abc_debugline(code_t*prev, int v)
@@
-281,10
+287,16
@@
code_t* abc_dup(code_t*prev)
code_t*self = add_opcode(prev, 0x2a);
return self;
}
code_t*self = add_opcode(prev, 0x2a);
return self;
}
-code_t* abc_dxns(code_t*prev, char* s)
+code_t* abc_dxns(code_t*prev, char* name)
+{
+ code_t*self = add_opcode(prev, 0x06);
+ self->data[0] = string_new4(name);
+ return self;
+}
+code_t* abc_dxns2(code_t*prev, string_t* s)
{
code_t*self = add_opcode(prev, 0x06);
{
code_t*self = add_opcode(prev, 0x06);
- self->data[0] = strdup(s);
+ self->data[0] = string_dup3(s);
return self;
}
code_t* abc_dxnslate(code_t*prev)
return self;
}
code_t* abc_dxnslate(code_t*prev)
@@
-696,7
+708,7
@@
code_t* abc_newclass(code_t*prev, abc_class_t* m)
self->data[0] = m;
return self;
}
self->data[0] = m;
return self;
}
-code_t* abc_newfunction(code_t*prev, abc_method_body_t* m)
+code_t* abc_newfunction(code_t*prev, abc_method_t* m)
{
code_t*self = add_opcode(prev, 0x40);
self->data[0] = m;
{
code_t*self = add_opcode(prev, 0x40);
self->data[0] = m;
@@
-790,10
+802,16
@@
code_t* abc_pushshort(code_t*prev, int v)
self->data[0] = (void*)(ptroff_t)v;
return self;
}
self->data[0] = (void*)(ptroff_t)v;
return self;
}
-code_t* abc_pushstring(code_t*prev, char* s)
+code_t* abc_pushstring(code_t*prev, char* name)
{
code_t*self = add_opcode(prev, 0x2c);
{
code_t*self = add_opcode(prev, 0x2c);
- self->data[0] = strdup(s);
+ self->data[0] = string_new4(name);
+ return self;
+}
+code_t* abc_pushstring2(code_t*prev, string_t* s)
+{
+ code_t*self = add_opcode(prev, 0x2c);
+ self->data[0] = string_dup3(s);
return self;
}
code_t* abc_pushtrue(code_t*prev)
return self;
}
code_t* abc_pushtrue(code_t*prev)
@@
-929,14
+947,10
@@
code_t* abc_urshift(code_t*prev)
code_t*self = add_opcode(prev, 0xa7);
return self;
}
code_t*self = add_opcode(prev, 0xa7);
return self;
}
-code_t* abc_xxx1(code_t*prev)
+code_t* abc_applytype(code_t*prev, int v)
{
code_t*self = add_opcode(prev, 0x53);
{
code_t*self = add_opcode(prev, 0x53);
- return self;
-}
-code_t* abc_xxx2(code_t*prev)
-{
- code_t*self = add_opcode(prev, 0x01);
+ self->data[0] = (void*)(ptroff_t)v;
return self;
}
code_t* abc___break__(code_t*prev)
return self;
}
code_t* abc___break__(code_t*prev)