1/* 2 * Copyright (c) 2002-2005 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 646 unchanged lines hidden (view full) --- 655// 656BEGIN_DECLARE_SIM_OBJECT_PARAMS(TimingSimpleCPU) 657 658 Param<Counter> max_insts_any_thread; 659 Param<Counter> max_insts_all_threads; 660 Param<Counter> max_loads_any_thread; 661 Param<Counter> max_loads_all_threads; 662 Param<Tick> progress_interval; |
663 SimObjectParam<System *> system; 664 Param<int> cpu_id; 665 666#if FULL_SYSTEM 667 SimObjectParam<TheISA::ITB *> itb; 668 SimObjectParam<TheISA::DTB *> dtb; 669 Param<Tick> profile; 670#else --- 16 unchanged lines hidden (view full) --- 687 "terminate when any thread reaches this inst count"), 688 INIT_PARAM(max_insts_all_threads, 689 "terminate when all threads have reached this inst count"), 690 INIT_PARAM(max_loads_any_thread, 691 "terminate when any thread reaches this load count"), 692 INIT_PARAM(max_loads_all_threads, 693 "terminate when all threads have reached this load count"), 694 INIT_PARAM(progress_interval, "Progress interval"), |
695 INIT_PARAM(system, "system object"), 696 INIT_PARAM(cpu_id, "processor ID"), 697 698#if FULL_SYSTEM 699 INIT_PARAM(itb, "Instruction TLB"), 700 INIT_PARAM(dtb, "Data TLB"), 701 INIT_PARAM(profile, ""), 702#else --- 19 unchanged lines hidden (view full) --- 722 params->max_insts_all_threads = max_insts_all_threads; 723 params->max_loads_any_thread = max_loads_any_thread; 724 params->max_loads_all_threads = max_loads_all_threads; 725 params->progress_interval = progress_interval; 726 params->deferRegistration = defer_registration; 727 params->clock = clock; 728 params->functionTrace = function_trace; 729 params->functionTraceStart = function_trace_start; |
730 params->system = system; 731 params->cpu_id = cpu_id; 732 733#if FULL_SYSTEM 734 params->itb = itb; 735 params->dtb = dtb; 736 params->profile = profile; 737#else 738 params->process = workload; 739#endif 740 741 TimingSimpleCPU *cpu = new TimingSimpleCPU(params); 742 return cpu; 743} 744 745REGISTER_SIM_OBJECT("TimingSimpleCPU", TimingSimpleCPU) 746 |