[erlang-patches] Patch for binary pattern matching of floats with HiPE
Henrik Nord
henrik@REDACTED
Mon Sep 5 12:14:49 CEST 2011
On 09/03/2011 08:06 PM, Paul Guyot wrote:
> Hello,
>
> HiPE generates bad code for a pattern matching of a float with a variable size length such as :
> <<F:S/float>>
>
> The following function always fail when compiled natively and behaves as expected with BEAM:
>
> bin_to_float(B,S) ->
> <<F:S/float>> = B,
> F.
>
> Judging from the almost identical code for integers, this obviously is a typo. I guess both code could be factorized, although I do not know what the policy is for duplicate code in HiPE (it's just about 14x2 lines).
>
> The following commit fixes this bug. Also, a test is obvious to implement and I wish HiPE tests were open source, so we could enrich them.
>
> https://github.com/pguyot/otp/commit/79e0c0345539624ed8bdcea2450dc2252f8375e8
> git fetch git://github.com/pguyot/otp.git fix-hipe-bs_get_float2
>
> Regards,
>
> Paul
Hi
I will include this in 'pu' and aim for fast graduation
Thank you for the contribution!
--
/Henrik Nord Erlang/OTP
More information about the erlang-patches
mailing list