Alexander Richardson (1112f1c4) at 10 Feb 10:43
It is not currently possible to build a meson subproject for the build system. Since xdgmime is only used for the tests we can move this logic into the build-tests conditional and disables building the tests when cross-compiling. This workaround is not ideal but it's better than not being able to cross-compile at all.
Alexander Richardson (1112f1c4) at 06 Feb 01:52
Allow cross-compiling after moving xgdmime to a meson subproject
... and 181 more commits
Alexander Richardson (cb8938e3) at 17 Dec 19:36
Alexander Richardson (01e75461) at 16 Sep 19:25
Alexander Richardson (5acc34b5) at 16 Sep 19:02
I prefer this version over !12 (closed) but it is believed that the performance implications matter here I'll close this one in favour of the other one.
I've also uploaded !13 (merged) which is IMO a bit cleaner. I don't believe the additional allocations will be noticeable - malloc() has become much faster over the years and I don't think this is called in performance-critical tight loops.
While runnig some X11 applications on an Arm Morello platform I noticed bus errors inside xrender. XRenderInfo uses a single malloc call to allocate multiple objects in one single allocation and places those objects directly after the XRenderInfo object. However, these calculations do not ensure that this objects are sufficiently aligned. I noticed this because on Morello (and other CHERI-enabled architectures) pointers need to be strongly aligned. Instead of allocating a single block with potentially misaligned subsequent objects, this change uses seprate allocations for the four arrays.
This is an alternative to !12
Signed-off-by: Alex Richardson arichardson@FreeBSD.org
Alexander Richardson (01e75461) at 13 Sep 06:19
Ensure XRenderInfo pointers are appropriately aligned
While runnig some X11 applications on an Arm Morello platform I noticed bus errors inside xrender. XRenderInfo uses a single malloc call to allocate multiple objects in one single allocation and places those objects directly after the XRenderInfo object. However, these calculations do not ensure that this objects are sufficiently aligned. I noticed this because on Morello (and other CHERI-enabled architectures) pointers need to be strongly aligned.
Signed-off-by: Alex Richardson arichardson@FreeBSD.org
Alexander Richardson (b1e5b1f9) at 13 Sep 05:59
Ensure XRenderInfo pointers are appropriately aligned
Alexander Richardson (95cad8be) at 13 Sep 05:56
Ensure XRenderInfo pointers are appropriately aligned
Alexander Richardson (5acc34b5) at 13 Sep 05:15
Allow building with clang after aec9d726...
Alexander Richardson (f256f7b3) at 11 Sep 05:05
Fix purecap build
Alexander Richardson (3ba091f7) at 11 Sep 05:05
Merge remote-tracking branch 'upstream/main'
... and 115 more commits
Alexander Richardson (cfac2bfa) at 11 Sep 04:51
Allow building with clang after aec9d726...
Clang also supports the malloc attribute but unlike GCC does not accept the deallocator argument. This has been reported as https://github.com/llvm/llvm-project/issues/51607
Alexander Richardson (cfac2bfa) at 11 Sep 04:49
Allow building with clang after aec9d726...