fetch.cc:
[gem5.git] / SConscript
index ce90d9cb2daaec23362afb812e5ddbea060bd28a..3b3c871bc29362a230774c21426d7a053a0aec23 100644 (file)
@@ -46,6 +46,7 @@ base_sources = Split('''
        arch/alpha/decoder.cc
        arch/alpha/fast_cpu_exec.cc
        arch/alpha/simple_cpu_exec.cc
+       arch/alpha/inorder_cpu_exec.cc
        arch/alpha/full_cpu_exec.cc
        arch/alpha/faults.cc
        arch/alpha/isa_traits.cc
@@ -53,6 +54,7 @@ base_sources = Split('''
        base/circlebuf.cc
        base/copyright.cc
        base/cprintf.cc
+        base/embedfile.cc
        base/fast_alloc.cc
        base/fifo_buffer.cc
        base/hostinfo.cc
@@ -61,9 +63,11 @@ base_sources = Split('''
        base/intmath.cc
        base/match.cc
        base/misc.cc
+       base/output.cc
        base/pollevent.cc
        base/python.cc
        base/range.cc
+       base/random.cc
        base/sat_counter.cc
        base/socket.cc
        base/statistics.cc
@@ -108,6 +112,7 @@ base_sources = Split('''
        cpu/full_cpu/issue.cc
        cpu/full_cpu/ls_queue.cc
        cpu/full_cpu/machine_queue.cc
+        cpu/full_cpu/pc_sample_profile.cc
        cpu/full_cpu/pipetrace.cc
        cpu/full_cpu/readyq.cc
        cpu/full_cpu/reg_info.cc
@@ -127,6 +132,7 @@ base_sources = Split('''
        cpu/full_cpu/iq/standard/iq_standard.cc
        cpu/sampling_cpu/sampling_cpu.cc
        cpu/simple_cpu/simple_cpu.cc
+       cpu/inorder_cpu/inorder_cpu.cc
        cpu/trace/reader/mem_trace_reader.cc
        cpu/trace/reader/ibm_reader.cc
        cpu/trace/reader/itx_reader.cc
@@ -177,6 +183,9 @@ base_sources = Split('''
        mem/trace/mem_trace_writer.cc
        mem/trace/m5_writer.cc
 
+        python/pyconfig.cc
+        python/embedded_py.cc
+
        sim/builder.cc
        sim/configfile.cc
        sim/debug.cc
@@ -187,48 +196,14 @@ base_sources = Split('''
        sim/serialize.cc
        sim/sim_events.cc
        sim/sim_exit.cc
-       sim/sim_init.cc
        sim/sim_object.cc
+       sim/startup.cc
        sim/stat_context.cc
        sim/stat_control.cc
        sim/trace_context.cc
        sim/universe.cc
-        sim/pyconfig/pyconfig.cc
-        sim/pyconfig/code.cc
-        ''')
-
-base_obj_desc_files = Split('''
-        cpu/full_cpu/iq/segmented/SegmentedIQ.od
-        cpu/full_cpu/iq/seznec/SeznecIQ.od
-        cpu/full_cpu/iq/standard/StandardIQ.od
-        cpu/full_cpu/iq/BaseIQ.od
-        cpu/full_cpu/BranchPred.od
-        cpu/full_cpu/FUDesc.od
-        cpu/full_cpu/FullCPU.od
-        cpu/full_cpu/FuncUnitPool.od
-        cpu/full_cpu/OpDesc.od
-        cpu/full_cpu/PipeTrace.od
-        cpu/sampling_cpu/SamplingCPU.od
-        cpu/simple_cpu/SimpleCPU.od
-        cpu/BaseCPU.od
-        cpu/IntrControl.od
-        mem/bus/Bus.od
-        mem/bus/BusBridge.od
-        mem/cache/coherence/CoherenceProtocol.od
-        mem/cache/tags/repl/GenRepl.od
-        mem/cache/tags/repl/Repl.od
-        mem/cache/BaseCache.od
-        mem/functional_mem/FunctionalMemory.od
-        mem/functional_mem/MainMemory.od
-        mem/functional_mem/MemoryController.od
-        mem/functional_mem/PhysicalMemory.od
-        mem/timing_mem/BaseMemory.od
-        mem/BaseHier.od
-        mem/BaseMem.od
-        mem/HierParams.od
         ''')
 
-
 # MySql sources
 mysql_sources = Split('''
        base/mysql.cc
@@ -268,10 +243,12 @@ full_system_sources = Split('''
        dev/etherdev.cc
        dev/pciconfigall.cc
        dev/pcidev.cc
+       dev/pktfifo.cc
        dev/scsi.cc
        dev/scsi_ctrl.cc
        dev/scsi_disk.cc
        dev/scsi_none.cc
+       dev/sinic.cc
        dev/simple_disk.cc
        dev/tlaser_clock.cc
        dev/tlaser_ipi.cc
@@ -309,44 +286,6 @@ full_system_sources = Split('''
        sim/system.cc
         ''')
 
-full_system_obj_desc_files = Split('''
-        arch/alpha/AlphaDTB.od
-        arch/alpha/AlphaITB.od
-        arch/alpha/AlphaTLB.od
-        dev/AlphaConsole.od
-        dev/ConsoleListener.od
-        dev/CowDiskImage.od
-        dev/DiskImage.od
-        dev/DmaDevice.od
-        dev/DmaEngine.od
-        dev/EtherBus.od
-        dev/EtherDev.od
-        dev/EtherDevInt.od
-        dev/EtherDump.od
-        dev/EtherInt.od
-        dev/EtherLink.od
-        dev/EtherTap.od
-        dev/PioDevice.od
-        dev/RawDiskImage.od
-        dev/ScsiController.od
-        dev/ScsiDevice.od
-        dev/ScsiDisk.od
-        dev/SimConsole.od
-        dev/SimpleDisk.od
-        dev/TlaserClock.od
-        dev/TlaserIpi.od
-        dev/TlaserMBox.od
-        dev/TlaserMC146818.od
-        dev/TlaserNode.od
-        dev/TlaserPciDev.od
-        dev/TlaserPcia.od
-        dev/TlaserSerial.od
-        dev/TlaserUart.od
-        dev/Turbolaser.od
-        kern/tru64/Tru64System.od
-        sim/System.od
-       ''')
-
 # Syscall emulation (non-full-system) sources
 syscall_emulation_sources = Split('''
        arch/alpha/alpha_common_syscall_emul.cc
@@ -362,13 +301,6 @@ syscall_emulation_sources = Split('''
        sim/syscall_emul.cc
         ''')
 
-syscall_emulation_obj_desc_files = Split('''
-        cpu/memtest/MemTest.od
-        eio/EioProcess.od
-        sim/LiveProcess.od
-        sim/Process.od
-       ''')
-
 targetarch_files = Split('''
         alpha_common_syscall_emul.hh
         alpha_linux_process.hh
@@ -385,9 +317,7 @@ targetarch_files = Split('''
         isa_traits.hh
         machine_exo.h
         osfpal.hh
-        pmap.h
         pseudo_inst.hh
-        syscalls.hh
         vptr.hh
         vtophys.hh
         ''')
@@ -399,22 +329,19 @@ for f in targetarch_files:
 
 # Set up complete list of sources based on configuration.
 sources = base_sources
-obj_desc_files = base_obj_desc_files
 
 if env['FULL_SYSTEM']:
     sources += full_system_sources
-    obj_desc_files += full_system_obj_desc_files
 else:
     sources += syscall_emulation_sources
-    obj_desc_files += syscall_emulation_obj_desc_files
 
 extra_libraries = []
+env.Append(LIBS=['z'])
 if env['USE_MYSQL']:
     sources += mysql_sources
     env.Append(CPPDEFINES = 'USE_MYSQL')
     env.Append(CPPDEFINES = 'STATS_BINNING')
     env.Append(CPPPATH=['/usr/local/include/mysql', '/usr/include/mysql'])
-    env.Append(LIBS=['z'])
     if os.path.isdir('/usr/lib64'):
         env.Append(LIBPATH=['/usr/lib64/mysql'])
     else:
@@ -439,6 +366,7 @@ env.Command(Split('''arch/alpha/decoder.cc
                     arch/alpha/decoder.hh
                     arch/alpha/fast_cpu_exec.cc
                      arch/alpha/simple_cpu_exec.cc
+                     arch/alpha/inorder_cpu_exec.cc
                      arch/alpha/full_cpu_exec.cc'''),
             Split('''arch/alpha/isa_desc
                     arch/isa_parser.py'''),
@@ -449,10 +377,8 @@ env.Command(Split('''arch/alpha/decoder.cc
 # SConscript-local is the per-config build, which just copies some
 # header files into a place where they can be found.
 SConscript('libelf/SConscript-local', exports = 'env', duplicate=0)
-
-SConscript('sim/pyconfig/SConscript', exports = ['env', 'obj_desc_files'],
-           duplicate=0)
-
+SConscript('python/SConscript', exports = ['env'], duplicate=0)
+SConscript('simobj/SConscript', exports = 'env', duplicate=0)
 
 # This function adds the specified sources to the given build
 # environment, and returns a list of all the corresponding SCons