aboutsummaryrefslogtreecommitdiff
path: root/src/Assembly/StringConversion.v
diff options
context:
space:
mode:
Diffstat (limited to 'src/Assembly/StringConversion.v')
-rw-r--r--src/Assembly/StringConversion.v10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/Assembly/StringConversion.v b/src/Assembly/StringConversion.v
index 66a83cfa3..9f3908a26 100644
--- a/src/Assembly/StringConversion.v
+++ b/src/Assembly/StringConversion.v
@@ -127,7 +127,13 @@ Module StringConversion <: Conversion Qhasm QhasmString.
end.
Definition operationToString (op: Operation): option string :=
- let f := fun x => if (Nat.eq_dec x 32) then "32" else "64" in
+ let f := fun x => (
+ if (Nat.eq_dec x 32)
+ then "32"
+ else if (Nat.eq_dec x 64)
+ then "64"
+ else "128") in
+
match op with
| IOpConst n o r c =>
r ++ " " ++ o ++ "= " ++ c
@@ -140,7 +146,7 @@ Module StringConversion <: Conversion Qhasm QhasmString.
| DOp n o a b x =>
match x with
| Some r =>
- "inline " ++ r ++ " " ++ a ++ " " ++ o ++ "= " ++ b
+ "(int" ++ (f (2 * n)) ++ ") " ++ r ++ " " ++ a ++ " " ++ o ++ "= " ++ b
| None => a ++ " " ++ o ++ "= " ++ b
end
| COp n o a b =>