aot_emit_table.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /*
  2. * Copyright (C) 2019 Intel Corporation. All rights reserved.
  3. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  4. */
  5. #ifndef _AOT_EMIT_TABLE_H_
  6. #define _AOT_EMIT_TABLE_H_
  7. #include "aot_compiler.h"
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11. bool
  12. aot_compile_op_elem_drop(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  13. uint32 tbl_seg_idx);
  14. bool
  15. aot_compile_op_table_get(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  16. uint32 tbl_idx);
  17. bool
  18. aot_compile_op_table_set(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  19. uint32 tbl_idx);
  20. bool
  21. aot_compile_op_table_init(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  22. uint32 tbl_idx, uint32 tbl_seg_idx);
  23. bool
  24. aot_compile_op_table_copy(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  25. uint32 src_tbl_idx, uint32 dst_tbl_idx);
  26. bool
  27. aot_compile_op_table_size(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  28. uint32 tbl_idx);
  29. bool
  30. aot_compile_op_table_grow(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  31. uint32 tbl_idx);
  32. bool
  33. aot_compile_op_table_fill(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  34. uint32 tbl_idx);
  35. uint64
  36. get_tbl_inst_offset(const AOTCompContext *comp_ctx,
  37. const AOTFuncContext *func_ctx, uint32 tbl_idx);
  38. uint32
  39. get_module_inst_extra_offset(AOTCompContext *comp_ctx);
  40. LLVMValueRef
  41. aot_compile_get_tbl_inst(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  42. uint32 tbl_idx);
  43. #ifdef __cplusplus
  44. } /* end of extern "C" */
  45. #endif
  46. #endif