develooper Front page | perl.perl5.porters | Postings from April 2020

about commit "Revert "croak_memory_wrap is an inline function.""(khw)

Thread Next
From:
bulk88
Date:
April 29, 2020 01:19
Subject:
about commit "Revert "croak_memory_wrap is an inline function.""(khw)
Message ID:
20200429011948.14287.qmail@lists-nntp.develooper.com
https://perl5.git.perl.org/perl5.git/commitdiff/d68c938a1e6c6b4bfe907decbb4929780ee06eae

Why was this done? Perl_croak_memory_wrap is supposed to be a static 
linkage, not globally visible C function, in every perl .o file that the 
CC/linker should toss the static func if its not used. I wanted to avoid 
the PLT/GOT runtime C symbol substitution/LDPRELOAD mechanism and let 
the CC turn Perl_croak_memory_wrap into a single conditional jump 
(offset from current instruction pointer), with no return and no C stack 
entry, jump instruction instead of

call get_EIP //x86 32 only
mov eax, *(eax_aka_eip+offset into PLT)
call eax

Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About