]> de.git.xonotic.org Git - xonotic/gmqcc.git/blobdiff - ir.c
Make log use the slightly improved algorithm for small values.
[xonotic/gmqcc.git] / ir.c
diff --git a/ir.c b/ir.c
index fbb79f2e6cd0e03005cb7c5167fe229279e485bc..c935214cb14cd05fd17d66396b107a059d384732 100644 (file)
--- a/ir.c
+++ b/ir.c
@@ -1586,10 +1586,6 @@ bool ir_block_create_return(ir_block *self, lex_ctx_t ctx, ir_value *v)
 
     self->final = true;
 
-    /* can eliminate the return instructions for accumulation */
-    if (self->owner->flags & IR_FLAG_ACCUMULATE)
-        return true;
-
     self->is_return = true;
     in = ir_instr_new(ctx, self, INSTR_RETURN);
     if (!in)
@@ -1896,7 +1892,7 @@ ir_value* ir_block_create_unary(ir_block *self, lex_ctx_t ctx,
         case VINSTR_NEG_F:
             return ir_block_create_general_instr(self, ctx, label, INSTR_SUB_F, NULL, operand, ot);
         case VINSTR_NEG_V:
-            return ir_block_create_general_instr(self, ctx, label, INSTR_SUB_V, NULL, operand, ot);
+            return ir_block_create_general_instr(self, ctx, label, INSTR_SUB_V, NULL, operand, TYPE_VECTOR);
 
         default:
             ot = operand->vtype;