gem5/cpu/o3
Kevin Lim 36581a5342 Faults generated at fetch are passed to the backend by creating a dummy nop instruction and giving it the fault. This unifies front end faults and normal instruction faults.
cpu/checker/cpu.cc:
    Fixups for fetch fault being sent with the instruction.
cpu/o3/fetch_impl.hh:
cpu/ozone/front_end_impl.hh:
    Send any faults generated at fetch along with a fake nop instruction to the back end.  This avoids having to use direct communication to check if the entire front end has drained; it is naturally handled through the nop's fault being handled when it reaches the head of commit.
cpu/ozone/front_end.hh:
    Add extra status TrapPending.
cpu/ozone/lw_back_end_impl.hh:
    Fetch fault handled through a dummy nop carrying the fetch fault.

    Avoid putting Nops on the exeList.

--HG--
extra : convert_revision : 8d9899748b34c204763a49c48a9b5113864f5789
2006-05-17 14:25:10 -04:00
..
2bit_local_pred.cc O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
2bit_local_pred.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
alpha_cpu.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
alpha_cpu.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
alpha_cpu_builder.cc Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
alpha_cpu_impl.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
alpha_dyn_inst.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
alpha_dyn_inst.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
alpha_dyn_inst_impl.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
alpha_impl.hh Updates for O3 model. 2006-04-22 18:26:48 -04:00
alpha_params.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
bpred_unit.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
bpred_unit.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
bpred_unit_impl.hh Small fixes to O3 model. 2006-05-11 15:39:02 -04:00
btb.cc O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
btb.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
comm.hh Updates for O3 model. 2006-04-22 18:26:48 -04:00
commit.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
commit.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
commit_impl.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
cpu.cc Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
cpu.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
cpu_policy.hh Updates for O3 model. 2006-04-22 18:26:48 -04:00
decode.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
decode.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
decode_impl.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
fetch.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
fetch.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
fetch_impl.hh Faults generated at fetch are passed to the backend by creating a dummy nop instruction and giving it the fault. This unifies front end faults and normal instruction faults. 2006-05-17 14:25:10 -04:00
free_list.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
free_list.hh Updates for O3 model. 2006-04-22 18:26:48 -04:00
fu_pool.cc O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
fu_pool.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
iew.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
iew.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
iew_impl.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
inst_queue.cc shuffle files around for new directory structure 2005-06-04 20:50:10 -04:00
inst_queue.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
inst_queue_impl.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
lsq.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
lsq.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
lsq_impl.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
lsq_unit.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
lsq_unit.hh Small fixes to O3 model. 2006-05-11 15:39:02 -04:00
lsq_unit_impl.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
mem_dep_unit.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
mem_dep_unit.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
mem_dep_unit_impl.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
ras.cc O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
ras.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
regfile.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
rename.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
rename.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
rename_impl.hh Updates for sampler, checker, and general correctness. 2006-05-16 14:06:35 -04:00
rename_map.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
rename_map.hh Updates for O3 model. 2006-04-22 18:26:48 -04:00
rob.cc Update #defines for the O3CPU. Also include the copyright. 2005-06-05 03:25:26 -04:00
rob.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
rob_impl.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
sat_counter.cc O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
sat_counter.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
scoreboard.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
scoreboard.hh Updates for O3 model. 2006-04-22 18:26:48 -04:00
store_set.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
store_set.hh Updates for O3 model. 2006-04-22 18:26:48 -04:00
thread_state.hh O3 CPU now handles being used with the sampler. 2006-05-04 11:36:20 -04:00
tournament_pred.cc Updates for O3 model. 2006-04-22 18:26:48 -04:00
tournament_pred.hh Updates for O3 model. 2006-04-22 18:26:48 -04:00