Lines Matching refs:len
13 uint32_t len; member
19 static uint32_t ir_str_hash(const char *str, size_t len) in ir_str_hash() argument
24 for (i = 0; i < len; i++) { in ir_str_hash()
73 static void ir_strtab_grow_buf(ir_strtab *strtab, uint32_t len) in ir_strtab_grow_buf() argument
79 } while (UNEXPECTED(strtab->buf_size - strtab->buf_top < len + 1)); in ir_strtab_grow_buf()
115 ir_ref ir_strtab_find(const ir_strtab *strtab, const char *str, uint32_t len) in ir_strtab_find() argument
117 uint32_t h = ir_str_hash(str, len); in ir_strtab_find()
125 && p->len == len in ir_strtab_find()
126 && memcmp(p->str, str, len) == 0) { in ir_strtab_find()
134 ir_ref ir_strtab_lookup(ir_strtab *strtab, const char *str, uint32_t len, ir_ref val) in ir_strtab_lookup() argument
136 uint32_t h = ir_str_hash(str, len); in ir_strtab_lookup()
144 && p->len == len in ir_strtab_lookup()
145 && memcmp(p->str, str, len) == 0) { in ir_strtab_lookup()
159 if (UNEXPECTED(strtab->buf_size - strtab->buf_top < len + 1)) { in ir_strtab_lookup()
160 ir_strtab_grow_buf(strtab, len + 1); in ir_strtab_lookup()
163 memcpy(strtab->buf + strtab->buf_top, str, len); in ir_strtab_lookup()
164 strtab->buf[strtab->buf_top + len] = 0; in ir_strtab_lookup()
166 strtab->buf_top += len + 1; in ir_strtab_lookup()
174 p->len = len; in ir_strtab_lookup()
183 ir_ref ir_strtab_update(ir_strtab *strtab, const char *str, uint32_t len, ir_ref val) in ir_strtab_update() argument
185 uint32_t h = ir_str_hash(str, len); in ir_strtab_update()
193 && p->len == len in ir_strtab_update()
194 && memcmp(p->str, str, len) == 0) { in ir_strtab_update()
208 const char *ir_strtab_strl(const ir_strtab *strtab, ir_ref idx, size_t *len) in ir_strtab_strl() argument
212 *len = b->len; in ir_strtab_strl()
234 func(b->str, b->len, b->val); in ir_strtab_apply()