symbol_introduce(pp->poly_scope, param->poly_sym->token, (AstNode *) raw);
}
+ // HACK(Brendan): Maybe each type should be given a unique id upon creation?
+ // Then that could be used to uniquely identify the type, instead of relying
+ // on the name being unique. - brendanfh 2020/12/14
static char key_buf[1024];
fori (i, 0, 1024) key_buf[i] = 0;
bh_table_each_start(AstNode *, pp->poly_scope->symbols);
TypeBasic* type = &unop->type->Basic;
- if (type->kind == Basic_Kind_I32
- || type->kind == Basic_Kind_I16
- || type->kind == Basic_Kind_I8) {
+ if (type->kind == Basic_Kind_I32 || type->kind == Basic_Kind_U32
+ || type->kind == Basic_Kind_I16 || type->kind == Basic_Kind_U16
+ || type->kind == Basic_Kind_I8 || type->kind == Basic_Kind_U8) {
WID(WI_I32_CONST, 0xffffffff);
WI(WI_I32_XOR);
}
- else if (type->kind == Basic_Kind_I64) {
+ else if (type->kind == Basic_Kind_I64 || type->kind == Basic_Kind_U64) {
WIL(WI_I64_CONST, 0xffffffffffffffff);
WI(WI_I64_XOR);
}