diff options
Diffstat (limited to 'bfd/elf-linker-x86.h')
-rw-r--r-- | bfd/elf-linker-x86.h | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/bfd/elf-linker-x86.h b/bfd/elf-linker-x86.h index 77e8196..c0f8fab 100644 --- a/bfd/elf-linker-x86.h +++ b/bfd/elf-linker-x86.h @@ -18,14 +18,14 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -/* Missing IBT and SHSTK property report control. */ -enum elf_x86_cet_report +/* Missing IBT, SHSTK and LAM property report control. */ +enum elf_x86_prop_report { - cet_report_none = 0, /* Do nothing. */ - cet_report_warning = 1 << 0, /* Issue a warning. */ - cet_report_error = 1 << 1, /* Issue an error. */ - cet_report_ibt = 1 << 2, /* Report missing IBT property. */ - cet_report_shstk = 1 << 3 /* Report missing SHSTK property. */ + prop_report_none = 0, /* Do nothing. */ + prop_report_warning = 1 << 0, /* Issue a warning. */ + prop_report_error = 1 << 1, /* Issue an error. */ + prop_report_ibt = 1 << 2, /* Report missing IBT property. */ + prop_report_shstk = 1 << 3 /* Report missing SHSTK property. */ }; /* Used to pass x86-specific linker options from ld to bfd. */ @@ -43,6 +43,12 @@ struct elf_linker_x86_params /* TRUE if GNU_PROPERTY_X86_FEATURE_1_SHSTK should be generated. */ unsigned int shstk: 1; + /* TRUE if GNU_PROPERTY_X86_FEATURE_1_LAM_U48 should be generated. */ + unsigned int lam_u48: 1; + + /* TRUE if GNU_PROPERTY_X86_FEATURE_1_LAM_U57 should be generated. */ + unsigned int lam_u57: 1; + /* TRUE if we shouldn't check relocation overflow. */ unsigned int no_reloc_overflow_check: 1; @@ -59,7 +65,13 @@ struct elf_linker_x86_params unsigned int isa_level; /* Report missing IBT and SHSTK properties. */ - enum elf_x86_cet_report cet_report; + enum elf_x86_prop_report cet_report; + + /* Report missing LAM_U48 property. */ + enum elf_x86_prop_report lam_u48_report; + + /* Report missing LAM_U57 property. */ + enum elf_x86_prop_report lam_u57_report; /* The 1-byte NOP for x86 call instruction. */ char call_nop_byte; |