7#include <aclspv/spvty.h>
9#include <ae2f/c90/StdInt.h>
21
22
23
24#define sz_to_count(c_sz)
29
30
31
32#define count_to_sz(c_count) ((spvsz_t)(((spvsz_t)(c_count)) * (spvsz_t)(sizeof(aclspv_wrd_t))))
35
36
37
41
42
43
44
45
53 _aclspv_grow_vec_with_copy(
54 _aclspv_malloc, _aclspv_free, _aclspv_memcpy
63 return c_wrdcount + 1;
66#define mk_noprnds(c_num_opprm)
69#define opcode_to_wrd(c_opcode, c_num_opprm)
72
73
74
75#define emit_opcode(h_wrds, c_wrdcount, c_opcode, c_num_opprm_opt)
76 (util_emit_wrd(h_wrds, c_wrdcount, opcode_to_wrd(c_opcode, c_num_opprm_opt)))
78#define set_oprnd_count_for_opcode(cr_wrd, c_num_opprm)
82
83
84
85
93 const size_t _len = strlen(rd_str) + 1;
94 const spvsz_t len = (_len > (size_t)UINT32_MAX) ? 0 : (
spvsz_t)_len;
95 const spvsz_t pad_wrds = (!!((len) & 3)) + ((len) >> 2);
99 _aclspv_grow_vec_with_copy(_aclspv_malloc, _aclspv_free, _aclspv_memcpy, L_new
100 , *h_wrds, (size_t)
count_to_sz(pad_wrds + c_wrdcount));
108 return c_wrdcount + pad_wrds;
#define ae2f_WhenCXX(a)
Appears when the current language is C.
#define ae2f_WhenC(a)
Appears when the current language is C++.
#define unless(a)
Invokes when condition is false.
#define ae2f_extern
Suggests the existence of external variable or function, in naming of C. [non-mangling].
#define ACLSPV_ABI_DECL
Declaration as ABI.
#define ae2f_assume(a)
tells the compiler that value if a is false, below this keyword is not expected to be reached.
#define ae2f_unexpected_but_if(a)
#define ae2f_expected_but_else(a)
#define ae2f_ccconst
Keyword as [[const]] on C23..
#define ae2f_noexcept
marker that this function does not throw something.
#define ae2f_restrict
Keyword as restrict on C99.
#define ae2f_expected_not(a)
expectes a as false.
#define ae2f_unreachable()
tells the compiler that below this keyword is not expected to be reached.
#define ae2f_inline
inline
#define ae2f_expected(a)
expectes a as true.
#define util_emitx_type_pointer(h_wrds, c_wrdcount, c_retid, c_storage_class, c_elm_type_id)
#define get_buf_from_scale(h_alloc, c_scale)
#define aclspv_opcode_t
integer as operation code
aclspv_wrd_t aclspv_wrdcount_t
the integer type represents the number of word.
#define ACLSPV_MASK_OPCODE
mask for opcode
#define aclspv_wrd_t
integer as word
#define ACLSPV_MASK_NOPRNDS
mask for number of operands
x_aclspv_vec m_scale_vars
aclspv_wrdcount_t m_num_type_uniques
x_aclspv_vec m_cursors
cache for cursors for parsing one function for its use see util/cursor.h
x_aclspv_vec m_constant_cache
x_aclspv_vec m_ret
word count for m_ret
aclspv_wrd_t m_is_logical
when on, ignores m_is_buffer_64.
aclspv_wrdcount_t m_num_cursor
number of m_cursors. for its use see util/cursor.h
x_aclspv_vec m_type_uniques
cache for complex types which needs to be stored somewhere for its use see util/type_unique....
util_bind_unified m_unified
#define mk_noprnds(c_num_opprm)
#define emit_opcode(h_wrds, c_wrdcount, c_opcode, c_num_opprm_opt)
try emit opcode with num_opprm
#define sz_to_count(c_sz)
byte size to word count
#define get_wrd_of_vec(vec)
get word buffer from vector
aclspv_wrdcount_t spvsz_t
#define count_to_sz(c_count)
word count to byte size
#define set_oprnd_count_for_opcode(cr_wrd, c_num_opprm)
#define opcode_to_wrd(c_opcode, c_num_opprm)