From 7c7ba7191a3932e737fa81fd0166df1c637d4b31 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Fri, 9 Mar 2018 11:01:07 +0100 Subject: Update release notes --- lib/hipe/doc/src/notes.xml | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'lib/hipe') diff --git a/lib/hipe/doc/src/notes.xml b/lib/hipe/doc/src/notes.xml index bad0c254ce..c190a89260 100644 --- a/lib/hipe/doc/src/notes.xml +++ b/lib/hipe/doc/src/notes.xml @@ -31,6 +31,45 @@

This document describes the changes made to HiPE.

+
Hipe 3.17.1 + +
Fixed Bugs and Malfunctions + + +

+ Fix HiPE bug for binary constructs like + <<X/utf8>> which could in rare cases + cause faulty results or VM crash.

+

+ This fix affects both the hipe compiler and + erts runtime in an incompatible way. Old + hipe compiled files need to be recompiled to load and run + properly as native.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14850 Aux Id: PR-1664

+
+ +

The BEAM compiler chooses not to perform tailcall + optimisations for some calls in tail position, for + example to some built-in functions. However, when the + ErLLVM HiPE backend is used, LLVM may choose to perform + tailcall optimisation on these calls, breaking the + expected semantics.

+

To preserve the precise semantics exhibited by BEAM, + the 'notail' marker, present in LLVM since version 3.8, + is added to call instructions that BEAM has not turned + into tail calls, which inhibits LLVM from performing + tail-call optimisation in turn.

+

+ Own Id: OTP-14886

+
+
+
+ +
+
Hipe 3.17
Fixed Bugs and Malfunctions -- cgit v1.2.3