Hi, I've built a macppc kernel without the ALTIVEC option on one of my G4s to test a port fix for G3s [0], and as i'm testing some ports i've opened a can of worms that is leading me to pixman. Namely, i run:
kern.version=OpenBSD 6.9-current (NOALTIVEC) #1: Fri Jun 11 19:47:02 If i run www/midori, i get that backtrace: > $ env DISPLAY=:0 egdb midori > Reading symbols from midori...done. > (gdb) run > [...] > Thread 1 received signal SIGILL, Illegal instruction. > (gdb) bt > #0 0xf05f9b84 in vec_lvsl(int, unsigned int const*) (__a=0, > __b=0xfffb69a0) at /usr/lib/clang/11.1.0/include/altivec.h:4047 > #1 vmx_combine_over_u_mask (dest=0xd52a64f0, src=0xfffb6980, > mask=0xfffb69a0, width=6) at pixman-vmx.c:236 > #2 0xf05ed7e4 in vmx_combine_over_u (imp=0xe91ba000, #op=PIXMAN_OP_OVER, > dest=0xd52a64f0, src=0xfffb6980, mask=0xfffb69a0, width=6) at > pixman-vmx.c:277 > #3 0xf05cadf8 in general_composite_rect (imp=0xe91c7000, > #info=0xfffbc9e8 at pixman-general.c:223 > #4 0xf03aa4e4 in pixman_image_composite32 (op=PIXMAN_OP_OVER, > src=0xd5cbbe00, mask=0xc4c1a900, dest=0xcd40c300, src_x=192, > src_y=219, mask_x=0, mask_y=0, dest_x=28, dest_y=6, width=6, > height=1) at pixman.c:700 > #5 0xe9247468 in _inplace_spans () from /usr/local/lib/libcairo.so.13.0 It looks to me it's heading to pixman/pixman-implementation.c, but it's not built with "-maltivec -mabi=altivec" (see the build log [1]), so i am assuming i'm wrong and going nowhere. I would gladly try a diff that fixes that :) Charlène. [0] https://marc.info/?l=openbsd-ports&m=162343888417060&w=2 [1] https://bin.charlenew.xyz/pixman.log