style: [patch 3/22] reduce include dependencies in some headers
authorBrandon Potter <brandon.potter@amd.com>
Wed, 9 Nov 2016 20:27:40 +0000 (14:27 -0600)
committerBrandon Potter <brandon.potter@amd.com>
Wed, 9 Nov 2016 20:27:40 +0000 (14:27 -0600)
Used cppclean to help identify useless includes and removed them. This
involved erroneously included headers, but also cases where forward
declarations could have been used rather than a full include.

106 files changed:
src/arch/alpha/process.cc
src/arch/alpha/process.hh
src/arch/arm/process.cc
src/arch/arm/process.hh
src/arch/mips/process.cc
src/arch/mips/process.hh
src/arch/power/interrupts.hh
src/arch/power/process.cc
src/arch/power/process.hh
src/arch/power/remote_gdb.cc
src/arch/riscv/interrupts.hh
src/arch/riscv/process.cc
src/arch/riscv/process.hh
src/arch/sparc/process.cc
src/arch/sparc/process.hh
src/arch/x86/isa_traits.hh
src/arch/x86/pagetable.hh
src/arch/x86/process.cc
src/arch/x86/pseudo_inst.cc
src/arch/x86/system.cc
src/arch/x86/system.hh
src/arch/x86/tlb.cc
src/arch/x86/tlb.hh
src/arch/x86/utility.cc
src/arch/x86/utility.hh
src/base/bitfield.hh
src/base/bitunion.hh
src/base/time.cc
src/base/vnc/vncinput.cc
src/cpu/minor/buffers.hh
src/cpu/testers/directedtest/InvalidateGenerator.cc
src/cpu/testers/directedtest/RubyDirectedTester.cc
src/cpu/testers/directedtest/SeriesRequestGenerator.cc
src/cpu/testers/memtest/memtest.cc
src/cpu/testers/rubytest/Check.cc
src/cpu/testers/rubytest/CheckTable.cc
src/cpu/testers/rubytest/RubyTester.cc
src/dev/arm/flash_device.cc
src/dev/mc146818.hh
src/dev/net/dist_iface.hh
src/dev/net/etherbus.cc
src/dev/net/etherswitch.cc
src/gpu-compute/vector_register_file.hh
src/kern/linux/linux.cc
src/kern/linux/linux.hh
src/mem/cache/prefetch/stride.cc
src/mem/external_master.cc
src/mem/external_slave.cc
src/mem/mem_checker.hh
src/mem/multi_level_page_table.hh
src/mem/multi_level_page_table_impl.hh
src/mem/page_table.cc
src/mem/page_table.hh
src/mem/ruby/network/MessageBuffer.hh
src/mem/ruby/structures/AbstractReplacementPolicy.cc
src/mem/se_translating_port_proxy.hh
src/mem/simple_mem.cc
src/python/swig/pyevent.cc
src/sim/SConscript
src/sim/arguments.cc
src/sim/arguments.hh
src/sim/byteswap.hh
src/sim/clock_domain.cc
src/sim/clocked_object.hh
src/sim/cxx_config.hh
src/sim/cxx_config_ini.cc
src/sim/cxx_config_ini.hh
src/sim/cxx_manager.cc
src/sim/drain.hh
src/sim/dvfs_handler.cc
src/sim/dvfs_handler.hh
src/sim/eventq.hh
src/sim/fd_entry.hh
src/sim/init_signals.cc
src/sim/insttracer.hh
src/sim/microcode_rom.cc [new file with mode: 0644]
src/sim/microcode_rom.hh
src/sim/power/mathexpr_powermodel.hh
src/sim/power/power_model.cc
src/sim/power/power_model.hh
src/sim/power/thermal_domain.cc
src/sim/power/thermal_domain.hh
src/sim/power/thermal_entity.hh
src/sim/power/thermal_model.hh
src/sim/probe/probe.cc
src/sim/probe/probe.hh
src/sim/process.cc
src/sim/process.hh
src/sim/process_impl.hh
src/sim/root.cc
src/sim/serialize.hh
src/sim/sim_exit.hh
src/sim/sim_object.cc
src/sim/sim_object.hh
src/sim/simulate.hh
src/sim/stat_register.cc
src/sim/stat_register.hh
src/sim/sub_system.hh
src/sim/syscall_emul.cc
src/sim/syscall_emul.hh
src/sim/syscall_return.hh
src/sim/system.hh
src/sim/ticked_object.cc
src/sim/ticked_object.hh
src/sim/voltage_domain.cc
src/sim/vptr.hh

index be286e30e8f5cc08399d091d4c02c4bc1be199c0..4e9f1e9dd96a189e6ef8f1dc324b8494a5c5317a 100644 (file)
@@ -40,6 +40,7 @@
 #include "mem/page_table.hh"
 #include "sim/byteswap.hh"
 #include "sim/process_impl.hh"
+#include "sim/syscall_return.hh"
 #include "sim/system.hh"
 
 using namespace AlphaISA;
index c41ece8374b10a9a9bcfb7f4c355c591ca855422..e5320564f74dd4a98a72c7c27ade12fa2c072420 100644 (file)
@@ -32,6 +32,7 @@
 #ifndef __ARCH_ALPHA_PROCESS_HH__
 #define __ARCH_ALPHA_PROCESS_HH__
 
+#include "mem/page_table.hh"
 #include "sim/process.hh"
 
 class AlphaLiveProcess : public LiveProcess
index cc3d3e2002db379d121e38250a78492cf239689f..41bfa5b13b7154da16a33791cb6aaef418cd87fa 100644 (file)
@@ -53,6 +53,7 @@
 #include "mem/page_table.hh"
 #include "sim/byteswap.hh"
 #include "sim/process_impl.hh"
+#include "sim/syscall_return.hh"
 #include "sim/system.hh"
 
 using namespace std;
index 39e971c626d81ac8b464a011e6b10b1d4cbaca7d..657f30af8c261c50497585bfeb6dcc171dac3a8e 100644 (file)
@@ -48,6 +48,7 @@
 
 #include "arch/arm/intregs.hh"
 #include "base/loader/object_file.hh"
+#include "mem/page_table.hh"
 #include "sim/process.hh"
 
 class LiveProcess;
index dd97fe7f15cd8becd40c4da8abf37292ef3a7f06..d26850604a122e7e7752eab45876f271e17bea25 100644 (file)
@@ -41,6 +41,7 @@
 #include "mem/page_table.hh"
 #include "sim/process.hh"
 #include "sim/process_impl.hh"
+#include "sim/syscall_return.hh"
 #include "sim/system.hh"
 
 using namespace std;
index 33c02d08b514870904d28aff649fc149bd49d21a..e05118e9fd04bb2bd3268831b64d1fc0245d425e 100644 (file)
@@ -35,6 +35,7 @@
 #include <string>
 #include <vector>
 
+#include "mem/page_table.hh"
 #include "sim/process.hh"
 
 class LiveProcess;
index be5c72151070f6bb905f75d01121bc7545e3e406..e41b4aa95a36418c90d1c8fc5b83f9ca15d5f149 100644 (file)
@@ -35,6 +35,7 @@
 #include "params/PowerInterrupts.hh"
 #include "sim/sim_object.hh"
 
