diff options
author | Quentin Carbonneaux <quentin.carbonneaux@yale.edu> | 2016-03-21 13:55:25 -0400 |
---|---|---|
committer | Quentin Carbonneaux <quentin.carbonneaux@yale.edu> | 2016-03-21 13:55:25 -0400 |
commit | 453baf68e02f985a7400207d133fff7b47440f22 (patch) | |
tree | 8ea476332beaf9cbdb94409cdbee5d76b5ce50a0 /lisc | |
parent | 58e0505068d8d4decf9db2f96cb94743002b97c9 (diff) | |
download | roux-453baf68e02f985a7400207d133fff7b47440f22.tar.gz |
fix bug in IL checking
Diffstat (limited to 'lisc')
-rw-r--r-- | lisc/tools/abi.ml | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lisc/tools/abi.ml b/lisc/tools/abi.ml index 7810e41..2257aa2 100644 --- a/lisc/tools/abi.ml +++ b/lisc/tools/abi.ml @@ -379,8 +379,12 @@ module OutIL = struct siter oc name (s, ts) begin fun id' addr (TB (b, tb)) -> let tval = tmp () in - fprintf oc "\t%s =%s load %s\n" - tval (btype b) addr; + let lsuffix = + if AB b = AB Char then "sb" else + if AB b = AB Short then "sh" else + "" in + fprintf oc "\t%s =%s load%s %s\n" + tval (btype b) lsuffix addr; bcheck (100*id + id'+1) tval (b, tb); end; () |