Browse Source

Remove unused lbDefer kind

gingerBill 3 years ago
parent
commit
79f32d7b71
2 changed files with 0 additions and 7 deletions
  1. 0 3
      src/llvm_backend.hpp
  2. 0 4
      src/llvm_backend_stmt.cpp

+ 0 - 3
src/llvm_backend.hpp

@@ -204,7 +204,6 @@ enum lbDeferExitKind {
 
 enum lbDeferKind {
 	lbDefer_Node,
-	lbDefer_Instr,
 	lbDefer_Proc,
 };
 
@@ -215,8 +214,6 @@ struct lbDefer {
 	lbBlock *   block;
 	union {
 		Ast *stmt;
-		// NOTE(bill): 'instr' will be copied every time to create a new one
-		lbValue instr;
 		struct {
 			lbValue deferred;
 			Array<lbValue> result_as_args;

+ 0 - 4
src/llvm_backend_stmt.cpp

@@ -2172,10 +2172,6 @@ void lb_build_defer_stmt(lbProcedure *p, lbDefer const &d) {
 	lb_start_block(p, b);
 	if (d.kind == lbDefer_Node) {
 		lb_build_stmt(p, d.stmt);
-	} else if (d.kind == lbDefer_Instr) {
-		// NOTE(bill): Need to make a new copy
-		LLVMValueRef instr = LLVMInstructionClone(d.instr.value);
-		LLVMInsertIntoBuilder(p->builder, instr);
 	} else if (d.kind == lbDefer_Proc) {
 		lb_emit_call(p, d.proc.deferred, d.proc.result_as_args);
 	}