I have a Dell Inspiron 6400 laptop with ATI / AMD Mobility Radeon X1400 graphics (RV515/M54) and a 1680x1050 LCD panel. If run GNOME shell with Wayland, Sway, Weston or kmscube, the screen is corrupt as if the pitch / stride is wrong. In other words, the picture is as if drawing assumes one number of bytes per line, and the GPU uses a different number of bytes per line when outputting to the screen. As a result, the image is slanted and wrapped. It's like a CRT with incorrect horizontal hold, except it's an LCD and the image is always slanted the same way.
In GNOME the mouse cursor is perfectly fine. I assume GNOME uses the hardware mouse cursor, which is not affected by this problem. This also shows that the issue is in with how data is represented in memory, and not a lack of horizontal hold between the GPU and LCD.
The fact the exact same kind of corruption happens in 4 different applications seems to imply this is a kernel bug. I'm observing this in Ubuntu 20.04 x86-64, both with its 5.4.0-29-generic kernel and their 5.7.0-050700rc4-generic_5.7.0-050700rc4.202005051752 from upstream.
I do not have this problem in Xorg.
This is probably https://gitlab.freedesktop.org/mesa/mesa/-/issues/2780 .