File 1022-ops.tab-Remove-unnecessary-and-unreachable-transform.patch of Package erlang

From 8424ca411c7e2ab4f99edbd2063912ffddb9018b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?= <bjorn@erlang.org>
Date: Sat, 13 May 2023 12:49:26 +0200
Subject: [PATCH 2/5] ops.tab: Remove unnecessary and unreachable transformtion

---
 erts/emulator/beam/jit/arm/ops.tab |  9 ---------
 erts/emulator/beam/jit/x86/ops.tab | 19 -------------------
 2 files changed, 28 deletions(-)

diff --git a/erts/emulator/beam/jit/arm/ops.tab b/erts/emulator/beam/jit/arm/ops.tab
index e154fb36d1..3e1317bb9d 100644
--- a/erts/emulator/beam/jit/arm/ops.tab
+++ b/erts/emulator/beam/jit/arm/ops.tab
@@ -1457,15 +1457,6 @@ i_recv_set
 build_stacktrace
 raw_raise
 
-#
-# Specialized move instructions. Since they don't require a second
-# instruction, we have intentionally placed them after any other
-# transformation rules that starts with a move instruction in order to
-# produce better code for the transformation engine.
-#
-
-move n D=y => init D
-
 #
 # OTP 24
 #
diff --git a/erts/emulator/beam/jit/x86/ops.tab b/erts/emulator/beam/jit/x86/ops.tab
index 12be270ff9..042b66dd53 100644
--- a/erts/emulator/beam/jit/x86/ops.tab
+++ b/erts/emulator/beam/jit/x86/ops.tab
@@ -1373,16 +1373,6 @@ i_bxor j s s d
 
 i_bnot j s d
 
-#
-# Old guard BIFs that creates heap fragments are no longer allowed.
-#
-bif1 Fail u$bif:erlang:length/1 s d => too_old_compiler
-bif1 Fail u$bif:erlang:size/1 s d => too_old_compiler
-bif1 Fail u$bif:erlang:abs/1 s d => too_old_compiler
-bif1 Fail u$bif:erlang:float/1 s d => too_old_compiler
-bif1 Fail u$bif:erlang:round/1 s d => too_old_compiler
-bif1 Fail u$bif:erlang:trunc/1 s d => too_old_compiler
-
 #
 # Handle the length/1 guard BIF specially to make it trappable.
 #
@@ -1440,15 +1430,6 @@ i_recv_set
 build_stacktrace
 raw_raise
 
-#
-# Specialized move instructions. Since they don't require a second
-# instruction, we have intentionally placed them after any other
-# transformation rules that starts with a move instruction in order to
-# produce better code for the transformation engine.
-#
-
-move n D=y => init D
-
 #
 # OTP 24
 #
-- 
2.35.3

openSUSE Build Service is sponsored by