aboutsummaryrefslogtreecommitdiff
path: root/src/codegen/print_llvm.cpp
diff options
context:
space:
mode:
authorgingerBill <ginger.bill.22@gmail.com>2016-08-16 18:53:02 +0100
committergingerBill <ginger.bill.22@gmail.com>2016-08-16 18:53:02 +0100
commit2d49a615630eb27d95c7cde67722f419a1977996 (patch)
tree6ebcd71dffe4a7fc8addbd5c0a88b439b0be96f6 /src/codegen/print_llvm.cpp
parent5da6b74567793e15cf651be50edbfe407f42a714 (diff)
defer statements
Diffstat (limited to 'src/codegen/print_llvm.cpp')
-rw-r--r--src/codegen/print_llvm.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/codegen/print_llvm.cpp b/src/codegen/print_llvm.cpp
index 80bc320cb..36b9156de 100644
--- a/src/codegen/print_llvm.cpp
+++ b/src/codegen/print_llvm.cpp
@@ -274,6 +274,7 @@ void ssa_print_instr(gbFile *f, ssaModule *m, ssaValue *value) {
ssaInstr *instr = &value->instr;
ssa_fprintf(f, "\t");
+
switch (instr->kind) {
case ssaInstr_StartupRuntime: {
ssa_fprintf(f, "call void @" SSA_STARTUP_RUNTIME_PROC_NAME "()\n");
@@ -354,7 +355,11 @@ void ssa_print_instr(gbFile *f, ssaModule *m, ssaValue *value) {
ssa_fprintf(f, ", %d\n", instr->extract_value.index);
} break;
- case ssaInstr_Br: {
+ case ssaInstr_NoOp: {;
+ ssa_fprintf(f, "%%%d = add i32 0, 0\n", value->id);
+ } break;
+
+ case ssaInstr_Br: {;
ssa_fprintf(f, "br ");
if (instr->br.cond != NULL) {
ssa_print_type(f, m->sizes, t_bool);