never clear about whether the end of the range was inclusive
or exclusive. Make it inclusive, but also provide a RangeSize()
function that will generate a Range based on a start and a size.
This, in combination with using the comparison operators, makes
almost all usages of the range not care how it is stored.
base/range.cc:
Make the end of the range inclusive.
start/end -> first/last
(end seems too much like end() in stl)
base/range.hh:
Make the end of the range inclusive.
Fix all comparison operators so that they work correctly with
an inclusive range. Also, when comparing one range to another
with <, <=, >, >=, we only look at the beginning of the range
beacuse x <= y should be the same as x < y || x == y. (This wasn't
the case before.)
Add a few functions for making a range:
RangeSize is start and size
RangeEx is start and end where end is exclusive
RangeIn is start and end where end is inclusive
start/end -> first/last
(end seems too much like end() in stl)
dev/alpha_console.cc:
dev/baddev.cc:
dev/ide_ctrl.cc:
dev/ns_gige.cc:
dev/pciconfigall.cc:
dev/pcidev.cc:
dev/tsunami_cchip.cc:
dev/tsunami_io.cc:
dev/tsunami_pchip.cc:
dev/uart.cc:
Use the RangeSize function to create a range.
--HG--
extra : convert_revision : 29a7eb7fce745680f1c77fefff456c2144bc3994
arch/alpha/vtophys.cc:
PGOFSET -> ALPHA_PGOFSET to avoid include file problems
base/callback.hh:
Added a class to create a callback from a function
base/intmath.hh:
make FloorLog2 inlined
dev/pcidev.cc:
more work in getting pciconfig space happy with different endiannesses
dev/uart.cc:
used an incorrect size for write uint64_t instead of uint8_t
sim/system.cc:
when writing things into system data structures we need to pay
attention to endianness
--HG--
extra : convert_revision : 52f441b5789c45db30ef2f6fd4975cbc7323a381
ticks for the most commonly accessed devices.
dev/baddev.cc:
Get rid of the constant cache access latency.
For unimportant devices, don't add any latency.
dev/ide_ctrl.cc:
dev/ide_ctrl.hh:
dev/ns_gige.cc:
dev/pciconfigall.cc:
dev/pciconfigall.hh:
dev/tsunami_cchip.cc:
dev/tsunami_cchip.hh:
dev/tsunami_io.cc:
dev/tsunami_io.hh:
dev/tsunami_pchip.cc:
dev/tsunami_pchip.hh:
dev/uart.cc:
dev/uart.hh:
make the cache access latency a parameter that is based on bus
ticks.
dev/io_device.cc:
dev/io_device.hh:
add an io latency variable
dev/ns_gige.hh:
this moved to io_device.hh
--HG--
extra : convert_revision : 4883130feeaef48abee492eddf0b8eb40eb94789
Both rx/tx interrupts are now scheduled for the future to give the
linux kernel time to get out of its loop.
--HG--
extra : convert_revision : 8fee0a25fde0ce0545c924f8547bed460602e006
base/traceflags.py:
removed TsunamiUart/TlaserUart and added a plain Uart
dev/alpha_console.cc:
updated for new simconsole
dev/platform.hh:
added a uart member to platform
dev/simconsole.cc:
dev/simconsole.hh:
removed lots of legacy code, it should all be ours now.
converted tabs to 8 spaces
added our copyright
dev/tsunami.cc:
uses simconsole.hh rather than console.hh
dev/tsunami_cchip.cc:
dev/tsunami_io.cc:
never needed console.hh
dev/tsunami_io.hh:
this does need eventq.hh and it just happend to be working whenn console.hh was
included everywhere
dev/tsunamireg.h:
added a couple more 8250/16550 uart defines
dev/uart.cc:
new uart code, rewritten to support both tlaser and tsunami (both a 8250 and 8530
uart).
dev/uart.hh:
updated for new uart, legacy code removed
--HG--
rename : dev/console.cc => dev/simconsole.cc
rename : dev/console.hh => dev/simconsole.hh
rename : dev/tsunami_uart.cc => dev/uart.cc
rename : dev/tsunami_uart.hh => dev/uart.hh
extra : convert_revision : e663352d49d4c2d3c95643030cf73c0e85ba2f08