Add underlying type for bit_set

This commit is contained in:
gingerBill
2018-08-17 15:11:41 +01:00
parent 7d39b26cf4
commit b216e44870
11 changed files with 162 additions and 83 deletions
+6 -9
View File
@@ -508,16 +508,13 @@ void ir_print_type(irFileBuffer *f, irModule *m, Type *t, bool in_struct) {
}
case Type_BitSet: {
i64 align = type_align_of(t);
i64 size = type_size_of(t);
switch (size) {
case 0: ir_write_str_lit(f, "{}"); return;
case 1: ir_write_str_lit(f, "i8"); return;
case 2: ir_write_str_lit(f, "i16"); return;
case 4: ir_write_str_lit(f, "i32"); return;
case 8: ir_write_str_lit(f, "i64"); return;
default: GB_PANIC("Unknown bit_set size"); break;
i64 size = type_size_of(t);
if (size == 0) {
ir_write_str_lit(f, "{}");
return;
}
ir_print_type(f, m, bit_set_to_int(t));
return;
}
}
}