.init stub creation doesn't need a jmp + .align to reach a branch target,
authorderaadt <deraadt@openbsd.org>
Wed, 28 Jun 2017 13:34:50 +0000 (13:34 +0000)
committerderaadt <deraadt@openbsd.org>
Wed, 28 Jun 2017 13:34:50 +0000 (13:34 +0000)
just fall into the code.  The .align created a FILL zone in the .init section,
which on i386 was filled with a NOP-sled, something we want to get away
from.
discussed with kettenis and tom

lib/libcrypto/perlasm/x86gas.pl

index 84d24ed..c21cda9 100644 (file)
@@ -221,9 +221,6 @@ sub ::initseg
 PIC_PROLOGUE
        call    PIC_PLT($f)
 PIC_EPILOGUE
-       jmp     .Linitalign
-.align $align
-.Linitalign:
 ___
     } elsif ($::android)
     {  $initseg.=<<___;