diff options
| author | Ginger Bill <bill@gingerbill.org> | 2016-09-07 14:03:17 +0100 |
|---|---|---|
| committer | Ginger Bill <bill@gingerbill.org> | 2016-09-07 14:03:17 +0100 |
| commit | 61fcfd6f3d3c6cffd7e610abab83445b4cd1950d (patch) | |
| tree | f61e6d7be5f13c79ab3d98c76fcb836901b3c25e /src/codegen/print_llvm.cpp | |
| parent | 455820fc8438ab72c963ef354b9e32f6e5af1e65 (diff) | |
Begin Type_Info
Missing stuff in records, procedures, and tuples
Diffstat (limited to 'src/codegen/print_llvm.cpp')
| -rw-r--r-- | src/codegen/print_llvm.cpp | 20 |
1 files changed, 4 insertions, 16 deletions
diff --git a/src/codegen/print_llvm.cpp b/src/codegen/print_llvm.cpp index fffdee805..c8dff6d6b 100644 --- a/src/codegen/print_llvm.cpp +++ b/src/codegen/print_llvm.cpp @@ -314,7 +314,7 @@ void ssa_print_exact_value(ssaFileBuffer *f, ssaModule *m, ExactValue value, Typ void ssa_print_block_name(ssaFileBuffer *f, ssaBlock *b) { ssa_print_escape_string(f, b->label, false); - ssa_fprintf(f, "..%d", b->id); + ssa_fprintf(f, "-%d", b->id); } void ssa_print_value(ssaFileBuffer *f, ssaModule *m, ssaValue *value, Type *type_hint) { @@ -352,7 +352,9 @@ void ssa_print_instr(ssaFileBuffer *f, ssaModule *m, ssaValue *value) { switch (instr->kind) { case ssaInstr_StartupRuntime: { - ssa_fprintf(f, "call void @." SSA_STARTUP_RUNTIME_PROC_NAME "()\n"); + ssa_fprintf(f, "call void "); + ssa_print_encoded_global(f, make_string(SSA_STARTUP_RUNTIME_PROC_NAME)); + ssa_fprintf(f, "()\n"); } break; case ssaInstr_Comment: @@ -642,20 +644,6 @@ void ssa_print_instr(ssaFileBuffer *f, ssaModule *m, ssaValue *value) { ssa_fprintf(f, "\n"); } break; - case ssaInstr_MemCopy: { - ssa_fprintf(f, "call void @.memory_move"); - ssa_fprintf(f, "(i8* "); - ssa_print_value(f, m, instr->CopyMemory.dst, t_rawptr); - ssa_fprintf(f, ", i8* "); - ssa_print_value(f, m, instr->CopyMemory.src, t_rawptr); - ssa_fprintf(f, ", "); - ssa_print_type(f, m->sizes, t_int); - ssa_fprintf(f, " "); - ssa_print_value(f, m, instr->CopyMemory.len, t_int); - ssa_fprintf(f, ")\n"); - } break; - - case ssaInstr_ExtractElement: { Type *vt = ssa_type(instr->ExtractElement.vector); ssa_fprintf(f, "%%%d = extractelement ", value->id); |