aboutsummaryrefslogtreecommitdiffstats
path: root/lib/hipe/rtl
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2011-03-22 12:25:49 +0100
committerSverker Eriksson <[email protected]>2011-03-22 16:27:50 +0100
commitb715c077a88d5ba68e4e79b32c1c0de087234bbf (patch)
tree233c71e133e26a09bad32934b8bf47d95c947251 /lib/hipe/rtl
parentf861b4fdb3fd39e35f2951c53a73b30a98c7f973 (diff)
downloadotp-b715c077a88d5ba68e4e79b32c1c0de087234bbf.tar.gz
otp-b715c077a88d5ba68e4e79b32c1c0de087234bbf.tar.bz2
otp-b715c077a88d5ba68e4e79b32c1c0de087234bbf.zip
Fix hipe bug in convert_matchstate, bignum-padding one word too long
Diffstat (limited to 'lib/hipe/rtl')
-rw-r--r--lib/hipe/rtl/hipe_tagscheme.erl2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/hipe/rtl/hipe_tagscheme.erl b/lib/hipe/rtl/hipe_tagscheme.erl
index 5859c345d0..0cc6c2deec 100644
--- a/lib/hipe/rtl/hipe_tagscheme.erl
+++ b/lib/hipe/rtl/hipe_tagscheme.erl
@@ -1045,7 +1045,7 @@ convert_matchstate(Ms) ->
build_sub_binary(Ms, ByteSize, ByteOffset, BitSize, BitOffset,
hipe_rtl:mk_imm(0), Orig),
size_from_header(SizeInWords, Header),
- hipe_rtl:mk_alu(Hole, SizeInWords, sub, hipe_rtl:mk_imm(?SUB_BIN_WORDSIZE-1)),
+ hipe_rtl:mk_alu(Hole, SizeInWords, sub, hipe_rtl:mk_imm(?SUB_BIN_WORDSIZE)),
mk_var_header(BigIntHeader, Hole, ?TAG_HEADER_POS_BIG),
hipe_rtl:mk_store(Ms, hipe_rtl:mk_imm(?SUB_BIN_WORDSIZE*WordSize-?TAG_PRIMARY_BOXED),
BigIntHeader)].