python/m5/config.py:
Addr is slightly different from memory size in that Addr
will take non strings.
Deal with the fact that the convert.toFoo functions only accept
strings.
Add RootFrequency as a special type for the Root.frequency
parameter which is not scaled.
Add ClockPeriod parameter type.
python/m5/convert.py:
Be more strict about what's allowed.
Only accept strings as inputs for these conversion functions.
If the user wants to accept something else, they need to deal
with the failure and convert other types on their own.
python/m5/objects/Bus.mpy:
Use the new ClockPeriod parameter type
python/m5/objects/Root.mpy:
Can't use integers for frequency anymore
python/m5/smartdict.py:
rename SmartDict.Proxy to just Variable. Create a new class
UndefinedVariable that is returned when the user tries to get
a variable that is not in the dict. Undefined variable evaluates
to false, and will cause an error elsewhere.
--HG--
extra : convert_revision : 1d55246fd1af65106f102396234827d6401ef9ce
way ranges work, more fully support metric prefixes for all
integer types, and convert memory sized parameters to the
MemorySize type.
python/m5/config.py:
- no more _Param and _ParamProxy stuff. Use the names
ParamBase and ParamFactory to hopefully make it clearer
what we intend.
- Get rid of RangeSize and the old Range class and more fully flesh
out the Range class to deal with types of parameters and different
kinds of ranges.
- Call toInteger on the CheckedInt types so we can use metric prefixes
in strings for all integers.
- Get rid of the K, M, and G constants. Use the proper type or call
one of the functions in the convert package.
python/m5/convert.py:
Simple way to deal with both floating point and integer strings.
python/m5/objects/BaseCache.mpy:
python/m5/objects/Ethernet.mpy:
This is a MemorySize typed parameter
--HG--
extra : convert_revision : 92b4ea662d723abdd6c0a49065b79c25400fac9b
the m5 package as convert.py
add a smartdict class which stores strings and can intelligently
interpret those string variables as several other types.
make the env dict use the smartdict class
python/m5/config.py:
move a bunch of conversion functions into convert.py
turn the env dict into a smartdict
adapt the _CheckedInt stuff to deal with derived types
python/m5/objects/BaseCPU.mpy:
env is now a smartdict and can properly convert to bool
--HG--
extra : convert_revision : 8abcd35a5ab14b82f280aea59020953869e33365