aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjackbackrack2015-04-26 14:43:14 -0700
committerjackbackrack2015-04-26 14:43:14 -0700
commit009d3fb82b999e8ddec05a6ea7482481ac6c1e14 (patch)
tree75a3324c1c6b9783064b8f61b5167c4459a5831e /src
parenta94d9405a2cce13a809a9590345a75136db98108 (diff)
parent48cb328f0bbae65800c733f4647d699db968b696 (diff)
merge
Diffstat (limited to 'src')
-rw-r--r--src/main/stanza/primop.stanza6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/main/stanza/primop.stanza b/src/main/stanza/primop.stanza
index e88a6b8e..455da396 100644
--- a/src/main/stanza/primop.stanza
+++ b/src/main/stanza/primop.stanza
@@ -272,7 +272,7 @@ public defn primop-gen-constraints (e:DoPrim,v:Vector<WGeq>) -> Type :
; new-width(PlusWidth(width!(l[0]),width!(l[1])))
println-all-debug(["Looking at " op(e) " with inputs " args(e)])
- val all-args-not-equal = list(MUX-UU-OP,MUX-SS-OP,CONCAT-OP)
+ val all-args-not-equal = to-list([MUX-UU-OP,MUX-SS-OP,CONCAT-OP,BIT-AND-OP,BIT-NOT-OP,BIT-OR-OP,BIT-XOR-OP,BIT-AND-REDUCE-OP,BIT-OR-REDUCE-OP,BIT-XOR-REDUCE-OP,AS-UINT-U-OP,AS-UINT-S-OP,AS-SINT-U-OP,AS-SINT-S-OP])
;val consts-gte-args = list(PAD-U-OP,PAD-S-OP)
@@ -327,8 +327,8 @@ public defn primop-gen-constraints (e:DoPrim,v:Vector<WGeq>) -> Type :
NEQUAL-SS-OP : IntWidth(1)
PAD-U-OP : IntWidth(consts(e)[0])
PAD-S-OP : IntWidth(consts(e)[0])
- NEG-U-OP : IntWidth(1)
- NEG-S-OP : IntWidth(1)
+ NEG-U-OP : PlusWidth(max-args-w,IntWidth(1))
+ NEG-S-OP : PlusWidth(max-args-w,IntWidth(1))
SHIFT-LEFT-U-OP : PlusWidth(max-args-w,IntWidth(consts(e)[0]))
SHIFT-LEFT-S-OP : PlusWidth(max-args-w,IntWidth(consts(e)[0]))
SHIFT-RIGHT-U-OP : MinusWidth(max-args-w,IntWidth(consts(e)[0]))