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

📄 changelog

📁 这个是LINUX下的GDB调度工具的源码
💻
📖 第 1 页 / 共 5 页
字号:
	* mloop.in (execute): Only call modeling function if the pointer is not	NULL.	* frv.c (frvbf_model_insn_after): Only access FR500_MODEL_DATA for	fr500.2000-01-03  Dave Brolley  <brolley@cygnus.com>	* options.c (OPTION_FRV_MEMORY_LATENCY): New enumerator.	(frv_options): Add --memory-latency.	(frv_option_handler): Handle FRV_OPTION_MEMORY_LATENCY.	* mloop.in (@cpu@_simulate_insn_prefetch): Use cache memory_latency.	* frv.c (SET_ACC_USE_IS_MEDIA_P1): operate on d->curr_acc_p1	(SET_ACC_USE_NOT_MEDIA_P1): operate on d->curr_acc_p1	(SET_ACC_USE_IS_MEDIA_P2): operate on d->curr_acc_p1	(SET_ACC_USE_NOT_MEDIA_P2): operate on d->curr_acc_p1	(update_latencies): Only clear usage flags if the register has no	target latency.	(frvbf_model_insn_before): Update cur_acc_p1 and cur_acc_p2. Use | (or)	not |= (or assgnment).	(frvbf_model_insn_after): Print post processing wait for all insns.	Update prev_acc_p1 and prev_acc_p2.	(frvbf_model_fr500_u_gr_load_store): Use cache memory_latency.	(frvbf_model_fr500_u_fr_load_store): Use cache memory_latency.	(frvbf_model_fr500_u_swap): Use cache memory_latency.	(frvbf_model_fr500_u_media): Use busy_adjustment[4] for out_ACC40Sk.	(frvbf_model_fr500_u_media): Use busy_adjustment[5] for out_ACC40Uk.	(frvbf_model_fr500_u_media_quad_arith): New function.	(frvbf_model_fr500_u_media_dual_mul): New function.	(frvbf_model_fr500_u_media_quad_mul): New function.	(frvbf_model_fr500_u_media_quad_complex): New function.	(frvbf_model_fr500_u_media_dual_expand): New function.	(frvbf_model_fr500_u_media_dual_unpack): New function.	(frvbf_model_fr500_u_media_dual_btoh): New function.	(frvbf_model_fr500_u_media_dual_htob): New function.	(frvbf_model_fr500_u_media_dual_btohe): New function.	(frv_ref_SI): New function.	* cache.h (FRV_CACHE): Add memory_latency field.	* cache.c (frv_cache_init): Initialize memory_latency.	* arch.h,cpu.h,decode.c,decode.h,model.c,sem.c: Regenerate.1999-12-17  Dave Brolley  <brolley@cygnus.com>	* sim-if.c (sim_open): Initialize insn prefetch and reset register.	* options.c (OPTIONS_FRV_PROFILE_CACHE): New enumeration.	(OPTIONS_FRV_PROFILE_PARALLEL): New enumeration.	(OPTIONS_FRV_TIMER): New enumeration.	(frv_options): Add --profile-cache, --profile-parallel, --timer.	(frv_option_handler): Override common implementation of -p. Handle	--profile-cache, --profile-parallel, --timer.	* mloop.in (execute): Call profiling functions if the timer interrupt	is enabled.	(@cpu@_simulate_insn_prefetch): New function.	(main loop): Call @cpu@_simulate_insn_prefetch.	* interrupts.c (frv_queue_interrupt): Don't queue two external	interrupts of the same priority.	(frv_queue_external_interrupt): New function.	(frv_external_interrupt): New function.	(handle_interrupt): Handle external interrupts.	(check_reset): New function.	(frv_process_interrupts): Call check_reset.	* frv.c: Include "bfd.h"	(frvbf_h_psr_get_handler): Set the PIL field.	(frvbf_h_psr_set_handler): Get the PIL field.	(DUAL_REG): New macro.	(DUAL_DOUBLE): New macro.	(SET_USE_IS_FPOP): New macro.	(SET_USE_NOT_FPOP): New macro.	(USE_IS_FPOP): New macro.	(SET_USE_IS_MEDIA): New macro.	(SET_USE_NOT_MEDIA): New macro.	(USE_IS_MEDIA_P1): New macro.	(SET_USE_IS_MEDIA_P1): New macro.	(SET_USE_NOT_MEDIA_P1): New macro.	(SET_USE_IS_MEDIA_P2): New macro.	(SET_USE_NOT_MEDIA_P2): New macro.	(USE_IS_MEDIA_P2): New macro.	(SET_ACC_USE_IS_MEDIA_P1): New macro.	(SET_ACC_USE_NOT_MEDIA_P1): New macro.	(ACC_USE_IS_MEDIA_P1): New macro.	(SET_ACC_USE_IS_MEDIA_P2): New macro.	(SET_ACC_USE_NOT_MEDIA_P2): New macro.	(ACC_USE_IS_MEDIA_P2): New macro.	(RESOURCE_IDIV): New macro.	(RESOURCE_FDIV): New macro.	(RESOURCE_SQRT): New macro.	(fr_busy_adjust): New array.	(acc_busy_adjust): New array.	(apply_latency_adjustments): New function.	(update_latencies): New function.	(handle_wait_cycles): New function.	(handle_resource_wait): New function.	(update_target_latencies): New function.	(frvbf_model_insn_before): Add resource latency to cycle counts.	(frvbf_model_insn_after): Add resource latency to cycle counts.	(update_GR_latency): New function.	(update_GRdouble_latency): New function.	(update_FR_latency): New function.	(update_FRdouble_latency): New function.	(decrease_ACC_busy): New function.	(decrease_FR_busy): New function.	(increase_FR_busy): New function.	(update_ACC_latency): New function.	(update_CCR_latency): New function.	(update_idiv_resource_latency): New function.	(update_fdiv_resource_latency): New function.	(update_fsqrt_resource_latency): New function.	(vliw_wait_for_GR): New function.	(vliw_wait_for_GRdouble): New function.	(vliw_wait_for_FR): New function.	(vliw_wait_for_FRdouble): New function.	(vliw_wait_for_CCR): New function.	(vliw_wait_for_ACC): New function.	(vliw_wait_for_idiv_resource): New function.	(vliw_wait_for_fdiv_resource): New function.	(vliw_wait_for_fsqrt_resource): New function.	(enforce_full_fr_latency): New function.	(frvbf_model_fr500_u_exec): New function.	(frvbf_model_fr500_u_integer): New function.	(frvbf_model_fr500_u_imul): New function.	(frvbf_model_fr500_u_idiv): New function.	(frvbf_model_fr500_u_branch): New function.	(frvbf_model_fr500_u_set_hilo): New function.	(frvbf_model_fr500_u_gr_load_store): New function.	(frvbf_model_fr500_u_fr_load_store): New function.	(frvbf_model_fr500_u_swap): New function.	(frvbf_model_fr500_u_fr2fr): New function.	(frvbf_model_fr500_u_fr2gr): New function.	(frvbf_model_fr500_u_spr2gr): New function.	(frvbf_model_fr500_u_gr2fr): New function.	(frvbf_model_fr500_u_gr2spr): New function.	(post_wait_for_FR): New function.	(post_wait_for_FRdouble): New function.	(post_wait_for_ACC): New function.	(post_wait_for_CCR): New function.	(post_wait_for_fdiv): New function.	(post_wait_for_fsqrt): New function.	(adjust_float_register_busy): New function.	(adjust_double_register_busy): New function.	(restore_float_register_busy): New function.	(restore_double_register_busy): New function.	(frvbf_model_fr500_u_float_arith): New function.	(frvbf_model_fr500_u_float_dual_arith): New function.	(frvbf_model_fr500_u_float_div): New function.	(frvbf_model_fr500_u_float_sqrt): New function.	(frvbf_model_fr500_u_float_compare): New function.	(frvbf_model_fr500_u_float_dual_compare): New function.	(frvbf_model_fr500_u_float_convert): New function.	(frvbf_model_fr500_u_media): New function.	(frvbf_model_fr500_u_barrier): New function.	(frvbf_model_fr500_u_membar): New function.	* frv-sim.h (LEUINT): New macro.	(GET_HSR0_SA): New macro.	(struct frv_interrupt_timer): New struct.	(struct frv_interrupt_state): Add timer fiield.	(frv_queue_external_interrupt): New function.	(frv_external_interrupt): New function.	(frv_profile_info): New function.	(PROFILE_CACHE_IDX): New enumerator.	(PROFILE_PARALLEL_IDX): New enumerator.	(PROFILE_cache): New macro.	(PROFILE_parallel): New macro.	(WITH_PROFILE_CACHE_P): New macro.	(WITH_PROFILE_PARALLEL_P): New macro.	* cache.h (FRV_CACHE): Add last_was_hit field.	* cache.c (get_tag): Use new last_was_hit field.	(frv_cache_read): Ditto.	(frv_cache_write): Ditto.	* arch.h,cpu.c,cpu.h,decode.c,decode.h,model.c,sem.c: Regenerate.1999-12-13  Dave Brolley  <brolley@cygnus.com>	* frv.c (frvbf_h_spr_set_handler): Handle accumulator guards.	(frvbf_clear_all_accumulators): Pass frvbf_h_acc40S_set to	sim_queue_fn_di_write.	(frvbf_media_cut_ss): New function.	* frv-sim.h (frvbf_media_cut_ss): New function.	* cpu.c,cpu.h,decode.c,decode.h,model.c,sem.c: Regenerate.1999-12-13  Dave Brolley  <brolley@cygnus.com>	* pipeline.c (check_insn_major_constraints): F-4, F-8 and M-8 have	no constraints.	* interrupts.c (frv_queue_illegal_instruction_interrupt): Use	FRV_IS_FLOAT_INSN and FRV_IS_MEDIA_INSN.	(frv_detect_insn_access_interrupts): Use FRV_IS_FLOAT_INSN and	FRV_IS_MEDIA_INSN.	* frv.c (frvbf_model_simple_u_exec): New function.	* frv-sim.h (FRV_IS_FLOAT_INSN): Range includes F-8.	(FRV_IS_MEDIA_INSN): Range includes M-8.	* Makefile.in (stamp-cpu): add 'simple' to the list of machines.	* arch.c,arch.h,cpu.h,cpuall.h,decode.c,decode.h,model.c,sem.c:	Regenerate.1999-12-10  Dave Brolley  <brolley@cygnus.com>	* traps.c (check_registers_available): New function.	(clear_ne_flags): Generate register_exception if register(s) not	available.	(frvbf_commit): Generate register_exception if register(s) not	available.	* interrupts.c (frv_program_or_software_interrupt): No need to copy	GR4-GR7 to SR0-SR4.	* frv.c (frvbf_h_psr_set_handler): Special handling for PSR.S and	PSR.ESR.	(frvbf_h_psr_s_set_handler): New function.	(frvbf_h_psr_esr_set_handler): New function.	(frvbf_switch_supervisor_user_context): New function.	(frvbf_scan_result): Reflect latest ISA.	* frv-sim.h (frvbf_h_psr_s_set_handler): New function.	(frvbf_h_psr_esr_set_handler): New function.	(frvbf_switch_supervisor_user_context): New function.	(GET_HSR0_FRN): New Macro.	(GET_HSR0_GRN): New Macro.	(GET_HSR0_FRHE): New Macro.	(GET_HSR0_FRLE): New Macro.	(GET_HSR0_GRHE): New Macro.	(GET_HSR0_GRLE): New Macro.	(frv_ec): New value for FRV_EC_COMMIT_EXCEPTION.	(GET_ESFR): New bit ordering.	(SET_ESFR): New bit ordering.	* cpu.c,cpu.h,decode.c,decode.h,model.c,sem.c: Regenerate.1999-12-10  Michael Meissner  <meissner@cygnus.com>	* Makefile.in (sim-if.o): Add eng.h dependency.1999-12-09  Dave Brolley  <brolley@cygnus.com>	* mloop.in (execute): Pass sc->first_insn_p to @cpu@_model_insn_before.	Pass sc->last_insn_p to @cpu@_model_insn_before.	(main loop): Compute sc->first_insn_p.	* frv.c (frvbf_model_insn_before): Set state variables.	(frvbf_model_insn_after): Count basic cycles. Set state variables.	(frvbf_model_fr500_u_integer): Remove.	* arch.h,cpu.h,decode.h,model.c: Regenerate.1999-12-07  Dave Brolley  <brolley@cygnus.com>	* sim-main.h (cache.h): Include it.	(insn_cache): New member.	(data_cache): New member.	(CPU_INSN_CACHE): New macro.	(CPU_DATA_CACHE): New macro.	* sim-if.c (WANT_CPU): New macro.	(WANT_CPU_FRVBF): New macro.	(sim_open): Call sim_add_option_table. Call frv_cache_init for the	data and insn caches for each cpu.	(sim_close): Call frv_cache_term for the insn and data caches of each	cpu.	* mloop.in (extract): Read insn from the cache.	(main loop): Access the insn cache in order to maintain stats.	* memory.c (data_non_cache_access): New function.	(insn_non_cache_access): New function.	(frvbf_read_mem_QI): Attempt to read from the cache first.	(frvbf_read_mem_UQI): Ditto.	(frvbf_read_mem_HI): Ditto.	(frvbf_read_mem_UHI): Ditto.	(frvbf_read_mem_SI): Ditto.	(frvbf_read_mem_DI): Ditto.	(frvbf_read_mem_DF): Ditto.	(frvbf_read_imem_USI): New function.	(frvbf_write_mem_QI): Write through the cache is it is enabled.	(frvbf_write_mem_UQI): Ditto.	(frvbf_write_mem_HI): Ditto.	(frvbf_write_mem_UHI): Ditto.	(frvbf_write_mem_SI): Ditto.	(frvbf_write_mem_DI): Ditto.	(frvbf_write_mem_DF): Ditto.	(frvbf_mem_set_QI): New function.	(frvbf_mem_set_HI): New function.	(frvbf_mem_set_SI): New function.	(frvbf_mem_set_DI): New function.	(frvbf_mem_set_DF): New function.	(frvbf_mem_set_XI): New function.	* interrupts.c (frv_save_data_written_for_interrupts): Handle	CGEN_FN_MEM_QI_WRITE,	CGEN_FN_MEM_HI_WRITE, CGEN_FN_MEM_SI_WRITE, CGEN_FN_MEM_DI_WRITE,	CGEN_FN_MEM_DF_WRITE, CGEN_FN_MEM_XI_WRITE.	* frv.c (frvbf_load_quad_GR): Call frvbf_read_mem_SI.	Call sim_queue_fn_mem_xi_write.	(frvbf_load_quad_FRint): Call frvbf_read_mem_SI.	Call sim_queue_fn_mem_xi_write.	(frvbf_load_quad_CPR): Call frvbf_read_mem_SI.	Call sim_queue_fn_mem_xi_write.	(frvbf_insn_cache_preload): New function. 	(frvbf_data_cache_preload): New function. 	(frvbf_insn_cache_unlock): New function. 	(frvbf_data_cache_unlock): New function. 	(frvbf_insn_cache_invalidate): New function. 	(frvbf_data_cache_invalidate): New function. 	(frvbf_data_cache_flush): New function. 	* frv-sim.h (sim-options.h): Include it.	(GET_HSR0): New macro.	(SET_HSR0): New macro. 	(GET_HSR0_ICE): New macro. 	(SET_HSR0_ICE): New macro. 	(GET_HSR0_DCE): New macro. 	(SET_HSR0_DCE): New macro. 	(GET_HSR0_CBM): New macro. 	(GET_HSR0_RME): New macro. 	(GET_IHSR8): New macro. 	(GET_IHSR8_NBC): New macro. 	(frvbf_insn_cache_preload): New function.	(frvbf_data_cache_preload): New function.	(frvbf_insn_cache_unlock): New function.	(frvbf_data_cache_unlock): New function.	(frvbf_insn_cache_invalidate): New function.	(frvbf_data_cache_invalidate): New function.	(frvbf_data_cache_flush): New function.	(insn_non_cache_access): New function.	(frvbf_read_imem_USI): New function.	(frvbf_mem_set_QI): New function.	(frvbf_mem_set_HI): New function.	(frvbf_mem_set_SI): New function.	(frvbf_m

⌨️ 快捷键说明

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