ldgram.c

来自「基于4个mips核的noc设计」· C语言 代码 · 共 1,379 行 · 第 1/5 页

C
1,379
字号
/*  A Bison parser, made from ldgram.y    by GNU Bison version 1.28  */#define YYBISON 1  /* Identify Bison output.  */#define	INT	257#define	NAME	258#define	LNAME	259#define	PLUSEQ	260#define	MINUSEQ	261#define	MULTEQ	262#define	DIVEQ	263#define	LSHIFTEQ	264#define	RSHIFTEQ	265#define	ANDEQ	266#define	OREQ	267#define	OROR	268#define	ANDAND	269#define	EQ	270#define	NE	271#define	LE	272#define	GE	273#define	LSHIFT	274#define	RSHIFT	275#define	UNARY	276#define	END	277#define	ALIGN_K	278#define	BLOCK	279#define	BIND	280#define	QUAD	281#define	SQUAD	282#define	LONG	283#define	SHORT	284#define	BYTE	285#define	SECTIONS	286#define	PHDRS	287#define	SORT	288#define	SIZEOF_HEADERS	289#define	OUTPUT_FORMAT	290#define	FORCE_COMMON_ALLOCATION	291#define	OUTPUT_ARCH	292#define	INCLUDE	293#define	MEMORY	294#define	DEFSYMEND	295#define	NOLOAD	296#define	DSECT	297#define	COPY	298#define	INFO	299#define	OVERLAY	300#define	DEFINED	301#define	TARGET_K	302#define	SEARCH_DIR	303#define	MAP	304#define	ENTRY	305#define	NEXT	306#define	SIZEOF	307#define	ADDR	308#define	LOADADDR	309#define	MAX_K	310#define	MIN_K	311#define	STARTUP	312#define	HLL	313#define	SYSLIB	314#define	FLOAT	315#define	NOFLOAT	316#define	NOCROSSREFS	317#define	ORIGIN	318#define	FILL	319#define	LENGTH	320#define	CREATE_OBJECT_SYMBOLS	321#define	INPUT	322#define	GROUP	323#define	OUTPUT	324#define	CONSTRUCTORS	325#define	ALIGNMOD	326#define	AT	327#define	PROVIDE	328#define	CHIP	329#define	LIST	330#define	SECT	331#define	ABSOLUTE	332#define	LOAD	333#define	NEWLINE	334#define	ENDWORD	335#define	ORDER	336#define	NAMEWORD	337#define	ASSERT_K	338#define	FORMAT	339#define	PUBLIC	340#define	BASE	341#define	ALIAS	342#define	TRUNCATE	343#define	REL	344#define	INPUT_SCRIPT	345#define	INPUT_MRI_SCRIPT	346#define	INPUT_DEFSYM	347#define	CASE	348#define	EXTERN	349#define	START	350#define	VERS_TAG	351#define	VERS_IDENTIFIER	352#define	GLOBAL	353#define	LOCAL	354#define	VERSIONK	355#define	INPUT_VERSION_SCRIPT	356#define	KEEP	357#define	EXCLUDE_FILE	358#line 22 "ldgram.y"/* */#define DONTDECLARE_MALLOC#include "bfd.h"#include "sysdep.h"#include "bfdlink.h"#include "ld.h"    #include "ldexp.h"#include "ldver.h"#include "ldlang.h"#include "ldfile.h"#include "ldemul.h"#include "ldmisc.h"#include "ldmain.h"#include "mri.h"#include "ldctor.h"#include "ldlex.h"#ifndef YYDEBUG#define YYDEBUG 1#endifstatic enum section_type sectype;lang_memory_region_type *region;struct wildcard_spec current_file;boolean ldgram_want_filename = true;boolean had_script = false;boolean force_make_executable = false;boolean ldgram_in_script = false;boolean ldgram_had_equals = false;boolean ldgram_had_keep = false;char *ldgram_vers_current_lang = NULL;#define ERROR_NAME_MAX 20static char *error_names[ERROR_NAME_MAX];static int error_index;#define PUSH_ERROR(x) if (error_index < ERROR_NAME_MAX) error_names[error_index] = x; error_index++;#define POP_ERROR()   error_index--;#line 68 "ldgram.y"typedef union {  bfd_vma integer;  char *name;  const char *cname;  struct wildcard_spec wildcard;  struct name_list *name_list;  int token;  union etree_union *etree;  struct phdr_info    {      boolean filehdr;      boolean phdrs;      union etree_union *at;      union etree_union *flags;    } phdr;  struct lang_nocrossref *nocrossref;  struct lang_output_section_phdr_list *section_phdr;  struct bfd_elf_version_deps *deflist;  struct bfd_elf_version_expr *versyms;  struct bfd_elf_version_tree *versnode;} YYSTYPE;#include <stdio.h>#ifndef __cplusplus#ifndef __STDC__#define const#endif#endif#define	YYFINAL		589#define	YYFLAG		-32768#define	YYNTBASE	128#define YYTRANSLATE(x) ((unsigned)(x) <= 358 ? yytranslate[x] : 233)static const short yytranslate[] = {     0,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,   126,     2,     2,     2,    34,    21,     2,    37,   123,    32,    30,   121,    31,     2,    33,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,    16,   122,    24,    10,    25,    15,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,   124,     2,   125,    20,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,    49,    19,    50,   127,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,     1,     3,     4,     5,     6,     7,     8,     9,    11,    12,    13,    14,    17,    18,    22,    23,    26,    27,    28,    29,    35,    36,    38,    39,    40,    41,    42,    43,    44,    45,    46,    47,    48,    51,    52,    53,    54,    55,    56,    57,    58,    59,    60,    61,    62,    63,    64,    65,    66,    67,    68,    69,    70,    71,    72,    73,    74,    75,    76,    77,    78,    79,    80,    81,    82,    83,    84,    85,    86,    87,    88,    89,    90,    91,    92,    93,    94,    95,    96,    97,    98,    99,   100,   101,   102,   103,   104,   105,   106,   107,   108,   109,   110,   111,   112,   113,   114,   115,   116,   117,   118,   119,   120};#if YYDEBUG != 0static const short yyprhs[] = {     0,     0,     3,     6,     9,    12,    14,    15,    20,    21,    24,    28,    29,    32,    37,    39,    41,    44,    46,    51,    56,    60,    63,    68,    72,    77,    82,    87,    92,    97,   100,   103,   106,   111,   116,   119,   122,   125,   128,   129,   135,   138,   139,   143,   146,   147,   149,   153,   155,   159,   160,   162,   166,   168,   171,   175,   176,   179,   182,   183,   185,   187,   189,   191,   193,   195,   197,   199,   201,   203,   208,   213,   218,   223,   232,   237,   239,   244,   245,   251,   256,   257,   263,   268,   273,   275,   279,   282,   284,   288,   291,   296,   299,   302,   303,   308,   311,   313,   315,   317,   319,   325,   330,   339,   342,   344,   346,   350,   352,   353,   358,   359,   365,   367,   368,   374,   377,   379,   381,   383,   388,   390,   395,   400,   403,   405,   406,   408,   410,   412,   414,   416,   418,   421,   422,   424,   426,   428,   430,   432,   434,   436,   438,   440,   442,   446,   450,   457,   459,   460,   466,   469,   473,   474,   475,   483,   487,   491,   492,   496,   498,   501,   503,   506,   511,   516,   520,   524,   526,   531,   535,   536,   538,   540,   541,   544,   548,   549,   552,   555,   559,   564,   567,   570,   573,   577,   581,   585,   589,   593,   597,   601,   605,   609,   613,   617,   621,   625,   629,   633,   637,   643,   647,   651,   656,   658,   660,   665,   670,   675,   680,   685,   690,   692,   699,   706,   713,   717,   718,   723,   724,   725,   726,   727,   728,   729,   746,   747,   748,   749,   750,   751,   769,   770,   771,   779,   781,   783,   785,   787,   789,   793,   794,   797,   801,   804,   811,   822,   825,   827,   828,   830,   833,   834,   835,   839,   840,   841,   842,   843,   855,   860,   861,   864,   865,   866,   873,   875,   876,   880,   886,   887,   891,   892,   895,   896,   902,   904,   907,   913,   920,   922,   925,   926,   929,   934,   939,   948,   950,   954,   955};static const short yyrhs[] = {   107,   142,     0,   108,   132,     0,   118,   223,     0,   109,   130,     0,     4,     0,     0,   131,     4,    10,   188,     0,     0,   133,   134,     0,   134,   135,    96,     0,     0,    91,   188,     0,    91,   188,   121,   188,     0,     4,     0,    92,     0,    98,   137,     0,    97,     0,   102,     4,    10,   188,     0,   102,     4,   121,   188,     0,   102,     4,   188,     0,   101,     4,     0,    93,     4,   121,   188,     0,    93,     4,   188,     0,    93,     4,    10,   188,     0,    38,     4,    10,   188,     0,    38,     4,   121,   188,     0,    88,     4,    10,   188,

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?