diff options
| author | Michael Williamson <mike@zwobble.org> | 2025-02-02 19:57:08 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2025-02-02 20:13:20 +0000 |
| commit | 67cfee13acaea27b5d4daf5b58ade49d9a14363b (patch) | |
| tree | fb283fe6ae2a5918e74b1dc6ba6af1b9bb77e283 /src/main/java | |
| parent | c318dac1f71e09e6baa2b090264c221f45021868 (diff) | |
Generate Shid instructions for int multiply
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java | 1 | ||||
| -rw-r--r-- | src/main/java/org/shedlang/compiler/shid/ShidCodeGen.java | 4 |
2 files changed, 3 insertions, 2 deletions
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; |
