use INT3 instead of NOP for x86 binary padding
We should never end up executing the inter-function padding, so we are better off faulting than silently carrying on to whatever function happens to be next. Note that LLD will soon do this by default (although it currently pads with zeros). Reviewed by: dim, kib MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D10047
This commit is contained in:
parent
c547cbb49c
commit
bd4e40546c
@ -6,7 +6,7 @@ COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
|
||||
NONPAGED_TEXT_START_ADDR=0x08048000
|
||||
ARCH=i386
|
||||
MACHINE=
|
||||
NOP=0x90909090
|
||||
NOP=0xCCCCCCCC
|
||||
TEMPLATE_NAME=elf32
|
||||
GENERATE_SHLIB_SCRIPT=yes
|
||||
GENERATE_PIE_SCRIPT=yes
|
||||
|
@ -7,7 +7,7 @@ COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
|
||||
NONPAGED_TEXT_START_ADDR=0x400000
|
||||
ARCH="i386:x86-64"
|
||||
MACHINE=
|
||||
NOP=0x90909090
|
||||
NOP=0xCCCCCCCC
|
||||
TEMPLATE_NAME=elf32
|
||||
GENERATE_SHLIB_SCRIPT=yes
|
||||
GENERATE_PIE_SCRIPT=yes
|
||||
|
@ -56,7 +56,7 @@ SECTIONS
|
||||
.init :
|
||||
{
|
||||
KEEP (*(.init))
|
||||
} =0x90909090
|
||||
} =0xCCCCCCCC
|
||||
.plt : { *(.plt) }
|
||||
.text :
|
||||
{
|
||||
@ -64,11 +64,11 @@ SECTIONS
|
||||
KEEP (*(.text.*personality*))
|
||||
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||
*(.gnu.warning)
|
||||
} =0x90909090
|
||||
} =0xCCCCCCCC
|
||||
.fini :
|
||||
{
|
||||
KEEP (*(.fini))
|
||||
} =0x90909090
|
||||
} =0xCCCCCCCC
|
||||
PROVIDE (__etext = .);
|
||||
PROVIDE (_etext = .);
|
||||
PROVIDE (etext = .);
|
||||
|
@ -44,7 +44,7 @@ SECTIONS
|
||||
.init :
|
||||
{
|
||||
KEEP (*(.init))
|
||||
} =0x90909090
|
||||
} =0xCCCCCCCC
|
||||
.plt : { *(.plt) }
|
||||
.text :
|
||||
{
|
||||
@ -52,11 +52,11 @@ SECTIONS
|
||||
KEEP (*(.text.*personality*))
|
||||
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||
*(.gnu.warning)
|
||||
} =0x90909090
|
||||
} =0xCCCCCCCC
|
||||
.fini :
|
||||
{
|
||||
KEEP (*(.fini))
|
||||
} =0x90909090
|
||||
} =0xCCCCCCCC
|
||||
PROVIDE (__etext = .);
|
||||
PROVIDE (_etext = .);
|
||||
PROVIDE (etext = .);
|
||||
|
Loading…
Reference in New Issue
Block a user