libgcc2.c

来自「fsmlabs的real time linux的内核」· C语言 代码 · 共 8,950 行 · 第 1/4 页

C
8,950
字号
# 1 "/sys/gcc-2.95.2/gcc/libgcc2.c"     # 1 "/sys/gcc-2.95.2/gcc/tconfig.h" 1# 1 "/sys/gcc-2.95.2/gcc/gansidecl.h" 1  # 1 "../include/ansidecl.h" 1      # 161 "../include/ansidecl.h"# 28 "/sys/gcc-2.95.2/gcc/gansidecl.h" 2   # 2 "/sys/gcc-2.95.2/gcc/tconfig.h" 2# 1 "config/xm-siglist.h" 1 # 5 "/sys/gcc-2.95.2/gcc/tconfig.h" 2# 1 "config/mips/xm-mips.h" 1      # 1 "tm.h" 1# 1 "config/mips/elf.h" 1    # 1 "config/gofast.h" 1   # 96 "config/gofast.h" # 32 "config/mips/elf.h" 2# 1 "config/mips/ecoff.h" 1  # 1 "config/mips/mips.h" 1  extern char    *asm_file_name;extern char	call_used_regs[];extern int	current_function_calls_alloca;extern char    *language_string;extern int	may_call_alloca;extern char   **save_argv;extern int	target_flags;extern char    *version_string;  enum cmp_type {  CMP_SI,				   CMP_DI,				   CMP_SF,				   CMP_DF,				   CMP_MAX				 }; enum delay_type {  DELAY_NONE,				   DELAY_LOAD,				   DELAY_HILO,				   DELAY_FCMP				 }; enum processor_type {  PROCESSOR_DEFAULT,  PROCESSOR_R3000,  PROCESSOR_R3900,  PROCESSOR_R6000,  PROCESSOR_R4000,  PROCESSOR_R4100,  PROCESSOR_R4300,  PROCESSOR_R4600,  PROCESSOR_R4650,  PROCESSOR_R5000,  PROCESSOR_R8000};    enum mips_abicalls_type {  MIPS_ABICALLS_NO,  MIPS_ABICALLS_YES};  enum block_move_type {  BLOCK_MOVE_NORMAL,			   BLOCK_MOVE_NOT_LAST,			   BLOCK_MOVE_LAST			 };extern char mips_reg_names[][8];	 extern char mips_print_operand_punct[];	 extern const char *current_function_file;  extern int num_source_filenames;	 extern int inside_function;		 extern int ignore_line_number;		 extern int file_in_function_warning;	 extern int sdb_label_count;		 extern int sdb_begin_function_line;      extern int mips_section_threshold;	 extern int g_switch_value;		 extern int g_switch_set;		 extern int sym_lineno;			 extern int set_noreorder;		 extern int set_nomacro;			 extern int set_noat;			 extern int set_volatile;		 extern int mips_branch_likely;		 extern int mips_dbx_regno[];		 extern struct rtx_def *branch_cmp[2];	 extern enum cmp_type branch_type;	 extern enum processor_type mips_cpu;	 extern enum mips_abicalls_type mips_abicalls; extern int mips_isa;			 extern int mips16;			 extern int mips16_hard_float;		 extern int mips_entry;			 extern const char *mips_cpu_string;	 extern const char *mips_isa_string;	 extern const char *mips_abi_string;	 extern const char *mips_entry_string;	 extern const char *mips_no_mips16_string; extern const char *mips_explicit_type_size_string; extern int mips_split_addresses;	 extern int dslots_load_total;		 extern int dslots_load_filled;		 extern int dslots_jump_total;		 extern int dslots_jump_filled;		 extern int dslots_number_nops;		 extern int num_refs[3];			 extern struct rtx_def *mips_load_reg;	 extern struct rtx_def *mips_load_reg2;	 extern struct rtx_def *mips_load_reg3;	 extern struct rtx_def *mips_load_reg4;	 extern struct rtx_def *embedded_pic_fnaddr_rtx;	 extern int mips_string_length;		 extern struct rtx_def *mips16_gp_pseudo_rtx;   # 1 "hwint.h" 1    # 81 "hwint.h"# 168 "config/mips/mips.h" 2extern int		arith32_operand ();extern int		arith_operand ();extern int		cmp_op ();extern int 	compute_frame_size ();extern int		const_float_1_operand ();extern void		expand_block_move ();extern int		equality_op ();extern void		final_prescan_insn ();extern struct rtx_def *	function_arg ();extern void		function_arg_advance ();extern int		function_arg_partial_nregs ();extern int		function_arg_pass_by_reference ();extern void		function_epilogue ();extern void		function_prologue ();extern void		gen_conditional_branch ();extern void		gen_conditional_move ();extern struct rtx_def * gen_int_relational ();extern void		init_cumulative_args ();extern int		large_int ();extern void		machine_dependent_reorg ();extern int		mips_address_cost ();extern void		mips_asm_file_end ();extern void		mips_asm_file_start ();extern int		mips_can_use_return_insn ();extern int		mips_const_double_ok ();extern void		mips_count_memory_refs ();extern int 	mips_debugger_offset ();extern void		mips_declare_object ();extern int		mips_epilogue_delay_slots ();extern void		mips_expand_epilogue ();extern void		mips_expand_prologue ();extern int		mips_check_split ();extern char	       *mips_fill_delay_slot ();extern const char       *mips_move_1word ();extern const char       *mips_move_2words ();extern void		mips_output_double ();extern int		mips_output_external ();extern void		mips_output_float ();extern void		mips_output_filename ();extern void		mips_output_lineno ();extern const char       *output_block_move ();extern void		override_options ();extern int		pc_or_label_operand ();extern void		print_operand_address ();extern void		print_operand ();extern void		print_options ();extern int		reg_or_0_operand ();extern int		true_reg_or_0_operand ();extern int		simple_epilogue_p ();extern int		simple_memory_operand ();extern int		double_memory_operand ();extern int		small_int ();extern void		trace ();extern int		uns_arith_operand ();extern struct rtx_def *	embedded_pic_offset ();extern void		mips_order_regs_for_local_alloc ();extern struct rtx_def *	mips16_gp_pseudo_reg ();extern struct rtx_def * mips16_gp_offset ();extern int		mips16_gp_offset_p ();extern int		mips16_constant ();extern int		mips16_constant_after_function_p ();extern int		build_mips16_call_stub (); extern int		address_operand ();extern int		call_insn_operand ();extern int		const_double_operand ();extern int		const_int_operand ();extern int		consttable_operand ();extern int		general_operand ();extern int		immediate_operand ();extern int		memory_address_p ();extern int		memory_operand ();extern int		nonimmediate_operand ();extern int		nonmemory_operand ();extern int		pic_address_needs_scratch ();extern int		register_operand ();extern int		scratch_operand ();extern int		move_operand ();extern int		movdi_operand ();extern int		se_register_operand ();extern int		se_reg_or_0_operand ();extern int		se_uns_arith_operand ();extern int		se_arith_operand ();extern int		se_nonmemory_operand ();extern int		se_nonimmediate_operand ();extern int              extend_operator ();extern int              highpart_shift_operator ();extern int		m16_uimm3_b ();extern int		m16_simm4_1 ();extern int		m16_nsimm4_1 ();extern int		m16_simm5_1 ();extern int		m16_nsimm5_1 ();extern int		m16_uimm5_4 ();extern int		m16_nuimm5_4 ();extern int		m16_simm8_1 ();extern int		m16_nsimm8_1 ();extern int		m16_uimm8_1 ();extern int		m16_nuimm8_1 ();extern int		m16_uimm8_m1_1 ();extern int		m16_uimm8_4 ();extern int		m16_nuimm8_4 ();extern int		m16_simm8_8 ();extern int		m16_nsimm8_8 ();extern int		m16_usym8_4 ();extern int		m16_usym5_4 (); extern void		data_section ();extern void		rdata_section ();extern void		readonly_data_section ();extern void		sdata_section ();extern void		text_section ();extern void		mips_select_rtx_section ();extern void		mips_select_section ();   					 					 					 					 					  					 					 					 					 					 					 					 					 					 					 					 					 					   					  # 570 "config/mips/mips.h"   # 641 "config/mips/mips.h"       # 754 "config/mips/mips.h"   # 788 "config/mips/mips.h"            # 882 "config/mips/mips.h"  # 911 "config/mips/mips.h"      # 961 "config/mips/mips.h"     # 1014 "config/mips/mips.h" # 1040 "config/mips/mips.h"               # 1247 "config/mips/mips.h"# 1261 "config/mips/mips.h"  # 1310 "config/mips/mips.h"                                             extern char mips_hard_regno_mode_ok[][76 ];                     enum reg_class{  NO_REGS,			   M16_NA_REGS,			   M16_REGS,			   T_REG,			   M16_T_REGS,			   GR_REGS,			   FP_REGS,			   HI_REG,			   LO_REG,			   HILO_REG,			   MD_REGS,			   HI_AND_GR_REGS,		   LO_AND_GR_REGS,  HILO_AND_GR_REGS,  ST_REGS,			   ALL_REGS,			   LIM_REG_CLASSES		 }; # 1827 "config/mips/mips.h" # 1858 "config/mips/mips.h" extern enum reg_class mips_regno_to_class[];        extern enum reg_class mips_char_to_class[];  # 1986 "config/mips/mips.h"   # 2018 "config/mips/mips.h" # 2040 "config/mips/mips.h"   extern enum reg_class	mips_secondary_reload_class (); 

⌨️ 快捷键说明

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