aboutsummaryrefslogtreecommitdiffstats
path: root/erts/configure.in
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2019-03-11 13:15:02 +0100
committerBjörn Gustavsson <[email protected]>2019-03-20 16:19:30 +0100
commit4e0430638635083c199f81375a6c14f2ffb726fb (patch)
treefeaa70c8e46e8a82469ff10a237c336b905d4437 /erts/configure.in
parent0ffc8346553a5fc9322a75d4d8be5417dad67f29 (diff)
downloadotp-4e0430638635083c199f81375a6c14f2ffb726fb.tar.gz
otp-4e0430638635083c199f81375a6c14f2ffb726fb.tar.bz2
otp-4e0430638635083c199f81375a6c14f2ffb726fb.zip
HiPE: Don't fail the compilation for unimplemented instructions
Diffstat (limited to 'erts/configure.in')
-rw-r--r--erts/configure.in26
1 files changed, 26 insertions, 0 deletions
diff --git a/erts/configure.in b/erts/configure.in
index b070ad0649..5f969a0a8b 100644
--- a/erts/configure.in
+++ b/erts/configure.in
@@ -2783,6 +2783,32 @@ AC_SUBST(HIPE_ENABLED)
NATIVE_LIBS_ENABLED=
if test X${enable_native_libs} = Xyes -a X${HIPE_ENABLED} = Xyes; then
NATIVE_LIBS_ENABLED=yes
+ cat >> $ERL_TOP/erts/CONF_INFO <<EOF
+
+ WARNING: In OTP 22, HiPE (the native code compiler) is
+ not fully functional. The reasons for this are:
+
+ 1. There are new BEAM instructions for binary
+ matching that the HiPE native code compiler does not
+ support.
+
+ 2. The new optimizations in the Erlang compiler create
+ new combination of instructions that HiPE currently
+ does not handle correctly.
+
+ If erlc is invoked like so:
+
+ erlc +native some_file.erl
+
+ or like so:
+
+ erlc +native some_file.beam
+
+ and if any of the new binary matching instructions
+ are used, the compiler will issue a warning and
+ produce a BEAM file without native code.
+
+EOF
fi
AC_SUBST(NATIVE_LIBS_ENABLED)