On Thu, Mar 11, 2010 at 10:05:28PM +0000, Andrew Doran wrote: > > - How much performance impact is expected for bus_space(9) changes > > on ports that use macro for access functions? > > In the grand scheme of things, converting from macro to function proper > doesn't matter since devices are not regular memory. Compared to cache > or main memory, access to them is very slow.
This is not uniformly true. Depending on the memory range, caching *is* allowed to a certain degree and writing for example can be async to a degree as well. What is more important in this regard though is that trading a mostly constant condition in hundred of places to a mostly constant condition in one place helps and even the worst case of misprediction for IO vs memory is not that bad. So inlining doesn't give much on architectures that predict (static) function calls. Joerg