CVSROOT: /cvs Module name: src Changes by: d...@cvs.openbsd.org 2014/10/16 19:46:26
Modified files: sys/arch/i386/i386: bus_space.c machdep.c sys/arch/i386/include: bus.h Log message: bring the twisting of bus_space from amd64 over to i386. this is: src/sys/arch/amd64/amd64/bus_space.c r1.22 src/sys/arch/amd64/include/bus.h r1.27 instead of using the tag as an identifier for IO or memory mappings that was checked inside the api, turn it into a pointer to a structure of function pointers. the api then generally becomes a set of macros that deref the function pointers on the callers behalf. the idea is that following a pointer to very small functions is cheap compared to doing compares continuously. the kernel is smaller and the api is more cache friendly now. the porting of this code from amd64 to i386 was done by kimberley manning requested by and ok tedu@