summaryrefslogtreecommitdiff
path: root/src/main/java/com/seaofnodes
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2025-02-07 09:12:14 -0800
committerCliff Click <cliffc@acm.org>2025-02-07 09:12:14 -0800
commited22ac30eaf0dd2d0347637ac4f8d598c087fab1 (patch)
tree133bf327e982d50adbc95739122f52db85ba0058 /src/main/java/com/seaofnodes
parent8818754a41d12063ed5ff68a47a0adf2b80c24b7 (diff)
downloadSimple-ed22ac30eaf0dd2d0347637ac4f8d598c087fab1.tar.gz
Simple-ed22ac30eaf0dd2d0347637ac4f8d598c087fab1.zip
Chapter 20: Graph Coloring Register Allocationlinear-chapter20
Diffstat (limited to 'src/main/java/com/seaofnodes')
-rw-r--r--src/main/java/com/seaofnodes/simple/node/LoadNode.java8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/main/java/com/seaofnodes/simple/node/LoadNode.java b/src/main/java/com/seaofnodes/simple/node/LoadNode.java
index 4004f87f..6c74042b 100644
--- a/src/main/java/com/seaofnodes/simple/node/LoadNode.java
+++ b/src/main/java/com/seaofnodes/simple/node/LoadNode.java
@@ -201,10 +201,10 @@ public class LoadNode extends MemOpNode {
return new AndNode(null,val,con(ti._max));
// Signed extension
int shift = Long.numberOfLeadingZeros(ti._max)-1;
- if( shift==0 )
- return val;
Node shf = con(shift);
- Node shl = new ShlNode(null,val,shf.keep()).peephole();
- return new SarNode(null,shl,shf.unkeep());
+ if( shf._type==TypeInteger.ZERO )
+ return val;
+ //return peep(new SarNode(null,peep(new ShlNode(null,val,shf.keep())),shf.unkeep()));
+ throw Utils.TODO();
}
}