From 67cfee13acaea27b5d4daf5b58ade49d9a14363b Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 2 Feb 2025 19:57:08 +0000 Subject: Generate Shid instructions for int multiply --- .../java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java | 1 + src/main/java/org/shedlang/compiler/shid/ShidCodeGen.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java b/src/main/java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java index d1f32073..1a53d9c5 100644 --- a/src/main/java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java +++ b/src/main/java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java @@ -10,6 +10,7 @@ public enum TypedBinaryOperator { INT_GREATER_THAN_OR_EQUAL(Types.BOOL), INT_LESS_THAN(Types.BOOL), INT_LESS_THAN_OR_EQUAL(Types.BOOL), + INT_MULTIPLY(Types.BOOL), INT_NOT_EQUAL(Types.BOOL), INT_SUB(Types.INT), STRING_ADD(Types.STRING); diff --git a/src/main/java/org/shedlang/compiler/shid/ShidCodeGen.java b/src/main/java/org/shedlang/compiler/shid/ShidCodeGen.java index 02838d99..78226cce 100644 --- a/src/main/java/org/shedlang/compiler/shid/ShidCodeGen.java +++ b/src/main/java/org/shedlang/compiler/shid/ShidCodeGen.java @@ -47,14 +47,14 @@ public class ShidCodeGen { new ShidIntLessThan(node.source()); case INT_LESS_THAN_OR_EQUAL -> new ShidIntLessThanOrEqual(node.source()); + case INT_MULTIPLY -> + new ShidIntMultiply(node.source()); case INT_NOT_EQUAL -> new ShidIntNotEqual(node.source()); case INT_SUB -> new ShidIntSub(node.source()); case STRING_ADD -> new ShidStringAdd(node.source()); - default -> - throw new UnsupportedOperationException("TODO"); }); return context; -- cgit v1.2.3