Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Ledest:erlang:26
erlang
1052-erts-Change-arity-type-back-to-Uint.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 1052-erts-Change-arity-type-back-to-Uint.patch of Package erlang
From 2a92f68dbd896f083cbd200242e09ee28f75ff68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20H=C3=B6gberg?= <john@erlang.org> Date: Mon, 22 Apr 2024 10:25:37 +0200 Subject: [PATCH] erts: Change arity type back to Uint op_i_func_info_IaaI, and perhaps a few others, indirectly rely on the arity being stored as a word. Since declaring the field as a byte doesn't actually save anything because of tail padding, we'll change it back to `Uint`. --- erts/emulator/beam/code_ix.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/erts/emulator/beam/code_ix.h b/erts/emulator/beam/code_ix.h index 6298cd450b..114a71d234 100644 --- a/erts/emulator/beam/code_ix.h +++ b/erts/emulator/beam/code_ix.h @@ -87,7 +87,11 @@ typedef unsigned ErtsCodeIndex; typedef struct ErtsCodeMFA_ { Eterm module; Eterm function; - byte arity; + + /* This is technically a byte, but the interpreter needs this to be a word + * for argument packing to work properly, and declaring it as a byte won't + * save any space due to tail padding. */ + Uint arity; } ErtsCodeMFA; /* -- 2.35.3
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor