Investigate using gcc's target_clones attribute
Sufficiently new gcc (6.0 I think) have a function multiversioning feature that clones for different target architecture options, for example SSE vs AVX. We would probably benefit from applying it judiciously to pixman-fast.c
and friends. Depending how good the generated code is we might be able to remove many of the arch-specific fast paths too.