]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Merge the main ega drawing method into the main vga planar method and
authorbde <bde@FreeBSD.org>
Fri, 21 Apr 2017 15:12:43 +0000 (15:12 +0000)
committerbde <bde@FreeBSD.org>
Fri, 21 Apr 2017 15:12:43 +0000 (15:12 +0000)
commit1753d0e8f92e28e99e3c35fa647a309b53e677f4
tree06031ef6079e997f458058ffe1db4c842c64611c
parentaf85d5feea49b666c20c9b10ce3df0fdbabb03be
Merge the main ega drawing method into the main vga planar method and
remove the former.

All other EGA/VGA methods were already shared, with VGA-only features
mostly not used and no decisions in inner loops to optimize fof VGA,
but this method was split up because it is the only important one and
using VGA methods if possible is about twice as fast.  The speed is
mostly not from splitting to reduce branches but from doing half as
many bus accesses, so make this easier to maintain by not splitting.
There is now 1 extra branch in an inner loop where it costs less than
1% of the bus access overhead on Haswell even if the compiler schedules
it poorly.
sys/dev/syscons/scvgarndr.c