mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-27 12:03:41 +08:00
e8e10743f7
PR 30907
514 lines
14 KiB
C
514 lines
14 KiB
C
/* ldlex.h -
|
|
Copyright (C) 1991-2024 Free Software Foundation, Inc.
|
|
|
|
This file is part of the GNU Binutils.
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
|
|
MA 02110-1301, USA. */
|
|
|
|
#ifndef LDLEX_H
|
|
#define LDLEX_H
|
|
|
|
#include <stdio.h>
|
|
|
|
/* Codes used for the long options with no short synonyms. 150 isn't
|
|
special; it's just an arbitrary non-ASCII char value. */
|
|
enum option_values
|
|
{
|
|
OPTION_ASSERT = 150,
|
|
OPTION_CALL_SHARED,
|
|
OPTION_CREF,
|
|
OPTION_DEFSYM,
|
|
OPTION_DEMANGLE,
|
|
OPTION_DYNAMIC_LINKER,
|
|
OPTION_NO_DYNAMIC_LINKER,
|
|
OPTION_SYSROOT,
|
|
OPTION_OUT_IMPLIB,
|
|
OPTION_EB,
|
|
OPTION_EL,
|
|
OPTION_EMBEDDED_RELOCS,
|
|
OPTION_EXPORT_DYNAMIC,
|
|
OPTION_NO_EXPORT_DYNAMIC,
|
|
OPTION_HELP,
|
|
OPTION_IGNORE,
|
|
OPTION_MAP,
|
|
OPTION_NO_DEMANGLE,
|
|
OPTION_NO_KEEP_MEMORY,
|
|
OPTION_NO_WARN_MISMATCH,
|
|
OPTION_NO_WARN_SEARCH_MISMATCH,
|
|
OPTION_NOINHIBIT_EXEC,
|
|
OPTION_NON_SHARED,
|
|
OPTION_NO_WHOLE_ARCHIVE,
|
|
OPTION_OFORMAT,
|
|
OPTION_RELAX,
|
|
OPTION_NO_RELAX,
|
|
OPTION_NO_SYMBOLIC,
|
|
OPTION_RETAIN_SYMBOLS_FILE,
|
|
OPTION_RPATH,
|
|
OPTION_RPATH_LINK,
|
|
OPTION_SHARED,
|
|
OPTION_SONAME,
|
|
OPTION_SORT_COMMON,
|
|
OPTION_SORT_SECTION,
|
|
OPTION_SECTION_ORDERING_FILE,
|
|
OPTION_STATS,
|
|
OPTION_SYMBOLIC,
|
|
OPTION_SYMBOLIC_FUNCTIONS,
|
|
OPTION_TASK_LINK,
|
|
OPTION_TBSS,
|
|
OPTION_TDATA,
|
|
OPTION_TTEXT,
|
|
OPTION_TTEXT_SEGMENT,
|
|
OPTION_TRODATA_SEGMENT,
|
|
OPTION_TLDATA_SEGMENT,
|
|
OPTION_TRADITIONAL_FORMAT,
|
|
OPTION_UR,
|
|
OPTION_VERBOSE,
|
|
OPTION_VERSION,
|
|
OPTION_VERSION_SCRIPT,
|
|
OPTION_VERSION_EXPORTS_SECTION,
|
|
OPTION_DYNAMIC_LIST,
|
|
OPTION_DYNAMIC_LIST_CPP_NEW,
|
|
OPTION_DYNAMIC_LIST_CPP_TYPEINFO,
|
|
OPTION_DYNAMIC_LIST_DATA,
|
|
OPTION_EXPORT_DYNAMIC_SYMBOL,
|
|
OPTION_EXPORT_DYNAMIC_SYMBOL_LIST,
|
|
OPTION_WARN_COMMON,
|
|
OPTION_WARN_CONSTRUCTORS,
|
|
OPTION_WARN_FATAL,
|
|
OPTION_NO_WARN_FATAL,
|
|
OPTION_NO_WARNINGS,
|
|
OPTION_WARN_MULTIPLE_GP,
|
|
OPTION_WARN_ONCE,
|
|
OPTION_WARN_SECTION_ALIGN,
|
|
OPTION_SPLIT_BY_RELOC,
|
|
OPTION_SPLIT_BY_FILE ,
|
|
OPTION_WHOLE_ARCHIVE,
|
|
OPTION_ADD_DT_NEEDED_FOR_DYNAMIC,
|
|
OPTION_NO_ADD_DT_NEEDED_FOR_DYNAMIC,
|
|
OPTION_ADD_DT_NEEDED_FOR_REGULAR,
|
|
OPTION_NO_ADD_DT_NEEDED_FOR_REGULAR,
|
|
OPTION_WRAP,
|
|
OPTION_FORCE_EXE_SUFFIX,
|
|
OPTION_GC_SECTIONS,
|
|
OPTION_NO_GC_SECTIONS,
|
|
OPTION_PRINT_GC_SECTIONS,
|
|
OPTION_NO_PRINT_GC_SECTIONS,
|
|
OPTION_GC_KEEP_EXPORTED,
|
|
OPTION_HASH_SIZE,
|
|
OPTION_CHECK_SECTIONS,
|
|
OPTION_NO_CHECK_SECTIONS,
|
|
OPTION_NO_UNDEFINED,
|
|
OPTION_INIT,
|
|
OPTION_FINI,
|
|
OPTION_SECTION_START,
|
|
OPTION_UNIQUE,
|
|
OPTION_TARGET_HELP,
|
|
OPTION_ALLOW_SHLIB_UNDEFINED,
|
|
OPTION_NO_ALLOW_SHLIB_UNDEFINED,
|
|
OPTION_ALLOW_MULTIPLE_DEFINITION,
|
|
#if SUPPORT_ERROR_HANDLING_SCRIPT
|
|
OPTION_ERROR_HANDLING_SCRIPT,
|
|
#endif
|
|
OPTION_UNDEFINED_VERSION,
|
|
OPTION_NO_UNDEFINED_VERSION,
|
|
OPTION_DEFAULT_SYMVER,
|
|
OPTION_DEFAULT_IMPORTED_SYMVER,
|
|
OPTION_DISCARD_NONE,
|
|
OPTION_SPARE_DYNAMIC_TAGS,
|
|
OPTION_NO_DEFINE_COMMON,
|
|
OPTION_NOSTDLIB,
|
|
OPTION_NO_OMAGIC,
|
|
OPTION_STRIP_DISCARDED,
|
|
OPTION_NO_STRIP_DISCARDED,
|
|
OPTION_ACCEPT_UNKNOWN_INPUT_ARCH,
|
|
OPTION_NO_ACCEPT_UNKNOWN_INPUT_ARCH,
|
|
OPTION_PIE,
|
|
OPTION_NO_PIE,
|
|
OPTION_UNRESOLVED_SYMBOLS,
|
|
OPTION_WARN_UNRESOLVED_SYMBOLS,
|
|
OPTION_ERROR_UNRESOLVED_SYMBOLS,
|
|
OPTION_WARN_TEXTREL,
|
|
OPTION_WARN_ALTERNATE_EM,
|
|
OPTION_REDUCE_MEMORY_OVERHEADS,
|
|
OPTION_MAX_CACHE_SIZE,
|
|
#if BFD_SUPPORTS_PLUGINS
|
|
OPTION_PLUGIN,
|
|
OPTION_PLUGIN_OPT,
|
|
OPTION_PLUGIN_SAVE_TEMPS,
|
|
#endif /* BFD_SUPPORTS_PLUGINS */
|
|
OPTION_DEFAULT_SCRIPT,
|
|
OPTION_PRINT_OUTPUT_FORMAT,
|
|
OPTION_PRINT_SYSROOT,
|
|
OPTION_IGNORE_UNRESOLVED_SYMBOL,
|
|
OPTION_PUSH_STATE,
|
|
OPTION_POP_STATE,
|
|
OPTION_DISABLE_MULTIPLE_DEFS_ABS,
|
|
OPTION_PRINT_MEMORY_USAGE,
|
|
OPTION_REQUIRE_DEFINED_SYMBOL,
|
|
OPTION_ORPHAN_HANDLING,
|
|
OPTION_FORCE_GROUP_ALLOCATION,
|
|
OPTION_PRINT_MAP_DISCARDED,
|
|
OPTION_NO_PRINT_MAP_DISCARDED,
|
|
OPTION_PRINT_MAP_LOCALS,
|
|
OPTION_NO_PRINT_MAP_LOCALS,
|
|
OPTION_NON_CONTIGUOUS_REGIONS,
|
|
OPTION_NON_CONTIGUOUS_REGIONS_WARNINGS,
|
|
OPTION_DEPENDENCY_FILE,
|
|
OPTION_CTF_VARIABLES,
|
|
OPTION_NO_CTF_VARIABLES,
|
|
OPTION_CTF_SHARE_TYPES,
|
|
OPTION_ERROR_EXECSTACK,
|
|
OPTION_NO_ERROR_EXECSTACK,
|
|
OPTION_WARN_EXECSTACK_OBJECTS,
|
|
OPTION_WARN_EXECSTACK,
|
|
OPTION_NO_WARN_EXECSTACK,
|
|
OPTION_WARN_RWX_SEGMENTS,
|
|
OPTION_NO_WARN_RWX_SEGMENTS,
|
|
OPTION_ERROR_RWX_SEGMENTS,
|
|
OPTION_NO_ERROR_RWX_SEGMENTS,
|
|
OPTION_ENABLE_LINKER_VERSION,
|
|
OPTION_DISABLE_LINKER_VERSION,
|
|
OPTION_REMAP_INPUTS,
|
|
OPTION_REMAP_INPUTS_FILE,
|
|
/* Used by emultempl/elf.em, emultempl/pe.em and emultempl/pep.em. */
|
|
OPTION_BUILD_ID,
|
|
OPTION_EXCLUDE_LIBS,
|
|
/* Used by emulparams/elf32mcore.sh, emultempl/beos.em, emultempl/pe.em
|
|
and emultempl/pep.em. */
|
|
OPTION_BASE_FILE,
|
|
/* Used by emultempl/ppc32elf.em and emultempl/ppc64elf.em. */
|
|
OPTION_NO_INLINE_OPT,
|
|
OPTION_NO_PLT_ALIGN,
|
|
OPTION_NO_STUBSYMS,
|
|
OPTION_NO_TLS_GET_ADDR_OPT,
|
|
OPTION_NO_TLS_OPT,
|
|
OPTION_PLT_ALIGN,
|
|
OPTION_STUBSYMS,
|
|
/* Used by emultempl/armelf.em and emultempl/tic6xdsbt.em. */
|
|
OPTION_NO_MERGE_EXIDX_ENTRIES,
|
|
/* Used by emultempl/aarch64elf.em and emultempl/armelf.em. */
|
|
OPTION_PIC_VENEER,
|
|
OPTION_NO_ENUM_SIZE_WARNING,
|
|
OPTION_NO_WCHAR_SIZE_WARNING,
|
|
/* Used by emultempl/armelf.em and emultempl/pe.em. */
|
|
OPTION_THUMB_ENTRY,
|
|
/* Used by emultempl/beos.em, emultempl/nto.em, emultempl/pe.em and
|
|
emultempl/pep.em. */
|
|
OPTION_STACK,
|
|
/* Used by emultempl/aarch64elf.em, emultempl/armelf.em,
|
|
emultempl/cskyelf.em, emultempl/hppaelf.em, emultempl/metagelf.em
|
|
and emultempl/ppc64elf.em. */
|
|
OPTION_STUBGROUP_SIZE,
|
|
/* Used by emulparams/plt_unwind.sh. */
|
|
OPTION_LD_GENERATED_UNWIND_INFO,
|
|
OPTION_NO_LD_GENERATED_UNWIND_INFO,
|
|
/* Used by emultempl/aarch64elf.em. */
|
|
OPTION_FIX_ERRATUM_835769,
|
|
OPTION_FIX_ERRATUM_843419,
|
|
OPTION_NO_APPLY_DYNAMIC_RELOCS,
|
|
/* Used by emultempl/aix.em. */
|
|
OPTION_AUTOIMP,
|
|
OPTION_ERNOTOK,
|
|
OPTION_EROK,
|
|
OPTION_EXPALL,
|
|
OPTION_EXPFULL,
|
|
OPTION_EXPORT,
|
|
OPTION_IMPORT,
|
|
OPTION_INITFINI,
|
|
OPTION_LOADMAP,
|
|
OPTION_MAXDATA,
|
|
OPTION_MAXSTACK,
|
|
OPTION_MODTYPE,
|
|
OPTION_NOAUTOIMP,
|
|
OPTION_NOEXPALL,
|
|
OPTION_NOEXPFULL,
|
|
OPTION_NOSTRCMPCT,
|
|
OPTION_PD,
|
|
OPTION_PT,
|
|
OPTION_STRCMPCT,
|
|
OPTION_UNIX,
|
|
OPTION_32,
|
|
OPTION_64,
|
|
OPTION_LIBPATH,
|
|
OPTION_NOLIBPATH,
|
|
/* Used by emultempl/alphaelf.em. */
|
|
OPTION_TASO,
|
|
OPTION_SECUREPLT,
|
|
OPTION_NO_SECUREPLT,
|
|
/* Used by emultempl/armelf.em. */
|
|
OPTION_BE8,
|
|
OPTION_TARGET1_REL,
|
|
OPTION_TARGET1_ABS,
|
|
OPTION_TARGET2,
|
|
OPTION_FIX_V4BX,
|
|
OPTION_USE_BLX,
|
|
OPTION_VFP11_DENORM_FIX,
|
|
OPTION_FIX_V4BX_INTERWORKING,
|
|
OPTION_FIX_CORTEX_A8,
|
|
OPTION_NO_FIX_CORTEX_A8,
|
|
OPTION_FIX_ARM1176,
|
|
OPTION_NO_FIX_ARM1176,
|
|
OPTION_LONG_PLT,
|
|
OPTION_STM32L4XX_FIX,
|
|
OPTION_CMSE_IMPLIB,
|
|
OPTION_IN_IMPLIB,
|
|
/* Used by emultempl/avrelf.em. */
|
|
OPTION_NO_CALL_RET_REPLACEMENT,
|
|
OPTION_PMEM_WRAP_AROUND,
|
|
OPTION_NO_STUBS,
|
|
OPTION_DEBUG_STUBS,
|
|
OPTION_DEBUG_RELAX,
|
|
/* Used by emultempl/bfin.em. */
|
|
OPTION_CODE_IN_L1,
|
|
OPTION_DATA_IN_L1,
|
|
/* Used by emultempl/cskyelf.em. */
|
|
OPTION_BRANCH_STUB,
|
|
OPTION_NO_BRANCH_STUB,
|
|
/* Used by emultempl/elf.em. */
|
|
OPTION_DISABLE_NEW_DTAGS,
|
|
OPTION_ENABLE_NEW_DTAGS,
|
|
OPTION_GROUP,
|
|
OPTION_EH_FRAME_HDR,
|
|
OPTION_NO_EH_FRAME_HDR,
|
|
OPTION_HASH_STYLE,
|
|
OPTION_PACKAGE_METADATA,
|
|
OPTION_AUDIT,
|
|
OPTION_COMPRESS_DEBUG,
|
|
OPTION_ROSEGMENT,
|
|
OPTION_NO_ROSEGMENT,
|
|
/* Used by emultempl/hppaelf.em. */
|
|
OPTION_MULTI_SUBSPACE,
|
|
/* Used by emultempl/ia64elf.em. */
|
|
OPTION_ITANIUM,
|
|
/* Used by emultempl/m68hc1xelf.em. */
|
|
OPTION_NO_TRAMPOLINE,
|
|
OPTION_BANK_WINDOW,
|
|
/* Used by emultempl/m68kelf.em. */
|
|
OPTION_GOT,
|
|
/* Used by emultempl/mipself.em. */
|
|
OPTION_INSN32,
|
|
OPTION_NO_INSN32,
|
|
OPTION_IGNORE_BRANCH_ISA,
|
|
OPTION_NO_IGNORE_BRANCH_ISA,
|
|
OPTION_COMPACT_BRANCHES,
|
|
OPTION_NO_COMPACT_BRANCHES,
|
|
/* Used by emultempl/msp430.em. */
|
|
OPTION_CODE_REGION,
|
|
OPTION_DATA_REGION,
|
|
OPTION_DISABLE_TRANS,
|
|
/* Used by emultempl/nds32elf.em. */
|
|
OPTION_BASELINE,
|
|
OPTION_ELIM_GC_RELOCS,
|
|
OPTION_FP_AS_GP,
|
|
OPTION_NO_FP_AS_GP,
|
|
OPTION_REDUCE_FP_UPDATE,
|
|
OPTION_NO_REDUCE_FP_UPDATE,
|
|
OPTION_EXPORT_SYMBOLS,
|
|
OPTION_HYPER_RELAX,
|
|
OPTION_TLSDESC_TRAMPOLINE,
|
|
OPTION_NO_TLSDESC_TRAMPOLINE,
|
|
/* Used by emultempl/nto.em. */
|
|
OPTION_LAZY_STACK,
|
|
/* Used by emultempl/pe.em, emultempl/pep.em and emultempl/beos.em. */
|
|
OPTION_DLL,
|
|
OPTION_FILE_ALIGNMENT,
|
|
OPTION_IMAGE_BASE,
|
|
OPTION_MAJOR_IMAGE_VERSION,
|
|
OPTION_MAJOR_OS_VERSION,
|
|
OPTION_MAJOR_SUBSYSTEM_VERSION,
|
|
OPTION_MINOR_IMAGE_VERSION,
|
|
OPTION_MINOR_OS_VERSION,
|
|
OPTION_MINOR_SUBSYSTEM_VERSION,
|
|
OPTION_SECTION_ALIGNMENT,
|
|
OPTION_SUBSYSTEM,
|
|
OPTION_HEAP,
|
|
OPTION_SUPPORT_OLD_CODE,
|
|
OPTION_OUT_DEF,
|
|
OPTION_EXPORT_ALL,
|
|
OPTION_EXCLUDE_SYMBOLS,
|
|
OPTION_EXCLUDE_ALL_SYMBOLS,
|
|
OPTION_KILL_ATS,
|
|
OPTION_STDCALL_ALIASES,
|
|
OPTION_ENABLE_STDCALL_FIXUP,
|
|
OPTION_DISABLE_STDCALL_FIXUP,
|
|
OPTION_WARN_DUPLICATE_EXPORTS,
|
|
OPTION_IMP_COMPAT,
|
|
OPTION_ENABLE_AUTO_IMAGE_BASE,
|
|
OPTION_DISABLE_AUTO_IMAGE_BASE,
|
|
OPTION_DLL_SEARCH_PREFIX,
|
|
OPTION_NO_DEFAULT_EXCLUDES,
|
|
OPTION_DLL_ENABLE_AUTO_IMPORT,
|
|
OPTION_DLL_DISABLE_AUTO_IMPORT,
|
|
OPTION_ENABLE_EXTRA_PE_DEBUG,
|
|
OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC,
|
|
OPTION_DLL_DISABLE_RUNTIME_PSEUDO_RELOC,
|
|
OPTION_LARGE_ADDRESS_AWARE,
|
|
OPTION_DISABLE_LARGE_ADDRESS_AWARE,
|
|
OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V1,
|
|
OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V2,
|
|
OPTION_EXCLUDE_MODULES_FOR_IMPLIB,
|
|
OPTION_USE_NUL_PREFIXED_IMPORT_TABLES,
|
|
OPTION_NO_LEADING_UNDERSCORE,
|
|
OPTION_LEADING_UNDERSCORE,
|
|
OPTION_ENABLE_LONG_SECTION_NAMES,
|
|
OPTION_DISABLE_LONG_SECTION_NAMES,
|
|
/* DLLCharacteristics flags. */
|
|
OPTION_DYNAMIC_BASE,
|
|
OPTION_FORCE_INTEGRITY,
|
|
OPTION_NX_COMPAT,
|
|
OPTION_NO_ISOLATION,
|
|
OPTION_NO_SEH,
|
|
OPTION_NO_BIND,
|
|
OPTION_WDM_DRIVER,
|
|
OPTION_TERMINAL_SERVER_AWARE,
|
|
/* Determinism. */
|
|
OPTION_INSERT_TIMESTAMP,
|
|
OPTION_NO_INSERT_TIMESTAMP,
|
|
OPTION_PDB,
|
|
OPTION_ENABLE_RELOC_SECTION,
|
|
OPTION_DISABLE_RELOC_SECTION,
|
|
/* DLL Characteristics flags. */
|
|
OPTION_DISABLE_DYNAMIC_BASE,
|
|
OPTION_DISABLE_FORCE_INTEGRITY,
|
|
OPTION_DISABLE_NX_COMPAT,
|
|
OPTION_DISABLE_NO_ISOLATION,
|
|
OPTION_DISABLE_NO_SEH,
|
|
OPTION_DISABLE_NO_BIND,
|
|
OPTION_DISABLE_WDM_DRIVER,
|
|
OPTION_DISABLE_TERMINAL_SERVER_AWARE,
|
|
/* Used by emultempl/pep.em. */
|
|
OPTION_DISABLE_HIGH_ENTROPY_VA,
|
|
OPTION_HIGH_ENTROPY_VA,
|
|
/* Used by emultempl/ppc32elf.em. */
|
|
OPTION_NEW_PLT,
|
|
OPTION_OLD_PLT,
|
|
OPTION_OLD_GOT,
|
|
OPTION_PPC476_WORKAROUND,
|
|
OPTION_NO_PPC476_WORKAROUND,
|
|
OPTION_NO_PICFIXUP,
|
|
OPTION_VLE_RELOC_FIXUP,
|
|
/* Used by emultempl/ppc64elf.em. */
|
|
OPTION_PLT_STATIC_CHAIN,
|
|
OPTION_NO_PLT_STATIC_CHAIN,
|
|
OPTION_PLT_THREAD_SAFE,
|
|
OPTION_NO_PLT_THREAD_SAFE,
|
|
OPTION_PLT_LOCALENTRY,
|
|
OPTION_NO_PLT_LOCALENTRY,
|
|
OPTION_POWER10_STUBS,
|
|
OPTION_NO_POWER10_STUBS,
|
|
OPTION_NO_PCREL_OPT,
|
|
OPTION_SAVRES,
|
|
OPTION_NO_SAVRES,
|
|
OPTION_DOTSYMS,
|
|
OPTION_NO_DOTSYMS,
|
|
OPTION_TLS_GET_ADDR_OPT,
|
|
OPTION_TLS_GET_ADDR_REGSAVE,
|
|
OPTION_NO_TLS_GET_ADDR_REGSAVE,
|
|
OPTION_NO_OPD_OPT,
|
|
OPTION_NO_TOC_OPT,
|
|
OPTION_NO_MULTI_TOC,
|
|
OPTION_NO_TOC_SORT,
|
|
OPTION_NON_OVERLAPPING_OPD,
|
|
/* Used by emultempl/riscvelf.em. */
|
|
OPTION_RELAX_GP,
|
|
OPTION_NO_RELAX_GP,
|
|
OPTION_CHECK_ULEB128,
|
|
OPTION_NO_CHECK_ULEB128,
|
|
/* Used by emultempl/rxelf.em. */
|
|
OPTION_NO_FLAG_MISMATCH_WARNINGS,
|
|
OPTION_IGNORE_LMA,
|
|
OPTION_NO_IGNORE_LMA,
|
|
OPTION_FLAG_MISMATCH_WARNINGS,
|
|
/* Used by emultempl/s390.em. */
|
|
OPTION_PGSTE,
|
|
/* Used by emultempl/spuelf.em. */
|
|
OPTION_SPU_PLUGIN,
|
|
OPTION_SPU_NO_OVERLAYS,
|
|
OPTION_SPU_COMPACT_STUBS,
|
|
OPTION_SPU_STUB_SYMS,
|
|
OPTION_SPU_NON_OVERLAY_STUBS,
|
|
OPTION_SPU_LOCAL_STORE,
|
|
OPTION_SPU_STACK_ANALYSIS,
|
|
OPTION_SPU_STACK_SYMS,
|
|
OPTION_SPU_AUTO_OVERLAY,
|
|
OPTION_SPU_AUTO_RELINK,
|
|
OPTION_SPU_OVERLAY_RODATA,
|
|
OPTION_SPU_SOFT_ICACHE,
|
|
OPTION_SPU_LINE_SIZE,
|
|
OPTION_SPU_NUM_LINES,
|
|
OPTION_SPU_LRLIVE,
|
|
OPTION_SPU_NON_IA_TEXT,
|
|
OPTION_SPU_FIXED_SPACE,
|
|
OPTION_SPU_RESERVED_SPACE,
|
|
OPTION_SPU_EXTRA_STACK,
|
|
OPTION_SPU_NO_AUTO_OVERLAY,
|
|
OPTION_SPU_EMIT_FIXUPS,
|
|
/* Used by emultempl/tic6xdsbt.em. */
|
|
OPTION_DSBT_INDEX,
|
|
OPTION_DSBT_SIZE,
|
|
/* Used by emultempl/ticoff.em. */
|
|
OPTION_COFF_FORMAT,
|
|
/* Used by emultempl/vms.em. */
|
|
OPTION_IDENTIFICATION,
|
|
/* Used by emultempl/vxworks.em. */
|
|
OPTION_FORCE_DYNAMIC,
|
|
/* Used by emultempl/xtensaelf.em. */
|
|
OPTION_OPT_SIZEOPT,
|
|
OPTION_LITERAL_MOVEMENT,
|
|
OPTION_NO_LITERAL_MOVEMENT,
|
|
OPTION_ABI_WINDOWED,
|
|
OPTION_ABI_CALL0,
|
|
};
|
|
|
|
/* The initial parser states. */
|
|
typedef enum input_enum
|
|
{
|
|
input_selected, /* We've set the initial state. */
|
|
input_script,
|
|
input_mri_script,
|
|
input_version_script,
|
|
input_section_ordering_script,
|
|
input_dynamic_list,
|
|
input_defsym
|
|
} input_type;
|
|
|
|
extern input_type parser_input;
|
|
|
|
extern unsigned int lineno;
|
|
extern const char *lex_string;
|
|
|
|
/* In ldlex.l. */
|
|
extern int yylex (void);
|
|
extern void lex_push_file (FILE *, const char *, unsigned int);
|
|
extern void lex_redirect (const char *, const char *, unsigned int);
|
|
extern void ldlex_script (void);
|
|
extern void ldlex_inputlist (void);
|
|
extern void ldlex_mri_script (void);
|
|
extern void ldlex_version_script (void);
|
|
extern void ldlex_version_file (void);
|
|
extern void ldlex_expression (void);
|
|
extern void ldlex_wild (void);
|
|
extern void ldlex_popstate (void);
|
|
extern void ldlex_backup (void);
|
|
extern const char* ldlex_filename (void);
|
|
|
|
/* In lexsup.c. */
|
|
extern int lex_input (void);
|
|
extern void lex_unput (int);
|
|
extern void parse_args (unsigned, char **);
|
|
|
|
#endif
|