mirror of
https://github.com/Ed94/Odin.git
synced 2026-06-30 09:11:48 -07:00
Remove scalar*vector; swizzle; broadcast
This commit is contained in:
@@ -164,9 +164,6 @@ void ssa_print_type(gbFile *f, BaseTypeSizes s, Type *t) {
|
||||
case Type_Named:
|
||||
ssa_print_encoded_local(f, t->named.name);
|
||||
break;
|
||||
case Type_Alias:
|
||||
ssa_print_type(f, s, t->alias.base);
|
||||
break;
|
||||
case Type_Tuple:
|
||||
if (t->tuple.variable_count == 1) {
|
||||
ssa_print_type(f, s, t->tuple.variables[0]->type);
|
||||
@@ -635,6 +632,29 @@ void ssa_print_instr(gbFile *f, ssaModule *m, ssaValue *value) {
|
||||
ssa_fprintf(f, "\n");
|
||||
} break;
|
||||
|
||||
case ssaInstr_ShuffleVector: {
|
||||
auto *sv = &instr->shuffle_vector;
|
||||
Type *vt = ssa_value_type(sv->vector);
|
||||
ssa_fprintf(f, "%%%d = shufflevector ", value->id);
|
||||
|
||||
ssa_print_type(f, m->sizes, vt);
|
||||
ssa_fprintf(f, " ");
|
||||
ssa_print_value(f, m, sv->vector, vt);
|
||||
ssa_fprintf(f, ", ");
|
||||
ssa_print_type(f, m->sizes, vt);
|
||||
ssa_fprintf(f, " undef,");
|
||||
|
||||
ssa_fprintf(f, " <%td x i32> <", sv->index_count);
|
||||
for (isize i = 0; i < sv->index_count; i++) {
|
||||
if (i > 0) {
|
||||
ssa_fprintf(f, ", ");
|
||||
}
|
||||
ssa_fprintf(f, "i32 %d", sv->indices[i]);
|
||||
}
|
||||
ssa_fprintf(f, ">");
|
||||
ssa_fprintf(f, "\n");
|
||||
} break;
|
||||
|
||||
|
||||
default: {
|
||||
GB_PANIC("<unknown instr> %d\n", instr->kind);
|
||||
|
||||
Reference in New Issue
Block a user