summary refs log tree commit diff
path: root/lisc/tools
diff options
context:
space:
mode:
authorQuentin Carbonneaux <quentin.carbonneaux@yale.edu>2016-03-21 13:55:25 -0400
committerQuentin Carbonneaux <quentin.carbonneaux@yale.edu>2016-03-21 13:55:25 -0400
commit453baf68e02f985a7400207d133fff7b47440f22 (patch)
tree8ea476332beaf9cbdb94409cdbee5d76b5ce50a0 /lisc/tools
parent58e0505068d8d4decf9db2f96cb94743002b97c9 (diff)
downloadroux-453baf68e02f985a7400207d133fff7b47440f22.tar.gz
fix bug in IL checking
Diffstat (limited to 'lisc/tools')
-rw-r--r--lisc/tools/abi.ml8
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;
       ()