SConscript (7573:ef798deb9a02) SConscript (7756:846fb3ffe0dc)
1# -*- mode:python -*-
2
3# Copyright (c) 2006 The Regents of The University of Michigan
4# All rights reserved.
5#
6# Redistribution and use in source and binary forms, with or without
7# modification, are permitted provided that the following conditions are
8# met: redistributions of source code must retain the above copyright

--- 95 unchanged lines hidden (view full) ---

104
105 return target, source + [ Value(m) for m in cpu_models ]
106
107ARCH_DIR = Dir('.')
108
109# import ply here because SCons screws with sys.path when performing actions.
110import ply
111
1# -*- mode:python -*-
2
3# Copyright (c) 2006 The Regents of The University of Michigan
4# All rights reserved.
5#
6# Redistribution and use in source and binary forms, with or without
7# modification, are permitted provided that the following conditions are
8# met: redistributions of source code must retain the above copyright

--- 95 unchanged lines hidden (view full) ---

104
105 return target, source + [ Value(m) for m in cpu_models ]
106
107ARCH_DIR = Dir('.')
108
109# import ply here because SCons screws with sys.path when performing actions.
110import ply
111
112def isa_desc_action(target, source, env):
112def isa_desc_action_func(target, source, env):
113 # Add the current directory to the system path so we can import files
114 sys.path[0:0] = [ ARCH_DIR.srcnode().abspath ]
115 import isa_parser
116
117 models = [ s.get_contents() for s in source[1:] ]
118 cpu_models = [CpuModel.dict[cpu] for cpu in models]
119 parser = isa_parser.ISAParser(target[0].dir.abspath, cpu_models)
120 parser.parse_isa_desc(source[0].abspath)
113 # Add the current directory to the system path so we can import files
114 sys.path[0:0] = [ ARCH_DIR.srcnode().abspath ]
115 import isa_parser
116
117 models = [ s.get_contents() for s in source[1:] ]
118 cpu_models = [CpuModel.dict[cpu] for cpu in models]
119 parser = isa_parser.ISAParser(target[0].dir.abspath, cpu_models)
120 parser.parse_isa_desc(source[0].abspath)
121isa_desc_action = MakeAction(isa_desc_action_func, " [ISA DESC] $STRIP_SOURCE")
121
122# Also include the CheckerCPU as one of the models if it is being
123# enabled via command line.
124isa_desc_builder = Builder(action=isa_desc_action, emitter=isa_desc_emitter)
125
126env.Append(BUILDERS = { 'ISADesc' : isa_desc_builder })
127
128TraceFlag('IntRegs')
129TraceFlag('FloatRegs')
130TraceFlag('MiscRegs')
131CompoundFlag('Registers', [ 'IntRegs', 'FloatRegs', 'MiscRegs' ])
122
123# Also include the CheckerCPU as one of the models if it is being
124# enabled via command line.
125isa_desc_builder = Builder(action=isa_desc_action, emitter=isa_desc_emitter)
126
127env.Append(BUILDERS = { 'ISADesc' : isa_desc_builder })
128
129TraceFlag('IntRegs')
130TraceFlag('FloatRegs')
131TraceFlag('MiscRegs')
132CompoundFlag('Registers', [ 'IntRegs', 'FloatRegs', 'MiscRegs' ])