⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cccp.i

📁 linux下基于c++的处理器仿真平台。具有处理器流水线
💻 I
📖 第 1 页 / 共 5 页
字号:
	unsigned long sc_traparg_a2;		unsigned long sc_fp_trap_pc;		unsigned long sc_fp_trigger_sum; 	unsigned long sc_fp_trigger_inst; };extern sigset_t cantmasksigset;struct	sigvec {	void	(*sv_handler)();		int     sv_mask;        	int     sv_flags;    };                           extern int sigvec();extern int killpg();struct  sigstack {        char    *ss_sp;                         int     ss_onstack;             };typedef struct  sigaltstack {        caddr_t	ss_sp;			        int     ss_flags;		        size_t	ss_size;		} stack_t;extern int sigblock();extern int sigpause();extern int sigreturn();extern int sigsetmask();extern int sigstack(); extern int siginterrupt();extern int sigaltstack();extern void (*sigset())();extern int sighold();extern int sigrelse();extern int sigignore();extern int sigsendset();extern int sigsend();  void (*ssignal ()) ();  int gsignal ();typedef int             clockid_t;struct	tm {			        int     tm_sec;                 int     tm_min;                 int     tm_hour;                int     tm_mday;                int     tm_mon;                 int     tm_year;                int     tm_wday;                int     tm_yday;                int     tm_isdst;       	long    __tm_gmtoff;        char    *__tm_zone;};extern clock_t 	clock();extern double 	difftime();extern time_t 	mktime();extern time_t 	time();extern char 	*asctime();extern char 	*ctime();extern struct tm *gmtime();extern struct tm *localtime();extern size_t 	strftime();typedef struct timespec {        time_t  tv_sec;                 long    tv_nsec;        } timespec_t;struct	itimerspec {	struct		timespec it_interval; 	struct		timespec it_value; };int clock_gettime();int clock_settime();int clock_getdrift();int clock_setdrift();int  timer_create();int timer_delete();int timer_gettime();int timer_settime();int timer_getoverrun();int nanosleep();int clock_getres();extern char *tzname[];extern void tzset();extern long timezone;extern int daylight;extern char *strptime ();extern unsigned char *NLctime(), *NLasctime();extern char *NLstrtime();struct timeval {	int	tv_sec;			int	tv_usec;	};struct	itimerval {	struct		timeval it_interval; 	struct		timeval it_value; };struct timezone {	int	tz_minuteswest;		int	tz_dsttime;	};extern int adjtime ();extern int getitimer ();extern int setitimer ();extern int gettimeofday ();extern int settimeofday ();extern int utimes ();typedef struct psx4_timer_struct {        long		psx4t_idx;      	long		psx4t_tid;		struct itimerval psx4t_timeval;		volatile unsigned int	psx4t_flags;		unsigned int	psx4t_type:1;   	unsigned int	psx4t_overrun; 		sigval_t     	psx4t_value;		int		psx4t_signo;		void     	*psx4t_p_proc;	} psx4_timer_t;typedef struct psx4_tblock_struct {	long		psx4tb_free;		psx4_timer_t 	psx4_timers[32];} psx4_tblock_t;struct	rusage {	struct timeval ru_utime;		struct timeval ru_stime;		long	ru_maxrss;	long	ru_ixrss;			long	ru_idrss;			long	ru_isrss;			long	ru_minflt;			long	ru_majflt;			long	ru_nswap;			long	ru_inblock;			long	ru_oublock;			long	ru_msgsnd;			long	ru_msgrcv;			long	ru_nsignals;			long	ru_nvcsw;			long	ru_nivcsw;		};struct rlimit {	rlim_t	rlim_cur;			rlim_t	rlim_max;		};struct rusage_dev {	struct rusage ru_rusage;	dev_t	      ru_dev;};extern int getpriority ();extern int setpriority ();extern int getrlimit ();extern int setrlimit ();extern int getrusage ();extern char *index ();extern char *rindex ();char *xmalloc ();void error ();void warning ();extern char *getenv ();extern FILE *fdopen ();extern char *version_string;extern struct tm *localtime ();extern int sys_nerr;extern char *sys_errlist[];extern int errno;struct directive;struct file_buf;struct arglist;struct argdata;static int do_define ();static int do_line ();static int do_include ();static int do_undef ();static int do_error ();static int do_pragma ();static int do_ident ();static int do_if ();static int do_xifdef ();static int do_else ();static int do_elif ();static int do_endif ();static int do_sccs ();static int do_once ();static int do_assert ();static int do_unassert ();static int do_warning ();static void add_import ();static void append_include_chain ();static void deps_output ();static void make_undef ();static void make_definition ();static void make_assertion ();static void path_include ();static void initialize_builtins ();static void initialize_char_syntax ();static void dump_arg_n ();static void dump_defn_1 ();static void delete_macro ();static void trigraph_pcp ();static void rescan ();static void finclude ();static void validate_else ();static int comp_def_part ();static void error_from_errno ();static void error_with_line ();void pedwarn ();static void pedwarn_with_file_and_line ();static void fatal ();void fancy_abort ();static void pfatal_with_name ();static void perror_with_name ();static void print_containing_files ();static int lookup_import ();static int redundant_include_p ();static is_system_include ();static int check_preconditions ();static void pcfinclude ();static void pcstring_used ();static void write_output ();static int check_macro_name ();static int compare_defs ();static int compare_token_lists ();static int eval_if_expression ();static int discard_comments ();static int delete_newlines ();static int line_for_error ();static int hashf ();static int file_size_and_mode ();static struct arglist *read_token_list ();static void free_token_list ();static struct hashnode *install ();struct hashnode *lookup ();static struct assertion_hashnode *assertion_install ();static struct assertion_hashnode *assertion_lookup ();static char *xrealloc ();static char *xcalloc ();static char *savestring ();static void delete_assertion ();static void macroexpand ();static void dump_all_macros ();static void conditional_skip ();static void skip_if_group ();static void output_line_command ();enum file_change_code {same_file, enter_file, leave_file};static int grow_outbuf ();static int handle_directive ();static void memory_full ();static U_CHAR *macarg1 ();static char *macarg ();static U_CHAR *skip_to_end_of_comment ();static U_CHAR *skip_quoted_string ();static U_CHAR *skip_paren_group ();static char *check_precompiled ();static void dump_single_macro ();static char *progname;static int cplusplus;static int cplusplus_comments;static int objc;static int lang_asm;static int max_include_len;static int lint = 0;static int put_out_comments = 0;static int no_trigraphs = 0;static int print_deps = 0;static int print_include_names = 0;static int no_line_commands;static enum {dump_none, dump_only, dump_names, dump_definitions}     dump_macros = dump_none;static int debug_output = 0;static FILE *pcp_outfile;static int pcp_inside_if;static int no_precomp;int pedantic;static int pedantic_errors;static int inhibit_warnings = 0;static int warn_comments;static int warn_stringify;static int warn_trigraphs;static int warn_import = 1;static int warnings_are_errors;int traditional;static int no_output;static int done_initializing = 0;static struct file_buf {  char *fname;  char *nominal_fname;  struct file_name_list *dir;  int lineno;  int length;  U_CHAR *buf;  U_CHAR *bufp;  struct hashnode *macro;  struct if_stack *if_stack;  U_CHAR *free_ptr;  char system_header_p;} instack[200];static int last_error_tick;	   static int input_file_stack_tick;  static int indepth = -1;static int system_include_depth = 0;typedef struct file_buf FILE_BUF;static FILE_BUF outbuf;struct file_name_list  {    struct file_name_list *next;    char *fname;    U_CHAR *control_macro;  };static struct default_include { char *fname; int cplusplus; } include_defaults_array[]  = {    { "/usr", 1},    { "/usr/local/bin", 0},    { "/usr/local/include", 0},    { "/usr/include", 0},    { 0, 0}    };static struct default_include *include_defaults = include_defaults_array;static struct file_name_list *include = 0;	static struct file_name_list *first_bracket_include = 0;static struct file_name_list *first_system_include = 0;static struct file_name_list *last_include = 0;	static struct file_name_list *after_include = 0;static struct file_name_list *last_after_include = 0;	static struct file_name_list *dont_repeat_files = 0;static struct file_name_list *all_include_files = 0;static char *include_prefix;static STRINGDEF *stringlist;static STRINGDEF **stringlist_tailp = &stringlist;typedef struct macrodef MACRODEF;struct macrodef{  struct definition *defn;  U_CHAR *symnam;  int symlen;};static struct macrodef create_definition ();typedef struct definition DEFINITION;struct definition {  int nargs;  int length;			  int predefined;		  U_CHAR *expansion;  int line;			  char *file;			  char rest_args;		  struct reflist {    struct reflist *next;    char stringify;		    char raw_before;		    char raw_after;		    char rest_args;		    int nchars;			    int argno;			  } *pattern;  union {    U_CHAR *argnames;  } args;};union hashval {  int ival;  char *cpval;  DEFINITION *defn;  KEYDEF *keydef;};static char rest_extension[] = "...";enum node_type { T_DEFINE = 1,	 T_INCLUDE,	 T_INCLUDE_NEXT,  T_IMPORT,       T_IFDEF,	 T_IFNDEF,	 T_IF,		 T_ELSE,	 T_PRAGMA,	 T_ELIF,	 T_UNDEF,	 T_LINE,	 T_ERROR,	 T_WARNING,	 T_ENDIF,	 T_SCCS,	 T_IDENT,	 T_ASSERT,	 T_UNASSERT,	 T_SPECLINE,	 T_DATE,	 T_FILE,	 T_BASE_FILE,	 T_INCLUDE_LEVEL,  T_VERSION,	 T_SIZE_TYPE,    T_PTRDIFF_TYPE,    T_WCHAR_TYPE,    T_TIME,	 T_CONST,	 T_MACRO,	 T_DISABLED,	 T_SPEC_DEFINED,  T_PCSTRING,	 T_UNUSED	 };struct hashnode {  struct hashnode *next;	  struct hashnode *prev;  struct hashnode **bucket_hdr;	  enum node_type type;		  int length;			  U_CHAR *name;			  union hashval value;		};typedef struct hashnode HASHNODE;static HASHNODE *hashtab[1403];static char *predefs = "-Dunix -D__osf__ -D__alpha -D__alpha__ -D_LONGLONG -DSYSTYPE_BSD  -D_SYSTYPE_BSD";struct tokenlist_list {  struct tokenlist_list *next;  struct arglist *tokens;};struct assertion_hashnode {  struct assertion_hashnode *next;	  struct assertion_hashnode *prev;  struct assertion_hashnode **bucket_hdr;  int length;			  U_CHAR *name;			  struct tokenlist_list *value;};typedef struct assertion_hashnode ASSERTION_HASHNODE;static ASSERTION_HASHNODE *assertion_hashtab[37];static int assertions_flag;struct directive {  int length;			  int (*func)();		  char *name;			  enum node_type type;		  char angle_brackets;		  char traditional_comments;	  char pass_thru;		};static struct directive directive_table[] = {  {  6, do_define, "define", T_DEFINE, 0, 1},  {  2, do_if, "if", T_IF},  {  5, do_xifdef, "ifdef", T_IFDEF},  {  6, do_xifdef, "ifndef", T_IFNDEF},  {  5, do_endif, "endif", T_ENDIF},  {  4, do_else, "else", T_ELSE},  {  4, do_elif, "elif", T_ELIF},  {  4, do_line, "line", T_LINE},  {  7, do_include, "include", T_INCLUDE, 1},  { 12, do_include, "include_next", T_INCLUDE_NEXT, 1},  {  6, do_include, "import", T_IMPORT, 1},  {  5, do_undef, "undef", T_UNDEF},  {  5, do_error, "error", T_ERROR},  {  7, do_warning, "warning", T_WARNING},  {  6, do_pragma, "pragma", T_PRAGMA, 0, 0, 1},  {  5, do_ident, "ident", T_IDENT, 0, 0, 1},  {  6, do_assert, "assert", T_ASSERT},  {  8, do_unassert, "unassert", T_UNASSERT},  {  -1, 0, "", T_UNUSED},};U_CHAR *directive_start;U_CHAR is_idchar[256];U_CHAR is_idstart[256];U_CHAR is_hor_space[256];static U_CHAR is_space[256];static int errors = 0;			static int dollars_in_ident;static FILE_BUF expand_to_temp_buffer ();static DEFINITION *collect_expansion ();struct if_stack {  struct if_stack *next;	  char *fname;		  int lineno;			  int if_succeeded;		  U_CHAR *control_macro;	  enum node_type type;		};typedef struct if_stack IF_STACK_FRAME;static IF_STACK_FRAME *if_stack = 0L;static char *deps_buffer;static int deps_allocated_size;static int deps_size;static int deps_column;static int ignore_srcdir;intmain (argc, argv)     int argc;     char **argv;{  int st_mode;  long st_size;  char *in_fname, *out_fname;  char *p;  int f, i;  FILE_BUF *fp;  char **pend_files = (char **) xmalloc (argc * sizeof (char *));  char **pend_defs = (char **) xmalloc (argc * sizeof (char *));  char **pend_undefs = (char **) xmalloc (argc * sizeof (char *));  char **pend_assertions = (char **) xmalloc (argc * sizeof (char *));  char **pend_includes = (char **) xmalloc (argc * sizeof (char *));  char **pend_assertion_options = (char **) xmalloc (argc * sizeof (char *));  int inhibit_predefs = 0;  int no_standard_includes = 0;  int no_standard_cplusplus_includes = 0;  int missing_newline = 0;  int inhibit_output = 0;  char *deps_file = 0;  FILE *deps_stream = 0;  char *deps_target = 0;  {    struct rlimit rlim;    getrlimit (3		, &rlim);    rlim.rlim_cur = rlim.rlim_max;    setrlimit (3		, &rlim);  }  progname = argv[0];

⌨️ 快捷键说明

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