aot_emit_stringref.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  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_STRINGREF_H_
  6. #define _AOT_EMIT_STRINGREF_H_
  7. #include "aot_compiler.h"
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11. bool
  12. aot_compile_op_string_new(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  13. uint32 encoding, const uint8 *frame_ip_stringref_new);
  14. bool
  15. aot_compile_op_string_const(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  16. uint32 contents,
  17. const uint8 *frame_ip_string_const);
  18. bool
  19. aot_compile_op_string_measure(AOTCompContext *comp_ctx,
  20. AOTFuncContext *func_ctx, uint32 encoding);
  21. bool
  22. aot_compile_op_string_encode(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  23. uint32 mem_idx, uint32 encoding);
  24. bool
  25. aot_compile_op_string_concat(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  26. const uint8 *frame_ip_string_concat);
  27. bool
  28. aot_compile_op_string_eq(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx);
  29. bool
  30. aot_compile_op_string_is_usv_sequence(AOTCompContext *comp_ctx,
  31. AOTFuncContext *func_ctx);
  32. bool
  33. aot_compile_op_string_as_wtf8(AOTCompContext *comp_ctx,
  34. AOTFuncContext *func_ctx,
  35. const uint8 *frame_ip_string_as_wtf8);
  36. bool
  37. aot_compile_op_stringview_wtf8_advance(AOTCompContext *comp_ctx,
  38. AOTFuncContext *func_ctx);
  39. bool
  40. aot_compile_op_stringview_wtf8_encode(AOTCompContext *comp_ctx,
  41. AOTFuncContext *func_ctx, uint32 mem_idx,
  42. uint32 encoding);
  43. bool
  44. aot_compile_op_stringview_wtf8_slice(AOTCompContext *comp_ctx,
  45. AOTFuncContext *func_ctx,
  46. const uint8 *frame_ip_wtf8_slice);
  47. bool
  48. aot_compile_op_string_as_wtf16(AOTCompContext *comp_ctx,
  49. AOTFuncContext *func_ctx,
  50. const uint8 *frame_ip_string_as_wtf16);
  51. bool
  52. aot_compile_op_stringview_wtf16_length(AOTCompContext *comp_ctx,
  53. AOTFuncContext *func_ctx);
  54. bool
  55. aot_compile_op_stringview_wtf16_get_codeunit(AOTCompContext *comp_ctx,
  56. AOTFuncContext *func_ctx);
  57. bool
  58. aot_compile_op_stringview_wtf16_encode(AOTCompContext *comp_ctx,
  59. AOTFuncContext *func_ctx,
  60. uint32 mem_idx);
  61. bool
  62. aot_compile_op_stringview_wtf16_slice(AOTCompContext *comp_ctx,
  63. AOTFuncContext *func_ctx,
  64. const uint8 *frame_ip_wtf16_slice);
  65. bool
  66. aot_compile_op_string_as_iter(AOTCompContext *comp_ctx,
  67. AOTFuncContext *func_ctx,
  68. const uint8 *frame_ip_string_as_iter);
  69. bool
  70. aot_compile_op_stringview_iter_next(AOTCompContext *comp_ctx,
  71. AOTFuncContext *func_ctx);
  72. bool
  73. aot_compile_op_stringview_iter_advance(AOTCompContext *comp_ctx,
  74. AOTFuncContext *func_ctx);
  75. bool
  76. aot_compile_op_stringview_iter_rewind(AOTCompContext *comp_ctx,
  77. AOTFuncContext *func_ctx);
  78. bool
  79. aot_compile_op_stringview_iter_slice(
  80. AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
  81. const uint8 *frame_ip_stringview_iter_slice);
  82. bool
  83. aot_compile_op_string_new_array(AOTCompContext *comp_ctx,
  84. AOTFuncContext *func_ctx, uint32 encoding,
  85. const uint8 *frame_ip_string_new_array);
  86. bool
  87. aot_compile_op_string_encode_array(AOTCompContext *comp_ctx,
  88. AOTFuncContext *func_ctx, uint32 encoding);
  89. #ifdef __cplusplus
  90. } /* end of extern "C" */
  91. #endif
  92. #endif /* end of _AOT_EMIT_STRINGREF_H_ */