diff options
author | Vladimir Azarov <avm@intermediate-node.net> | 2025-08-10 19:47:28 +0200 |
---|---|---|
committer | Vladimir Azarov <avm@intermediate-node.net> | 2025-08-10 19:47:28 +0200 |
commit | 413136926c66e97b4dd137b354665e5ae4ebb89e (patch) | |
tree | 812f116a140cc12fb7ae400f24dd3e27598e1b22 /parser.fun | |
parent | 9edb2b8dbd99636cf2d98d3253a0316f74720894 (diff) |
Instruction selection finish
Diffstat (limited to 'parser.fun')
-rw-r--r-- | parser.fun | 15 |
1 files changed, 4 insertions, 11 deletions
@@ -1993,10 +1993,10 @@ functor Parser(structure Tree: TREE; structure P: PPC; and extz w fromSize = let - val minus1 = Word64.notb (Word64.fromInt 0) - val mask = Word64.>> (minus1, 0w64 - fromSize * 0w8) + open Word + val mask = >> (~ 0w1, 0w64 - fromSize * 0w8) - val res = Word64.andb (mask, w) + val res = andb (mask, w) in res end @@ -3253,16 +3253,9 @@ functor Parser(structure Tree: TREE; structure P: PPC; ) end - fun makeDivBy8 v = - let - open Word - in - (v + 0w7) div 0w8 * 0w8 - end - fun registerLayout layout t toplev = let - val size = makeDivBy8 $ sizeOfType t + val size = sizeOfType t in D.pushAndGetId iniLayouts (toplev, size, layout) end |