summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lynagh <igloo@earth.li>2012-02-24 01:49:41 +0000
committerIan Lynagh <igloo@earth.li>2012-02-24 01:49:41 +0000
commit16d8cddd359ea39355418528604ceac5493aaa52 (patch)
tree29be3aa710f54d0c372f72f18fee65fb86fbf297
parentd16c68110cc2bbb9aaa47a6ac11ed4e57527646d (diff)
downloadhaskell-16d8cddd359ea39355418528604ceac5493aaa52.tar.gz
Fix generic 2-word-multiply
-rw-r--r--compiler/codeGen/CgPrimOp.hs6
1 files changed, 3 insertions, 3 deletions
diff --git a/compiler/codeGen/CgPrimOp.hs b/compiler/codeGen/CgPrimOp.hs
index c23608de36..2fad514096 100644
--- a/compiler/codeGen/CgPrimOp.hs
+++ b/compiler/codeGen/CgPrimOp.hs
@@ -530,9 +530,9 @@ emitPrimOp [res_h, res_l] WordMul2Op [arg_x, arg_y] _
(toTopHalf (CmmReg r))),
CmmAssign (CmmLocal res_h)
(sum [mul (topHalf arg_x) (topHalf arg_y),
- bottomHalf (CmmReg xhyl),
- bottomHalf (CmmReg xlyh),
- topHalf (CmmReg r)])]
+ topHalf (CmmReg xhyl),
+ topHalf (CmmReg xlyh),
+ topHalf (CmmReg r)])]
where topHalf x = CmmMachOp (MO_U_Shr wordWidth) [x, hww]
toTopHalf x = CmmMachOp (MO_Shl wordWidth) [x, hww]
bottomHalf x = CmmMachOp (MO_And wordWidth) [x, hwm]