+class BaseCPU;
 class ThreadContext;
 
 namespace PowerISA {
index 880d7dd6f582614883a19f55722e077e6cc1877f..f7cb41dbb74c77e65ab67994036614823c598c25 100644 (file)
@@ -41,6 +41,7 @@
 #include "debug/Stack.hh"
 #include "mem/page_table.hh"
 #include "sim/process_impl.hh"
+#include "sim/syscall_return.hh"
 #include "sim/system.hh"
 
 using namespace std;
index b96c77c70747d01a14661eb8722e36f889361509..cc023e2c9df107b4a7ed0bab62c771dbf2d2fab5 100644 (file)
@@ -36,6 +36,7 @@
 #include <string>
 #include <vector>
 
+#include "mem/page_table.hh"
 #include "sim/process.hh"
 
 class LiveProcess;
index ef10efc18d13a426474ec8823747d53b3a01fc69..1ed7afbc085cb227914bfdd4b4e5f38209af0c74 100644 (file)
  * "Stub" to allow remote cpu to debug over a serial line using gdb.
  */
 
+
 #include "arch/power/remote_gdb.hh"
 
 #include <sys/signal.h>
 #include "cpu/thread_state.hh"
 #include "debug/GDBAcc.hh"
 #include "debug/GDBMisc.hh"
+#include "mem/page_table.hh"
 #include "sim/byteswap.hh"
 
 using namespace std;
index b157a3a8c702c1ca641492ff92b76950dfd65c7c..36eb5290929dfb66c24b8ce57ec75a769dc6fe8f 100644 (file)
@@ -35,6 +35,7 @@
 #include "params/RiscvInterrupts.hh"
 #include "sim/sim_object.hh"
 
+class BaseCPU;
 class ThreadContext;
 
 namespace RiscvISA {
index 7fa84035fb5ccb18260f745bd303328864859876..c1a67ec153daf4125972079261ab301105ec5978 100644 (file)
@@ -44,6 +44,7 @@
 #include "mem/page_table.hh"
 #include "sim/process.hh"
 #include "sim/process_impl.hh"
+#include "sim/syscall_return.hh"
 #include "sim/system.hh"
 
 using namespace std;
index eb0e5f769a905dff8166696e650c407ba356526c..53aa7c00a0d088c277a3d823a91af5515b521702 100644 (file)
@@ -35,6 +35,7 @@
 #include <string>
 #include <vector>
 
+#include "mem/page_table.hh"
 #include "sim/process.hh"
 
 class LiveProcess;
index f863eb0187cb141aa34911669b3c174ce7dcc0c5..c14680a6af60b0b50cf8387a480d2161ae86eac2 100644 (file)
@@ -43,6 +43,7 @@
 #include "debug/Stack.hh"
 #include "mem/page_table.hh"
 #include "sim/process_impl.hh"
+#include "sim/syscall_return.hh"
 #include "sim/system.hh"
 
 using namespace std;
index e9d81367b7ff05d08f352ce0f8da0a5b5bc72f84..23a1a8c52a261860b9cc4bf5b94685b48e09b634 100644 (file)
@@ -35,6 +35,7 @@
 #include <string>
 #include <vector>
 
+#include "mem/page_table.hh"
 #include "sim/byteswap.hh"
 #include "sim/process.hh"
 
index fcdffec1c30871910b242880d61d55c892c35620..88cd16eff08a2e91b7c7288b54f2488d544b4fe9 100644 (file)
@@ -42,6 +42,7 @@
 
 #include "arch/x86/types.hh"
 #include "arch/x86/x86_traits.hh"
+#include "base/compiler.hh"
 #include "base/types.hh"
 
 namespace LittleEndianGuest {}
index 1361109d5b764a3c5ad6c7f22195370ff35d84a9..354fb5a5c363bd27560d514719d5d1d869700e82 100644 (file)
 #include <vector>
 
 #include "base/bitunion.hh"
-#include "base/misc.hh"
 #include "base/types.hh"
 #include "base/trie.hh"
-#include "cpu/thread_context.hh"
 #include "arch/x86/system.hh"
 #include "debug/MMU.hh"
 
 class Checkpoint;
+class ThreadContext;
 
 namespace X86ISA
 {
index 116304fb4a7d51a754aa495321faac08781c89f6..a37468a88a593def2c9476ea4b90d3210532455b 100644 (file)
@@ -59,6 +59,7 @@
 #include "mem/page_table.hh"
 #include "sim/process_impl.hh"
 #include "sim/syscall_desc.hh"
+#include "sim/syscall_return.hh"
 #include "sim/system.hh"
 
 using namespace std;
index edba0474a0966cce12323337ed79363091a8b890..acf310631f0298821776fc887fc9a8911ffa186b 100644 (file)
 #include "arch/x86/pseudo_inst.hh"
 
 #include "arch/x86/system.hh"
+#include "cpu/thread_context.hh"
 #include "debug/PseudoInst.hh"
+#include "mem/se_translating_port_proxy.hh"
 #include "sim/process.hh"
-#include "sim/system.hh"
 
 using namespace X86ISA;
 
index 25a1bd0dfe04accc4c7949bfb77cf2aa5a1894c0..ecde8366a700b89c05f02853ae824a42af7acdd0 100644 (file)
 
 #include "arch/x86/system.hh"
 
-#include "arch/vtophys.hh"
 #include "arch/x86/bios/intelmp.hh"
 #include "arch/x86/bios/smbios.hh"
 #include "arch/x86/isa_traits.hh"
-#include "arch/x86/regs/misc.hh"
-#include "base/intmath.hh"
 #include "base/loader/object_file.hh"
-#include "base/loader/symtab.hh"
-#include "base/trace.hh"
 #include "cpu/thread_context.hh"
-#include "mem/port_proxy.hh"
 #include "params/X86System.hh"
-#include "sim/byteswap.hh"
 
 using namespace LittleEndianGuest;
 using namespace X86ISA;
index 578110a7b6e54f26bc34c393da6adeee8b3a108e..45bc9651cee2ef8dafd1343462f039b5cb90a891 100644 (file)
 #include <vector>
 
 #include "arch/x86/regs/misc.hh"
-#include "base/loader/symtab.hh"
-#include "cpu/pc_event.hh"
-#include "kern/system_events.hh"
 #include "params/X86System.hh"
-#include "sim/sim_object.hh"
 #include "sim/system.hh"
 
 namespace X86ISA
index 2e24b20e55d72e5d96750de6c9b8ecf49c81e446..a5e8f5524827cbde50c352dfc0c7035a8a4d22bb 100644 (file)
 #include "arch/generic/mmapped_ipr.hh"
 #include "arch/x86/faults.hh"
 #include "arch/x86/insts/microldstop.hh"
-#include "arch/x86/pagetable.hh"
 #include "arch/x86/pagetable_walker.hh"
 #include "arch/x86/regs/misc.hh"
 #include "arch/x86/regs/msr.hh"
 #include "arch/x86/x86_traits.hh"
-#include "base/bitfield.hh"
 #include "base/trace.hh"
-#include "cpu/base.hh"
 #include "cpu/thread_context.hh"
 #include "debug/TLB.hh"
-#include "mem/packet_access.hh"
 #include "mem/page_table.hh"
 #include "mem/request.hh"
 #include "sim/full_system.hh"
index 53f61dcbc2023dab84a93f8d85b84d93e05d22b2..a134ad4275d40123593b51b8975d7f89b2561bf0 100644 (file)
 #define __ARCH_X86_TLB_HH__
 
 #include <list>
-#include <string>
 #include <vector>
 
 #include "arch/generic/tlb.hh"
-#include "arch/x86/regs/segment.hh"
 #include "arch/x86/pagetable.hh"
 #include "base/trie.hh"
-#include "mem/mem_object.hh"
 #include "mem/request.hh"
 #include "params/X86TLB.hh"
-#include "sim/sim_object.hh"
 
 class ThreadContext;
-class Packet;
 
 namespace X86ISA
 {
index ae0a833e6aecfc55c6259473e9a7834fe83d0905..33b53ca925c6ad6d0fc1e42d751409dba9e08e59 100644 (file)
 
 #include "arch/x86/interrupts.hh"
 #include "arch/x86/registers.hh"
-#include "arch/x86/tlb.hh"
 #include "arch/x86/x86_traits.hh"
 #include "cpu/base.hh"
 #include "fputils/fp80.h"
-#include "sim/system.hh"
+#include "sim/full_system.hh"
 
 namespace X86ISA {
 
index 87bed9762c55b2fbc5b6776b8dc03ba8fa7a8942..87d5cbb6c91349b558d96fde4179a8b192aa3653 100644 (file)
 #ifndef __ARCH_X86_UTILITY_HH__
 #define __ARCH_X86_UTILITY_HH__
 
-#include "arch/x86/regs/misc.hh"
-#include "arch/x86/types.hh"
-#include "base/misc.hh"
-#include "base/types.hh"
 #include "cpu/static_inst.hh"
 #include "cpu/thread_context.hh"
 #include "sim/full_system.hh"
 
-class ThreadContext;
-
 namespace X86ISA
 {
 
index 5a98b13c75e219383499e5ce4de467a1fe7389ad..64f192f6d1c9413dd14665ae9b61bda69f19a997 100644 (file)
@@ -32,7 +32,7 @@
 #ifndef __BASE_BITFIELD_HH__
 #define __BASE_BITFIELD_HH__
 
-#include "base/types.hh"
+#include <inttypes.h>
 
 /**
  * Generate a 64-bit mask of 'nbits' 1s, right justified.
index 35448ed243bcc2f700b2525188d7b7b6a601263e..306899563685b8c0fb44186c9068988c101a7062 100644 (file)
@@ -32,7 +32,6 @@
 #define __BASE_BITUNION_HH__
 
 #include "base/bitfield.hh"
-#include "base/types.hh"
 
 //      The following implements the BitUnion system of defining bitfields
 //on top of an underlying class. This is done through the pervasive use of
index 5ee286b9c7810c6879ea5838f76a7959e6fea848..5509bccaf25912f33d50068baa714cf1e01b5230 100644 (file)
@@ -35,6 +35,7 @@
 #include <iostream>
 #include <sstream>
 
+#include "base/misc.hh"
 #include "config/use_posix_clock.hh"
 #include "sim/core.hh"
 #include "sim/serialize.hh"
index 5021d407a6150671c91c4d77de5496d66dc3a80b..541b77143a9e390662fd930f819f79c4ababd099 100644 (file)
@@ -46,7 +46,8 @@
 
 #include <sys/types.h>
 
-#include "base/output.hh" //simout
+#include "base/misc.hh"
+#include "base/output.hh"
 #include "base/trace.hh"
 #include "debug/VNC.hh"
 
index f4ae91a70f9e508e789ea49f6cd5c00283d6acc4..924d7d2af456d4c213e2a78f605f78de099bc47b 100644 (file)
@@ -50,6 +50,7 @@
 #include <queue>
 #include <sstream>
 
+#include "base/misc.hh"
 #include "cpu/minor/trace.hh"
 #include "cpu/activity.hh"
 #include "cpu/timebuf.hh"
index 20ea4f904f68ae8ef5584a8521bc6b7f310c4d59..c5c48f1adf4a0139a4fbb1430bd86acc0d56ddb3 100644 (file)
@@ -29,6 +29,7 @@
 
 #include "cpu/testers/directedtest/InvalidateGenerator.hh"
 
+#include "base/trace.hh"
 #include "cpu/testers/directedtest/DirectedGenerator.hh"
 #include "cpu/testers/directedtest/RubyDirectedTester.hh"
 #include "debug/DirectedTest.hh"
index 9b4e4543c1a70298fedd8094fbdbed5171af9465..667d50ffda15807b9bf1954244439fe348dbcdb5 100644 (file)
@@ -41,6 +41,7 @@
 
 #include "cpu/testers/directedtest/RubyDirectedTester.hh"
 
+#include "base/trace.hh"
 #include "cpu/testers/directedtest/DirectedGenerator.hh"
 #include "debug/DirectedTest.hh"
 #include "sim/sim_exit.hh"
index 966ee4974cca807eac74fc89357bd476bdb52589..386a498937a40aa02945d4c781569d1fca8954c0 100644 (file)
@@ -30,6 +30,7 @@
 #include "cpu/testers/directedtest/SeriesRequestGenerator.hh"
 
 #include "base/random.hh"
+#include "base/trace.hh"
 #include "cpu/testers/directedtest/DirectedGenerator.hh"
 #include "cpu/testers/directedtest/RubyDirectedTester.hh"
 #include "debug/DirectedTest.hh"
index 5dc8b7427c786a5ca7a1760cef1030a61effbb33..46387fa01c2342328d48b4b1d64880b5173fbe28 100644 (file)
@@ -46,6 +46,7 @@
 
 #include "base/random.hh"
 #include "base/statistics.hh"
+#include "base/trace.hh"
 #include "debug/MemTest.hh"
 #include "mem/mem_object.hh"
 #include "sim/sim_exit.hh"
index f685d65be05d3cb4a3f0c9def1b855d7f70ab7e5..e68196c65aeb5a60fa4edb0b5f68782cb6033589 100644 (file)
@@ -30,6 +30,7 @@
 #include "cpu/testers/rubytest/Check.hh"
 
 #include "base/random.hh"
+#include "base/trace.hh"
 #include "debug/RubyTest.hh"
 #include "mem/ruby/common/SubBlock.hh"
 
index 54248095b40400addce08019696af61685b4f73a..843a7cf9da5271cb54058450aa47927e3159c00b 100644 (file)
@@ -31,6 +31,7 @@
 
 #include "base/intmath.hh"
 #include "base/random.hh"
+#include "base/trace.hh"
 #include "cpu/testers/rubytest/Check.hh"
 #include "debug/RubyTest.hh"
 
index 61de05235e25b65cdfd33c67511c7d287b204d57..baf2b7e5bf84062bc5932361b73a5d953a3a17a5 100644 (file)
@@ -42,6 +42,7 @@
 #include "cpu/testers/rubytest/RubyTester.hh"
 
 #include "base/misc.hh"
+#include "base/trace.hh"
 #include "cpu/testers/rubytest/Check.hh"
 #include "debug/RubyTest.hh"
 #include "mem/ruby/common/SubBlock.hh"
index 63d232e8097234e2503f1234ea23c68b6c1442d2..3dc8d5bd20381027bbdd93cff3283b64548ff475 100644 (file)
@@ -54,6 +54,7 @@
 
 #include "dev/arm/flash_device.hh"
 
+#include "base/trace.hh"
 #include "debug/Drain.hh"
 
 /**
index e19040ec32ca0947f61f9da04f3cbc5cd02dc530..8eb301c457424a04943a9d23891d08b39fc1ecf6 100644 (file)
@@ -34,6 +34,7 @@
 #define __DEV_MC146818_HH__
 
 #include "base/bitunion.hh"
+#include "base/misc.hh"
 #include "sim/eventq_impl.hh"
 
 /** Real-Time Clock (MC146818) */
index a56b9a3bb28b6dccd8e860e1275917a001090483..c02c39530a66755fe147a570c2b72b4e0ffcee6f 100644 (file)
@@ -83,6 +83,7 @@
 #include <thread>
 #include <utility>
 
+#include "base/misc.hh"
 #include "dev/net/dist_packet.hh"
 #include "dev/net/etherpkt.hh"
 #include "sim/core.hh"
index 042c4ec84fb549eeed5ad4be432a17037dfba12a..7ccb8a4ac41d0eba0a152dc6f8c9eb944c8486a7 100644 (file)
@@ -38,6 +38,7 @@
 #include <string>
 #include <vector>
 
+#include "base/misc.hh"
 #include "base/trace.hh"
 #include "debug/Ethernet.hh"
 #include "debug/EthernetData.hh"
index c9698cf636ca849b30d17081533e48454adc5115..995e29a0ceca7799e52dc870bb34f84c4e628741 100644 (file)
@@ -36,7 +36,9 @@
 #include "dev/net/etherswitch.hh"
 
 #include "base/random.hh"
+#include "base/trace.hh"
 #include "debug/EthernetAll.hh"
+#include "sim/core.hh"
 
 using namespace std;
 
index 360b2fb3c445d756ec8233426002a59b4a430d91..0842c369517538c03fae25b898990f35bfc1b964 100644 (file)
@@ -39,6 +39,7 @@
 #include <list>
 
 #include "base/statistics.hh"
+#include "base/trace.hh"
 #include "base/types.hh"
 #include "debug/GPUVRF.hh"
 #include "gpu-compute/vector_register_state.hh"
index ef5b4417fbca8cf88251ba1d83e40afec9eceef4..6618fdbd989490b82909378e6e0fd61033dead46 100644 (file)
@@ -33,7 +33,6 @@
 #include <cstdio>
 #include <string>
 
-#include "cpu/thread_context.hh"
 #include "debug/SyscallVerbose.hh"
 #include "sim/process.hh"
 #include "sim/system.hh"
index 7833419484684889df39c10d615d7407f3c9e9b3..52a3bcd7bcacb5f2bb6e6a64ced2fe5f2f4caa8b 100644 (file)
@@ -36,9 +36,9 @@
 #include <string>
 
 #include "kern/operatingsystem.hh"
+#include "sim/process.hh"
 
 class ThreadContext;
-class LiveProcess;
 
 ///
 /// This class encapsulates the types, structures, constants,
index e9c83f2ffa91c75a8fad7a43e2359372e5314e96..f2679a2924a5417bc5e71f4b887c2c64e5430465 100644 (file)
@@ -49,6 +49,7 @@
 #include "mem/cache/prefetch/stride.hh"
 
 #include "base/random.hh"
+#include "base/trace.hh"
 #include "debug/HWPrefetch.hh"
 
 StridePrefetcher::StridePrefetcher(const StridePrefetcherParams *p)
index 94fdc39cfb33b60b19deb795749db9b25b21ea52..1430199502f610fb5f0b77b1efe4b2f65911acbd 100644 (file)
@@ -43,6 +43,7 @@
 #include <cctype>
 #include <iomanip>
 
+#include "base/trace.hh"
 #include "debug/ExternalPort.hh"
 
 std::map<std::string, ExternalMaster::Handler *>
index 2d7ba1a653e07ae2aabb66c8bbd0d6e0636b4b64..990e3561a23da7df3904d63fa7531bd2f4c349ad 100644 (file)
@@ -42,6 +42,7 @@
 #include <cctype>
 #include <iomanip>
 
+#include "base/trace.hh"
 #include "debug/ExternalPort.hh"
 
 /** Implement a `stub' port which just responds to requests by printing
index 6ceca74a7cd800785036fc9293d40ff7de608bbd..7de4c17b72cc8aa66f1631145e76320ab4ae0e3b 100644 (file)
@@ -48,6 +48,7 @@
 #include <vector>
 
 #include "base/misc.hh"
+#include "base/trace.hh"
 #include "base/types.hh"
 #include "debug/MemChecker.hh"
 #include "params/MemChecker.hh"
index a1d3fbc3961d1c7933f3fcc360407e4412f34486..a69d6ce7f1e81648a9c563109c1855f9f63425e2 100644 (file)
 
 #include <string>
 
-#include "arch/isa_traits.hh"
 #include "arch/tlb.hh"
 #include "base/types.hh"
 #include "config/the_isa.hh"
 #include "mem/page_table.hh"
-#include "sim/serialize.hh"
-#include "sim/system.hh"
+
+class System;
 
 /**
  * This class implements an in-memory multi-level page table that can be
index 6102405629a86ad00b56c323a6c71928e2a562d3..07ac92406bee501bb403dfa66c52770ff890261a 100644 (file)
  * @file
  * Definitions of page table
  */
-#include <fstream>
-#include <map>
 #include <string>
 
-#include "base/bitfield.hh"
-#include "base/intmath.hh"
+#include "arch/isa_traits.hh"
+#include "arch/tlb.hh"
 #include "base/trace.hh"
 #include "config/the_isa.hh"
 #include "debug/MMU.hh"
 #include "mem/multi_level_page_table.hh"
-#include "sim/faults.hh"
-#include "sim/sim_object.hh"
+#include "mem/page_table.hh"
 
 using namespace std;
 using namespace TheISA;
index f47227f5ab5148f0b8a577a8c12937c511c762d3..8ff6408374f355498fbbb3f1144b8508f02bf33d 100644 (file)
  */
 #include "mem/page_table.hh"
 
-#include <fstream>
-#include <map>
-#include <memory>
 #include <string>
 
-#include "base/bitfield.hh"
-#include "base/intmath.hh"
 #include "base/trace.hh"
 #include "config/the_isa.hh"
 #include "debug/MMU.hh"
 #include "sim/faults.hh"
-#include "sim/sim_object.hh"
+#include "sim/serialize.hh"
 
 using namespace std;
 using namespace TheISA;
index 645548263e60901f6f874c93c18fb49c22961ae3..9b24c0efa24734da62f1d25013a0da6796acfd59 100644 (file)
 
 #include "arch/isa_traits.hh"
 #include "arch/tlb.hh"
+#include "base/intmath.hh"
 #include "base/types.hh"
 #include "config/the_isa.hh"
 #include "mem/request.hh"
 #include "sim/serialize.hh"
-#include "sim/system.hh"
 
 class ThreadContext;
+class System;
 
 /**
  * Declaration of base class for page table
index e6ec5ac4b11803f007662a6480ae5492409aa841..6694830b0a263a28a5e5a39a041ac4d9917f75bd 100644 (file)
@@ -41,6 +41,7 @@
 #include <string>
 #include <vector>
 
+#include "base/trace.hh"
 #include "debug/RubyQueue.hh"
 #include "mem/ruby/common/Address.hh"
 #include "mem/ruby/common/Consumer.hh"
index 5abd55083138bc1676d7633579f48dfb2f26bbcb..05304dc84b1757c53c25ea0606098e44e46b1c42 100644 (file)
@@ -30,6 +30,8 @@
 
 #include "mem/ruby/structures/AbstractReplacementPolicy.hh"
 
+#include "base/misc.hh"
+
 AbstractReplacementPolicy::AbstractReplacementPolicy(const Params * p)
   : SimObject(p)
 {
index 58d0c9bcdff71507f6dc9cfec7c19f8f32c87cf6..bb823a75b9c0e5bce4a7856a85272e2020e96d13 100644 (file)
@@ -45,9 +45,9 @@
 #ifndef __MEM_SE_TRANSLATING_PORT_PROXY_HH__
 #define __MEM_SE_TRANSLATING_PORT_PROXY_HH__
 
-#include "mem/page_table.hh"
 #include "mem/port_proxy.hh"
 
+class PageTableBase;
 class Process;
 
 /**
index f3a01b5b09e5b4dff82024a87e237c979414a873..f524d01abad720a52c3574ab006a3369f24dc8b4 100644 (file)
@@ -45,6 +45,7 @@
 #include "mem/simple_mem.hh"
 
 #include "base/random.hh"
+#include "base/trace.hh"
 #include "debug/Drain.hh"
 
 using namespace std;
index 24760fc65ba302d8ad511710e9f03c3192ce54e4..53f3a3397f2493e5dfd1d2b3072fb890a00a3745 100644 (file)
@@ -32,6 +32,7 @@
 
 #include <Python.h>
 
+#include "base/misc.hh"
 #include "sim/async.hh"
 #include "sim/eventq.hh"
 
index 61e4df96668e4bf057e9bcdbbdd20f9a3fe5b9b5..7fec029f19bae77b32f1cd2b816283271a8e2070 100644 (file)
@@ -82,6 +82,9 @@ if env['TARGET_ISA'] != 'null':
     Source('syscall_emul.cc')
     Source('syscall_desc.cc')
 
+if env['TARGET_ISA'] != 'x86':
+    Source('microcode_rom.cc')
+
 DebugFlag('Checkpoint')
 DebugFlag('Config')
 DebugFlag('CxxConfig')
index 5d6ded9eefbd692acf837e0269aee07a0dca550c..4d00d2cf62e8b86c14f3687de606b69181337579 100644 (file)
@@ -32,7 +32,6 @@
 
 #include "arch/utility.hh"
 #include "config/the_isa.hh"
-#include "cpu/thread_context.hh"
 
 Arguments::Data::~Data()
 {
index 1658800951347f85f33841c8872ab199de737ee2..498527ca21f7218ed5aef78e121ea20ecff68b4c 100644 (file)
@@ -34,7 +34,6 @@
 #include <cassert>
 #include <memory>
 
-#include "base/types.hh"
 #include "mem/fs_translating_port_proxy.hh"
 
 class ThreadContext;
index 7e5d6809ecdc051ada9d49c123bfbba1c2d43069..23786bb713428a9804178bf20c11c32b827957fd 100644 (file)
@@ -38,7 +38,6 @@
 #define __SIM_BYTE_SWAP_HH__
 
 #include "base/bigint.hh"
-#include "base/misc.hh"
 #include "base/types.hh"
 
 // This lets us figure out what the byte order of the host system is
index 5b05ced9b6d7ed843d1df40326828840beb92fbf..46dbcbaac574d924872dc19f2082128997559601 100644 (file)
@@ -47,6 +47,7 @@
 #include <algorithm>
 #include <functional>
 
+#include "base/trace.hh"
 #include "debug/ClockDomain.hh"
 #include "params/ClockDomain.hh"
 #include "params/DerivedClockDomain.hh"
index d85d226c92c7f65182cc9e29bb361eff04fac029..b89e1ce13a8eacbccc2a96e7632861389cca92c1 100644 (file)
@@ -51,7 +51,6 @@
 
 #include "base/callback.hh"
 #include "base/intmath.hh"
-#include "base/misc.hh"
 #include "enums/PwrState.hh"
 #include "params/ClockedObject.hh"
 #include "sim/core.hh"
index da2752b4b14f7699d1ec97e48b7692a409c25ef0..8860e029731847dc8e8042fa59f4e2a801b9f5e6 100644 (file)
@@ -57,8 +57,6 @@
 #include <string>
 #include <vector>
 
-#include "mem/port.hh"
-#include "params/SimObject.hh"
 #include "sim/sim_object.hh"
 
 class CxxConfigParams;
index 3df6d72d4909c043d9f8b50992ea84accfcf1672..41ad8e6f529bdec95f1bcb6473944132056e3aa6 100644 (file)
@@ -39,6 +39,8 @@
 
 #include "sim/cxx_config_ini.hh"
 
+#include "base/str.hh"
+
 bool
 CxxIniFile::getParam(const std::string &object_name,
     const std::string &param_name,
index 9ea61976e1ab31f1de3dbb4b2c39d7c39600a118..84900a62ec957c7249b181ede1db95963559cfb5 100644 (file)
@@ -47,7 +47,6 @@
 #define __SIM_CXX_CONFIG_INI_HH__
 
 #include "base/inifile.hh"
-#include "base/str.hh"
 #include "sim/cxx_config.hh"
 
 /** CxxConfigManager interface for using .ini files */
index a679c61050bd5d33b867a25e11efd9a733280f2c..bb6c6a8077cabec5c3e02e8d7a328c7a4b588da0 100644 (file)
@@ -43,6 +43,7 @@
 #include <sstream>
 
 #include "base/str.hh"
+#include "base/trace.hh"
 #include "debug/CxxConfig.hh"
 #include "mem/mem_object.hh"
 #include "sim/serialize.hh"
index 370217bd6a156372e1760ca523a8711e10291f9e..b3145e7ed6022536acd4185af1459068ae20ec85 100644 (file)
@@ -44,8 +44,6 @@
 #include <mutex>
 #include <unordered_set>
 
-#include "base/flags.hh"
-
 class Drainable;
 
 #ifndef SWIG // SWIG doesn't support strongly typed enums
index 254720c5f2ddc590b9057a08c44b620940451a32..5ccd50bcdfd98c72d6f4de64b998e0d0d66e96d3 100644 (file)
 #include <utility>
 
 #include "base/misc.hh"
+#include "base/trace.hh"
 #include "debug/DVFS.hh"
 #include "params/DVFSHandler.hh"
 #include "sim/clock_domain.hh"
+#include "sim/eventq_impl.hh"
 #include "sim/stat_control.hh"
 #include "sim/voltage_domain.hh"
 
@@ -170,6 +172,30 @@ DVFSHandler::UpdateEvent::updatePerfLevel()
     d->perfLevel(perfLevelToSet);
 }
 
+double
+DVFSHandler::voltageAtPerfLevel(DomainID domain_id, PerfLevel perf_level) const
+{
+    VoltageDomain *d = findDomain(domain_id)->voltageDomain();
+    assert(d);
+    PerfLevel n = d->numVoltages();
+    if (perf_level < n)
+        return d->voltage(perf_level);
+
+    // Request outside of the range of the voltage domain
+    if (n == 1) {
+        DPRINTF(DVFS, "DVFS: Request for perf-level %i for single-point "\
+                "voltage domain %s.  Returning voltage at level 0: %.2f "\
+                "V\n", perf_level, d->name(), d->voltage(0));
+        // Special case for single point voltage domain -> same voltage for
+        // all points
+        return d->voltage(0);
+    }
+
+    warn("DVFSHandler %s reads illegal voltage level %u from "\
+         "VoltageDomain %s. Returning 0 V\n", name(), perf_level, d->name());
+    return 0.;
+}
+
 void
 DVFSHandler::serialize(CheckpointOut &cp) const
 {
index f587f7c25f25085dcc84c5695685d402f9d59d04..23ac4bf50e54a11bf8de658ad71aed29f9048314 100644 (file)
 #include <vector>
 
 #include "debug/DVFS.hh"
-#include "params/ClockDomain.hh"
 #include "params/DVFSHandler.hh"
-#include "params/VoltageDomain.hh"
 #include "sim/clock_domain.hh"
 #include "sim/eventq.hh"
 #include "sim/sim_object.hh"
-#include "sim/voltage_domain.hh"
 
 /**
  * DVFS Handler class, maintains a list of all the domains it can handle.
@@ -156,28 +153,7 @@ class DVFSHandler : public SimObject
      * @return Voltage for the requested performance level of the respective
      * domain
      */
-    double voltageAtPerfLevel(DomainID domain_id, PerfLevel perf_level) const
-    {
-        VoltageDomain *d = findDomain(domain_id)->voltageDomain();
-        assert(d);
-        PerfLevel n = d->numVoltages();
-        if (perf_level < n)
-            return d->voltage(perf_level);
-
-        // Request outside of the range of the voltage domain
-        if (n == 1) {
-            DPRINTF(DVFS, "DVFS: Request for perf-level %i for single-point "\
-                    "voltage domain %s.  Returning voltage at level 0: %.2f "\
-                    "V\n", perf_level, d->name(), d->voltage(0));
-            // Special case for single point voltage domain -> same voltage for
-            // all points
-            return d->voltage(0);
-        }
-
-        warn("DVFSHandler %s reads illegal voltage level %u from "\
-             "VoltageDomain %s. Returning 0 V\n", name(), perf_level, d->name());
-        return 0.;
-    }
+    double voltageAtPerfLevel(DomainID domain_id, PerfLevel perf_level) const;
 
     /**
      * Get the total number of available performance levels.
index eeb39215371bbbfe017ecea2e3ca20eaa494f22c..0b76491caae922fc16f182d00f7e47a060a15645 100644 (file)
@@ -47,7 +47,6 @@
 #include <string>
 
 #include "base/flags.hh"
-#include "base/misc.hh"
 #include "base/types.hh"
 #include "debug/Event.hh"
 #include "sim/serialize.hh"
index 0cbb769b5b414e754d59c88b1cd6eb5f49ed8969..fd68ba50b378feb2e77e82fd244aac272d4e8cd3 100644 (file)
@@ -35,7 +35,9 @@
 #include <ostream>
 #include <string>
 
-#include "sim/emul_driver.hh"
+#include "sim/serialize.hh"
+
+class EmulatedDriver;
 
 /**
  * FDEntry is used to manage a single file descriptor mapping and metadata
index 81dba189b0ac34f6df53e46b921cbb944a402d0a..5acfe45fdff240d3bc9b7036d702e0a61628365b 100644 (file)
@@ -52,6 +52,7 @@
 
 #include "base/atomicio.hh"
 #include "base/cprintf.hh"
+#include "base/misc.hh"
 #include "sim/async.hh"
 #include "sim/backtrace.hh"
 #include "sim/core.hh"
index 7b15d1f91133bb2d3d969b462f508f4c29d4ca03..caeee520dd51ab0a1a7fae1439280f81e075f5b3 100644 (file)
@@ -45,9 +45,8 @@
 #define __INSTRECORD_HH__
 
 #include "base/bigint.hh"
-#include "base/trace.hh"
 #include "base/types.hh"
-#include "cpu/inst_seq.hh"      // for InstSeqNum
+#include "cpu/inst_seq.hh"
 #include "cpu/static_inst.hh"
 #include "sim/sim_object.hh"
 
diff --git a/src/sim/microcode_rom.cc b/src/sim/microcode_rom.cc
new file mode 100644 (file)
index 0000000..d050919
--- /dev/null
@@ -0,0 +1,40 @@
+/*
+ * Copyright (c) 2008 The Regents of The University of Michigan
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met: redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer;
+ * redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution;
+ * neither the name of the copyright holders nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Authors: Gabe Black
+ */
+
+#include "sim/microcode_rom.hh"
+
+#include "base/misc.hh"
+#include "cpu/static_inst_fwd.hh"
+
+StaticInstPtr
+MicrocodeRom::fetchMicroop(MicroPC micropc, StaticInstPtr curMacroop)
+{
+    panic("ROM based microcode isn't implemented.\n");
+}
index be10de86b8dda21bcfa5e7af2585c9e2bd436074..d45c0870a353ec63a3c1928407d013e3568bf182 100644 (file)
  * anything more.
  */
 
-#include "base/misc.hh"
-#include "cpu/static_inst.hh"
+#include <inttypes.h>
+
+#include "cpu/static_inst_fwd.hh"
+
+typedef uint16_t MicroPC;
 
 class MicrocodeRom
 {
   public:
-    StaticInstPtr
-    fetchMicroop(MicroPC micropc, StaticInstPtr curMacroop)
-    {
-        panic("ROM based microcode isn't implemented.\n");
-    }
+    StaticInstPtr fetchMicroop(MicroPC micropc, StaticInstPtr curMacroop);
 };
 
 #endif // __SIM_MICROCODE_ROM_HH__
index 563b1fa7ffd4a783fbfdb2fbbbcdb41023ecb1b8..5c121c7b644c1308c3c6398d343bd721d47114b5 100644 (file)
 
 #include <unordered_map>
 
-#include "base/statistics.hh"
 #include "params/MathExprPowerModel.hh"
 #include "sim/mathexpr.hh"
 #include "sim/power/power_model.hh"
-#include "sim/sim_object.hh"
+
+namespace Stats {
+    class Info;
+}
 
 /**
  * A Equation power model. The power is represented as a combination
index bd06ced702aaddb482b8b1218f57a5cf09483f52..5f810fe600d2cc7d813639d494ac7f7498eb88a0 100644 (file)
@@ -42,7 +42,7 @@
 #include "base/statistics.hh"
 #include "params/PowerModel.hh"
 #include "params/PowerModelState.hh"
-#include "sim/sim_object.hh"
+#include "sim/clocked_object.hh"
 #include "sim/sub_system.hh"
 
 PowerModelState::PowerModelState(const Params *p)
index a2ddcea180129ce327036ea3787563c9b0603892..976c0543f888c089ab1f2521c3cbf0e22b1ebcfc 100644 (file)
 #include "base/statistics.hh"
 #include "params/PowerModel.hh"
 #include "params/PowerModelState.hh"
-#include "sim/power/thermal_model.hh"
 #include "sim/probe/probe.hh"
-#include "sim/sim_object.hh"
+
+class SimObject;
+class ClockedObject;
 
 /**
  * A PowerModelState is an abstract class used as interface to get power
index 11f48371ea1bbd5365f772bb8b37c9585ce607b4..0724ee80fb135550f7a0b611590c374323c89cf7 100644 (file)
 #include "base/statistics.hh"
 #include "debug/ThermalDomain.hh"
 #include "params/ThermalDomain.hh"
+#include "sim/clocked_object.hh"
+#include "sim/linear_solver.hh"
 #include "sim/power/thermal_model.hh"
-#include "sim/sim_object.hh"
+#include "sim/probe/probe.hh"
+#include "sim/sub_system.hh"
 
 ThermalDomain::ThermalDomain(const Params *p)
     : SimObject(p), _initTemperature(p->initial_temperature),
index 9236a2437a93ac9041f8f6ff6dd9eb4fa7c79092..f385994f8e5e182275b6c8008a42108f1ab5e80c 100644 (file)
 #include "base/statistics.hh"
 #include "params/ThermalDomain.hh"
 #include "sim/power/thermal_entity.hh"
-#include "sim/probe/probe.hh"
 #include "sim/sim_object.hh"
-#include "sim/sub_system.hh"
 
+class SubSystem;
 class ThermalNode;
+template <class T> class ProbePointArg;
 
 /**
  * A ThermalDomain is used to group objects under that operate under
index 77846b67a3308d06bf6a2e3db36cd896817a76cc..fb703961fd5e2ee5d62c9495a0480e84b7717385 100644 (file)
@@ -40,8 +40,7 @@
 #ifndef __SIM_THERMAL_ENTITY_HH__
 #define __SIM_THERMAL_ENTITY_HH__
 
-#include "sim/linear_solver.hh"
-
+class LinearEquation;
 class ThermalNode;
 
 /**
index 64f831982cec2ff4a97c27975f363bf397e5e72d..32f34f109f39249bf1df1da666777771a9db4c03 100644 (file)
@@ -42,7 +42,6 @@
 
 #include <vector>
 
-#include "base/statistics.hh"
 #include "params/ThermalCapacitor.hh"
 #include "params/ThermalModel.hh"
 #include "params/ThermalReference.hh"
index 5f20f78610c5519cd06f9d8cc7aa1b26086e55f0..f0522bef9e8557b2abc53e78b9c87af047847a54 100644 (file)
@@ -40,6 +40,7 @@
 #include "sim/probe/probe.hh"
 
 #include "debug/ProbeVerbose.hh"
+#include "params/ProbeListenerObject.hh"
 
 ProbePoint::ProbePoint(ProbeManager *manager, const std::string& _name)
     : name(_name)
index 8f68c044148afe6c9d1047ef2d92a963a016d5c9..e391f016b2515093241a65215b17051365dc4182 100644 (file)
 #include <string>
 #include <vector>
 
+#include "base/compiler.hh"
 #include "base/trace.hh"
-#include "params/ProbeListenerObject.hh"
 #include "sim/sim_object.hh"
 
 /** Forward declare the ProbeManager. */
 class ProbeManager;
 class ProbeListener;
+class ProbeListenerObjectParams;
 
 /**
  * Name space containing shared probe point declarations.
index bead9d36276ccf0fff0786876e5188aff232d96e..560870c96560f5173ff9d9a05ddf240eaa85be31 100644 (file)
 #include <fcntl.h>
 #include <unistd.h>
 
-#include <cstdio>
+#include <array>
 #include <map>
 #include <string>
+#include <vector>
 
 #include "base/intmath.hh"
 #include "base/loader/object_file.hh"
 #include "base/statistics.hh"
 #include "config/the_isa.hh"
 #include "cpu/thread_context.hh"
-#include "mem/multi_level_page_table.hh"
 #include "mem/page_table.hh"
 #include "mem/se_translating_port_proxy.hh"
 #include "params/LiveProcess.hh"
 #include "params/Process.hh"
-#include "sim/debug.hh"
-#include "sim/process_impl.hh"
-#include "sim/stats.hh"
+#include "sim/emul_driver.hh"
 #include "sim/syscall_desc.hh"
 #include "sim/system.hh"
 
index d9762c052d1cb8a389048fd529c06faa90f6f91f..30852f6afb24d428a0b164c10c5ea014c8b5b484 100644 (file)
@@ -34,6 +34,7 @@
 #define __PROCESS_HH__
 
 #include <array>
+#include <map>
 #include <string>
 #include <vector>
 
 #include "mem/se_translating_port_proxy.hh"
 #include "sim/fd_entry.hh"
 #include "sim/sim_object.hh"
-#include "sim/syscall_return.hh"
 
-class PageTable;
-struct ProcessParams;
 struct LiveProcessParams;
+struct ProcessParams;
+
+class EmulatedDriver;
+class PageTableBase;
 class SyscallDesc;
+class SyscallReturn;
 class System;
 class ThreadContext;
-class EmulatedDriver;
 
 template<class IntType>
 struct AuxVector
index b1905834b342af76d6b0a8e25cbdbe728698c658..3f3d6ae15b9c2d32aed9fb07edc41a17c99c90bd 100644 (file)
@@ -36,7 +36,6 @@
 #include <vector>
 
 #include "mem/se_translating_port_proxy.hh"
-#include "sim/byteswap.hh"
 
 //This needs to be templated for cases where 32 bit pointers are needed.
 template<class AddrType>
index 6787564dd4d0f5ec4389f543b574da410efa1aaa..752632b5eed94967e62c7b77ec35aa8c0f8f1a25 100644 (file)
  *          Gabe Black
  */
 
-#include "sim/root.hh"
-
 #include "base/misc.hh"
 #include "base/trace.hh"
 #include "config/the_isa.hh"
 #include "debug/TimeSync.hh"
+#include "sim/eventq_impl.hh"
 #include "sim/full_system.hh"
+#include "sim/root.hh"
 
 Root *Root::_root = NULL;
 
index 4c5e9d79c92441763d154c9fe5d97a0e0ebcfd65..1005d5b97a690163145bc3e41bd95f7fe5d62d9a 100644 (file)
 #include <vector>
 
 #include "base/bitunion.hh"
-#include "base/types.hh"
 
+class CheckpointIn;
 class IniFile;
 class Serializable;
-class CheckpointIn;
 class SimObject;
 class SimObjectResolver;
-class EventQueue;
 
 typedef std::ostream CheckpointOut;
 
index 218db9aeb90906890fad39fcc6560aa56738f276..55db55ff2c879736dd3b39d84128f0beeba8d991 100644 (file)
@@ -35,7 +35,8 @@
 #include <string>
 
 #include "base/types.hh"
-#include "sim/core.hh"
+
+Tick curTick();
 
 // forward declaration
 class Callback;
index 0ccc36b35e1493f78e276c746ca83de4c0bd0903..516019a7c88811f23d0cfafb94baf1e36161b761 100644 (file)
 
 #include "sim/sim_object.hh"
 
-#include <cassert>
-
-#include "base/callback.hh"
-#include "base/inifile.hh"
 #include "base/match.hh"
 #include "base/misc.hh"
 #include "base/trace.hh"
-#include "base/types.hh"
 #include "debug/Checkpoint.hh"
 #include "sim/probe/probe.hh"
-#include "sim/stats.hh"
 
 using namespace std;
 
index 7c1452f01dfccddaec63c29d1bfeb2bcedad2322..42a19bbe7cc8ddfafca16a960a6ee96dac01c008 100644 (file)
 #ifndef __SIM_OBJECT_HH__
 #define __SIM_OBJECT_HH__
 
-#include <iostream>
-#include <list>
-#include <map>
 #include <string>
 #include <vector>
 
-#include "enums/MemoryMode.hh"
 #include "params/SimObject.hh"
 #include "sim/drain.hh"
+#include "sim/eventq.hh"
 #include "sim/eventq_impl.hh"
 #include "sim/serialize.hh"
 
-class BaseCPU;
-class Event;
+class EventManager;
 class ProbeManager;
+
 /**
  * Abstract superclass for simulation objects.  Represents things that
  * correspond to physical components and can be specified via the
index 85d58e119571b636f2a279444365ce3f12e2176b..e39a2595d217f63880c3a850f027e3a9e884c96d 100644 (file)
@@ -30,7 +30,8 @@
  */
 
 #include "base/types.hh"
-#include "sim/sim_events.hh"
+
+class GlobalSimLoopExitEvent;
 
 GlobalSimLoopExitEvent *simulate(Tick num_cycles = MaxTick);
 extern GlobalSimLoopExitEvent *simulate_limit_event;
index ef7ff8216e77f7a890a818ce4a6e8993b42e9d5b..371fd9621a13ef56799c5584e05c5368aa50f06a 100644 (file)
@@ -39,6 +39,8 @@
 
 #include "sim/stat_register.hh"
 
+#include "base/statistics.hh"
+
 namespace Stats
 {
 
index 7f8c3bcd9756f697a2361ee9fc99dd5c34f574a9..bbe9093214d7363d1fd2eca5c65cac0ec71d705a 100644 (file)
@@ -44,8 +44,6 @@
 #ifndef __SIM_STAT_REGISTER_H__
 #define __SIM_STAT_REGISTER_H__
 
-#include "base/statistics.hh"
-
 namespace Stats
 {
 
index 20a352fc3ca679285d12aea6b5cf12abe2563f26..e2e75be5264a350face59b2510160bfaef29f6d3 100644 (file)
@@ -48,7 +48,6 @@
 #include <vector>
 
 #include "params/SubSystem.hh"
-#include "sim/power/thermal_domain.hh"
 #include "sim/sim_object.hh"
 
 class PowerModel;
index b34e983a6bc1ab7ccb1ed28ca16d516dfc3bd3ba..56518726cfe1ab954a9c156598b2ff3b055295e7 100644 (file)
@@ -34,7 +34,6 @@
 #include <fcntl.h>
 #include <unistd.h>
 
-#include <cstdio>
 #include <iostream>
 #include <string>
 
@@ -42,7 +41,6 @@
 #include "base/chunk_generator.hh"
 #include "base/trace.hh"
 #include "config/the_isa.hh"
-#include "cpu/base.hh"
 #include "cpu/thread_context.hh"
 #include "mem/page_table.hh"
 #include "sim/process.hh"
index 4433b5039a73101d9675f0df3f3ac0688a0a4850..31e4c07cd3846129bcbd6eb85b830cfa28858838 100644 (file)
@@ -62,7 +62,7 @@
 /// application on the host machine.
 
 #ifdef __CYGWIN32__
-#include <sys/fcntl.h>  // for O_BINARY
+#include <sys/fcntl.h>
 
 #endif
 #include <fcntl.h>
@@ -78,8 +78,7 @@
 #include <cerrno>
 #include <string>
 
-#include "base/chunk_generator.hh"
-#include "base/intmath.hh"      // for RoundUp
+#include "base/intmath.hh"
 #include "base/loader/object_file.hh"
 #include "base/misc.hh"
 #include "base/trace.hh"
 #include "cpu/base.hh"
 #include "cpu/thread_context.hh"
 #include "mem/page_table.hh"
-#include "sim/byteswap.hh"
 #include "sim/emul_driver.hh"
 #include "sim/process.hh"
 #include "sim/syscall_debug_macros.hh"
 #include "sim/syscall_emul_buf.hh"
 #include "sim/syscall_return.hh"
-#include "sim/system.hh"
 
 class SyscallDesc;
 
@@ -156,7 +153,7 @@ SyscallReturn lseekFunc(SyscallDesc *desc, int num,
 
 /// Target _llseek() handler.
 SyscallReturn _llseekFunc(SyscallDesc *desc, int num,
-                        LiveProcess *p, ThreadContext *tc);
+                          LiveProcess *p, ThreadContext *tc);
 
 /// Target munmap() handler.
 SyscallReturn munmapFunc(SyscallDesc *desc, int num,
@@ -236,39 +233,39 @@ SyscallReturn fcntlFunc(SyscallDesc *desc, int num,
 
 /// Target fcntl64() handler.
 SyscallReturn fcntl64Func(SyscallDesc *desc, int num,
-                        LiveProcess *process, ThreadContext *tc);
+                          LiveProcess *process, ThreadContext *tc);
 
 /// Target setuid() handler.
 SyscallReturn setuidFunc(SyscallDesc *desc, int num,
-                               LiveProcess *p, ThreadContext *tc);
+                         LiveProcess *p, ThreadContext *tc);
 
 /// Target getpid() handler.
 SyscallReturn getpidFunc(SyscallDesc *desc, int num,
-                               LiveProcess *p, ThreadContext *tc);
+                         LiveProcess *p, ThreadContext *tc);
 
 /// Target getuid() handler.
 SyscallReturn getuidFunc(SyscallDesc *desc, int num,
-                               LiveProcess *p, ThreadContext *tc);
+                         LiveProcess *p, ThreadContext *tc);
 
 /// Target getgid() handler.
 SyscallReturn getgidFunc(SyscallDesc *desc, int num,
-                               LiveProcess *p, ThreadContext *tc);
+                         LiveProcess *p, ThreadContext *tc);
 
 /// Target getppid() handler.
 SyscallReturn getppidFunc(SyscallDesc *desc, int num,
-                               LiveProcess *p, ThreadContext *tc);
+                          LiveProcess *p, ThreadContext *tc);
 
 /// Target geteuid() handler.
 SyscallReturn geteuidFunc(SyscallDesc *desc, int num,
-                               LiveProcess *p, ThreadContext *tc);
+                          LiveProcess *p, ThreadContext *tc);
 
 /// Target getegid() handler.
 SyscallReturn getegidFunc(SyscallDesc *desc, int num,
-                               LiveProcess *p, ThreadContext *tc);
+                          LiveProcess *p, ThreadContext *tc);
 
 /// Target clone() handler.
 SyscallReturn cloneFunc(SyscallDesc *desc, int num,
-                               LiveProcess *p, ThreadContext *tc);
+                        LiveProcess *p, ThreadContext *tc);
 
 /// Target access() handler
 SyscallReturn accessFunc(SyscallDesc *desc, int num,
index fdd740775edb6144bd45839739002d907db834d0..1d531daace749f863fd2eea223946fe9cac1a0e8 100644 (file)
@@ -31,7 +31,7 @@
 #ifndef __SIM_SYSCALLRETURN_HH__
 #define __SIM_SYSCALLRETURN_HH__
 
-#include "base/types.hh"
+#include <inttypes.h>
 
 /**
  * This class represents the return value from an emulated system call,
index 7e167c75fdedac6e7733de68e24fa6077e79be00..2d491e8c36f74750850e34e409ccd45ac8b20e98 100644 (file)
@@ -53,7 +53,6 @@
 
 #include "arch/isa_traits.hh"
 #include "base/loader/symtab.hh"
-#include "base/misc.hh"
 #include "base/statistics.hh"
 #include "config/the_isa.hh"
 #include "enums/MemoryMode.hh"
 #include "cpu/pc_event.hh"
 #endif
 
-class BaseCPU;
 class BaseRemoteGDB;
 class GDBListener;
 class ObjectFile;
-class Platform;
 class ThreadContext;
 
 class System : public MemObject
index ecdb878274fd015666f47b127e373d3c816cb89b..4cd0dc171fff62fbb7787bcb08ad32b516857279 100644 (file)
@@ -39,6 +39,9 @@
 
 #include "sim/ticked_object.hh"
 
+#include "params/TickedObject.hh"
+#include "sim/clocked_object.hh"
+
 Ticked::Ticked(ClockedObject &object_,
     Stats::Scalar *imported_num_cycles,
     Event::Priority priority) :
index b2132267024d6c2b154566c7f029c9f904a68cd1..d8b69a3208b6fcd85352703ebac1b12741201750 100644 (file)
 #ifndef __SIM_TICKED_OBJECT_HH__
 #define __SIM_TICKED_OBJECT_HH__
 
-#include "params/TickedObject.hh"
 #include "sim/clocked_object.hh"
 
+class TickedObjectParams;
+
 /** Ticked attaches gem5's event queue/scheduler to evaluate
  *  calls and provides a start/stop interface to ticking.
  *
index 0c5b65d6aa240140f234657376e09a0e3ea6a6c8..6f32dc7c009efe246fa4972943bbdde0c561c24f 100644 (file)
@@ -43,6 +43,7 @@
 #include <algorithm>
 
 #include "base/statistics.hh"
+#include "base/trace.hh"
 #include "debug/VoltageDomain.hh"
 #include "params/VoltageDomain.hh"
 #include "sim/sim_object.hh"
index 658959a905ac682aecf96278d66a1b782a509ebe..6eefd59373c1f04ba5de87d53e8f354e08a440e4 100644 (file)
@@ -31,8 +31,6 @@
 #ifndef __ARCH_ALPHA_VPTR_HH__
 #define __ARCH_ALPHA_VPTR_HH__
 
-#include "arch/isa_traits.hh"
-#include "arch/vtophys.hh"
 #include "mem/fs_translating_port_proxy.hh"
 
 class ThreadContext;