File 0120-Add-missing-annotations-in-instrs.tab.patch of Package erlang

From a47e013421d3c12198f019cbd66a88a6d356802d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Muska=C5=82a?= <michal@muskala.eu>
Date: Thu, 13 Dec 2018 16:13:09 +0100
Subject: [PATCH] Add missing annotations in instrs.tab

Dispatching a function and return never use the next instruction.
It's unlikely for raw_raise to use the next instruction.
---
 erts/emulator/beam/instrs.tab | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/erts/emulator/beam/instrs.tab b/erts/emulator/beam/instrs.tab
index da1dd3dc45..df60e889f3 100644
--- a/erts/emulator/beam/instrs.tab
+++ b/erts/emulator/beam/instrs.tab
@@ -238,6 +238,7 @@ HANDLE_APPLY_FUN_ERROR() {
 }
 
 DISPATCH_FUN(I) {
+    //| -no_next
     SET_I($I);
     Dispatchfun();
 }
@@ -299,6 +300,7 @@ i_call_fun_last(Fun, Deallocate) {
 }
 
 return() {
+    //| -no_next
     SET_I(c_p->cp);
     DTRACE_RETURN_FROM_PC(c_p);
 
@@ -951,6 +953,7 @@ build_stacktrace() {
 }
 
 raw_raise() {
+    //| -no_prefetch
     Eterm class = x(0);
     Eterm value = x(1);
     Eterm stacktrace = x(2);
-- 
2.16.4

openSUSE Build Service is sponsored by