Merge pull request #324 from Tetralux/tet/ptr-endianness

Fix assert when printing IR of pointer with endianness
This commit is contained in:
gingerBill
2019-01-18 14:24:19 +00:00
committed by GitHub

View File

@@ -1041,6 +1041,8 @@ bool is_type_integer_endian_big(Type *t) {
return build_context.endian_kind == TargetEndian_Big;
} else if (t->kind == Type_BitSet) {
return is_type_integer_endian_big(bit_set_to_int(t));
} else if (t->kind == Type_Pointer) {
return is_type_integer_endian_big(&basic_types[Basic_uintptr]);
} else {
GB_PANIC("Unsupported type: %s", type_to_string(t));
}
@@ -1058,6 +1060,8 @@ bool is_type_integer_endian_little(Type *t) {
return build_context.endian_kind == TargetEndian_Little;
} else if (t->kind == Type_BitSet) {
return is_type_integer_endian_little(bit_set_to_int(t));
} else if (t->kind == Type_Pointer) {
return is_type_integer_endian_little(&basic_types[Basic_uintptr]);
} else {
GB_PANIC("Unsupported type: %s", type_to_string(t));
}