Skip to content

Commit

Permalink
move some instance resource functions from exec.h to instance.h
Browse files Browse the repository at this point in the history
note: exec.h is a lib internal header.
  • Loading branch information
yamt committed Aug 7, 2024
1 parent 414bca2 commit 2d77fc5
Show file tree
Hide file tree
Showing 7 changed files with 23 additions and 16 deletions.
1 change: 1 addition & 0 deletions lib/cconv.c
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
*/

#include "exec.h"
#include "instance.h"
#include "module.h"
#include "type.h"

Expand Down
13 changes: 0 additions & 13 deletions lib/exec.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ int exec_const_expr(const struct expr *expr, enum valtype type,

int memory_init(struct exec_context *ctx, uint32_t memidx, uint32_t dataidx,
uint32_t d, uint32_t s, uint32_t n);
uint32_t memory_grow(struct meminst *mi, uint32_t sz);
uint32_t memory_grow2(struct exec_context *ctx, uint32_t memidx, uint32_t sz);

int memory_notify(struct exec_context *ctx, uint32_t memidx, uint32_t addr,
Expand All @@ -42,15 +41,6 @@ int table_init(struct exec_context *ctx, uint32_t tableidx, uint32_t elemidx,
uint32_t d, uint32_t s, uint32_t n);
int table_access(struct exec_context *ectx, uint32_t tableidx, uint32_t offset,
uint32_t n);
void table_set(struct tableinst *tinst, uint32_t elemidx,
const struct val *val);
void table_get(struct tableinst *tinst, uint32_t elemidx, struct val *val);
int table_get_func(struct exec_context *ectx, const struct tableinst *t,
uint32_t i, const struct functype *ft,
const struct funcinst **fip);
int table_grow(struct tableinst *tinst, const struct val *val, uint32_t n);
void global_set(struct globalinst *ginst, const struct val *val);
void global_get(struct globalinst *ginst, struct val *val);
void data_drop(struct exec_context *ectx, uint32_t dataidx);
void elem_drop(struct exec_context *ectx, uint32_t elemidx);

Expand All @@ -73,9 +63,6 @@ int memory_getptr(struct exec_context *ctx, uint32_t memidx, uint32_t ptr,
uint32_t offset, uint32_t size, void **pp);
int memory_getptr2(struct exec_context *ctx, uint32_t memidx, uint32_t ptr,
uint32_t offset, uint32_t size, void **pp, bool *movedp);
int memory_instance_getptr2(struct meminst *meminst, uint32_t ptr,
uint32_t offset, uint32_t size, void **pp,
bool *movedp);
struct toywasm_mutex;
int memory_atomic_getptr(struct exec_context *ctx, uint32_t memidx,
uint32_t ptr, uint32_t offset, uint32_t size,
Expand Down
1 change: 1 addition & 0 deletions lib/insn.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
#include "insn_macros.h"
#include "insn_op.h"
#include "insn_op_helpers.h"
#include "instance.h"
#include "leb128.h"
#include "mem.h"
#include "platform.h"
Expand Down
17 changes: 17 additions & 0 deletions lib/instance.h
Original file line number Diff line number Diff line change
@@ -1,17 +1,21 @@
#include <stdbool.h>
#include <stdint.h>

#include "platform.h"

struct module;
struct instance;
struct exec_context;
struct funcinst;
struct functype;
struct resulttype;
struct import;
struct import_object;
struct import_object_entry;
struct mem_context;
struct report;
struct name;
struct val;

__BEGIN_EXTERN_C

Expand Down Expand Up @@ -130,18 +134,31 @@ struct memtype;
int memory_instance_create(struct mem_context *mctx, struct meminst **mip,
const struct memtype *mt);
void memory_instance_destroy(struct mem_context *mctx, struct meminst *mi);
uint32_t memory_grow(struct meminst *mi, uint32_t sz);
int memory_instance_getptr2(struct meminst *meminst, uint32_t ptr,
uint32_t offset, uint32_t size, void **pp,
bool *movedp);

struct globalinst;
struct globaltype;
int global_instance_create(struct mem_context *mctx, struct globalinst **gip,
const struct globaltype *gt);
void global_instance_destroy(struct mem_context *mctx, struct globalinst *gi);
void global_set(struct globalinst *ginst, const struct val *val);
void global_get(struct globalinst *ginst, struct val *val);

struct tableinst;
struct tabletype;
int table_instance_create(struct mem_context *mctx, struct tableinst **tip,
const struct tabletype *tt);
void table_instance_destroy(struct mem_context *mctx, struct tableinst *ti);
void table_set(struct tableinst *tinst, uint32_t elemidx,
const struct val *val);
void table_get(struct tableinst *tinst, uint32_t elemidx, struct val *val);
int table_grow(struct tableinst *tinst, const struct val *val, uint32_t n);
int table_get_func(struct exec_context *ectx, const struct tableinst *t,
uint32_t i, const struct functype *ft,
const struct funcinst **fip);

/*
* create_satisfying_shared_memories:
Expand Down
2 changes: 1 addition & 1 deletion libdyld/dyld.c
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
#include "dyld_impl.h"
#include "dyld_plt.h"
#include "dylink_type.h"
#include "exec.h"
#include "exec_context.h"
#include "fileio.h"
#include "instance.h"
#include "list.h"
Expand Down
2 changes: 1 addition & 1 deletion libdyld/dyld_dlfcn.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
#include "dyld_dlfcn_abi.h"
#include "dyld_impl.h"
#include "endian.h"
#include "exec.h"
#include "exec_context.h"
#include "host_instance.h"
#include "mem.h"
#include "xlog.h"
Expand Down
3 changes: 2 additions & 1 deletion libdyld/dyld_plt.c
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@
#include "dyld.h"
#include "dyld_impl.h"
#include "dyld_plt.h"
#include "exec.h"
#include "exec_context.h"
#include "instance.h"
#include "xlog.h"

int
Expand Down

0 comments on commit 2d77fc5

Please sign in to comment.