aboutsummaryrefslogtreecommitdiffstats
path: root/lib/hipe
diff options
context:
space:
mode:
authorMagnus Lång <[email protected]>2016-10-10 15:32:18 +0200
committerMagnus Lång <[email protected]>2016-11-16 17:22:04 +0100
commite1b9f467fbdb09aac9871e6064b67f87c8e59a47 (patch)
treecc65c7ca1d60323b60fd21e615d5dbf1bfcdd741 /lib/hipe
parent6b7c73196936d94f2a03a465c0954fc9dbf35974 (diff)
downloadotp-e1b9f467fbdb09aac9871e6064b67f87c8e59a47.tar.gz
otp-e1b9f467fbdb09aac9871e6064b67f87c8e59a47.tar.bz2
otp-e1b9f467fbdb09aac9871e6064b67f87c8e59a47.zip
hipe: Make realloc_binary fast case true branch
This makes the fast case a fallthrough and the slow case a branch, hopefully improving cache locality.
Diffstat (limited to 'lib/hipe')
-rw-r--r--lib/hipe/rtl/hipe_rtl_binary_construct.erl4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/hipe/rtl/hipe_rtl_binary_construct.erl b/lib/hipe/rtl/hipe_rtl_binary_construct.erl
index 2922972085..baf5f7d27a 100644
--- a/lib/hipe/rtl/hipe_rtl_binary_construct.erl
+++ b/lib/hipe/rtl/hipe_rtl_binary_construct.erl
@@ -429,8 +429,8 @@ realloc_binary(SizeReg, ProcBin, Base) ->
hipe_tagscheme:set_field_from_term(ProcBinFlagsTag, ProcBin, Flags),
hipe_tagscheme:get_field_from_term(ProcBinValTag, ProcBin, BinPointer),
hipe_tagscheme:get_field_from_pointer(BinOrigSizeTag, BinPointer, OrigSize),
- hipe_rtl:mk_branch(OrigSize, 'ltu', ResultingSize,
- ReallocLblName, NoReallocLblName),
+ hipe_rtl:mk_branch(OrigSize, 'geu', ResultingSize, NoReallocLblName,
+ ReallocLblName),
NoReallocLbl,
hipe_tagscheme:get_field_from_term(ProcBinBytesTag, ProcBin, Base),
hipe_rtl:mk_goto(ContLblName),