I did some further analysis why the swing-benchmarks (and some others) don't perform that well.
Of course there's still lots of room for improvements in the pipeline itself, but some Xorg performance bugs turned out to be show-stoppers here.
The updated benchmarks should be soon available at: ...
Blits / sharp edges:
Xorg-1.5 now supports RepeatPad (however Intel still falls back to software for now), which is needed to not get smeared borders when scaling images.
With some tricks the mask's rectangular geometry can be used itself to clip of the repeated edges (maps to GL_CLAMP), so we don't have to generate the rotated images geometry anymore :)
The following screenshot shows a rotated image with a 2px black line on its edges - sharp edges and interpolation inside the image ... as it should be:
In theory it should be possible to use a 1x1 mask and simply adjust the scale to get the expected size - however I don't know how rounding errors could influence the result. Most likely I can use the existing mask-buffer pixmap and tile if the area is larger.