From c2cec7cb7fef6df603dd10180de4d0bb715ad47e Mon Sep 17 00:00:00 2001 From: Cliff Click Date: Sat, 28 Dec 2024 16:39:00 -0800 Subject: New evaluator, more Compiler Driver cleanup More compiler driver cleanup: Stop only has Return inputs, never an expr. Drop extra lexical scope. Linker table moves to CodeGen. Replace evaluator with a simpler design; I was unable to get the current design to work with the other changes. Updates to old eval; proper idoms; forced type checks; extensions for Fun, Return, Call, CallEnd. Accessor find next control to execute. Accessor for deciding when its ok to optimize a Function/Return, Call/CallEnd, Stop, ScopeMin (merge) Add local scheduling pass. IRPrinter uses SB instead of StringBuilder Spelling SubF comment --- chapter16/src/main/java/com/seaofnodes/simple/node/SubFNode.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'chapter16/src') diff --git a/chapter16/src/main/java/com/seaofnodes/simple/node/SubFNode.java b/chapter16/src/main/java/com/seaofnodes/simple/node/SubFNode.java index 682930e0..b591718d 100644 --- a/chapter16/src/main/java/com/seaofnodes/simple/node/SubFNode.java +++ b/chapter16/src/main/java/com/seaofnodes/simple/node/SubFNode.java @@ -34,7 +34,7 @@ public class SubFNode extends Node { Node lhs = in(1); Type t2 = in(2)._type; - // Sub of 1. + // Sub of 0. if ( t2.isConstant() && t2 instanceof TypeFloat i && i.value()==0 ) return lhs; -- cgit v1.2.3