|
@@ -145,6 +145,8 @@ uses
|
|
{ taicpu }
|
|
{ taicpu }
|
|
|
|
|
|
taicpu = class(tai_cpu_abstract_sym)
|
|
taicpu = class(tai_cpu_abstract_sym)
|
|
|
|
+ private type
|
|
|
|
+ TCatchArray = array of taicpu;
|
|
private
|
|
private
|
|
insoffset : longint;
|
|
insoffset : longint;
|
|
public
|
|
public
|
|
@@ -169,6 +171,8 @@ uses
|
|
|
|
|
|
constructor op_functype(op : tasmop; _op1: TWasmFuncType);
|
|
constructor op_functype(op : tasmop; _op1: TWasmFuncType);
|
|
|
|
|
|
|
|
+ constructor op_catch(op : tasmop;_op1 : TCatchArray);
|
|
|
|
+
|
|
procedure loadfunctype(opidx:longint;ft:TWasmFuncType);
|
|
procedure loadfunctype(opidx:longint;ft:TWasmFuncType);
|
|
procedure loadsingle(opidx:longint;f:single);
|
|
procedure loadsingle(opidx:longint;f:single);
|
|
procedure loaddouble(opidx:longint;d:double);
|
|
procedure loaddouble(opidx:longint;d:double);
|
|
@@ -2037,6 +2041,15 @@ uses
|
|
loadfunctype(0,_op1);
|
|
loadfunctype(0,_op1);
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
+ constructor taicpu.op_catch(op: tasmop; _op1: TCatchArray);
|
|
|
|
+ var
|
|
|
|
+ c: taicpu;
|
|
|
|
+ begin
|
|
|
|
+ create(op);
|
|
|
|
+ for c in _op1 do
|
|
|
|
+ try_table_catch_clauses.Concat(c);
|
|
|
|
+ end;
|
|
|
|
+
|
|
procedure taicpu.loadfunctype(opidx: longint; ft: TWasmFuncType);
|
|
procedure taicpu.loadfunctype(opidx: longint; ft: TWasmFuncType);
|
|
begin
|
|
begin
|
|
allocate_oper(opidx+1);
|
|
allocate_oper(opidx+1);
|