Due to an influx of spam, we have had to impose restrictions on new accounts. Please see this wiki page for instructions on how to get full permissions. Sorry for the inconvenience.
Admin message
Our infrastructure migration is complete. Please remember to update your SSH remote to point to ssh.gitlab.freedesktop.org; SSH to the old hostname will time out. You should not see any problems apart from that. Please let us know if you do have any other issues.
So you're running glmark2-es2-drm -b jellyfish? I can't see your problem by adding cos to simple gbm-surface vertex shader. But when glmark2-es2-drm -b jellyfish, it complains missing nir_op: flog2 first.
Seems it's due to complex1 node handle problem in gpir_sched_instr_pass. complex1 node will consume 2 slots, so we count it as 2, but we may schedule a move for it. In value reg stage, we use dump_f/m node method:
https://gitlab.freedesktop.org/lima/mesa/blob/lima-18.3/src/gallium/drivers/lima/ir/gp/lower.c#L324
which permit this, so count reach to 6 but there's no slot in current instruction when fail case.
gpir_sched_instr_pass need to handle this case to schedule a move for 2 slot complex1 node, so that the count can be reduced to 5 again.
Do you mean the simplified shader or the just remove log2 shader? I can see a static jellyfish with your simplified shader, is it due to you removed some animation of it? I can see wrong shape with the log2 shader indeed.
Simplified shader. I didn't remove animation, try it with glmark2-es on desktop - you'll see that it's animated. Missing animation indicates that calculation of pos value (I'm talking about vec3 pos from shader) is not correct.
Note that i965 is also broken (at least on Ivy Bridge, Broadwell seems to be OK) - model is rendered correctly but animation is not smooth. Correct version can be seen with LIBGL_ALWAYS_SOFTWARE=1 glmark2-es2 -b jellyfish
@icenowy color gradient can be missing due to low precision (PP on mali4x0 can do only fp16). I actually see some gradient (or rather color banding) on pinebook.
@yuq825 GP compiler has an issue with registers. If you look at shader disassembly for jellyfish shader there's a read from uninitialized register (look for $1):
=======disassembly:=======000: mul ^3 a0.y t[20].w, 001: , add ^6 t[4].y ^3, 002: mul ^15 ^6 t[21].x, 003: , floor ^18 ^15, 004: , add ^24 ^15 -^18, 005: , add ^30 ^24 t[21].y, 006: mov ^38 ^24, mov ^39 ^30, ge ^36 ^24 t[20].w, 007: , lt ^42 ^38 t[21].z, 008: sel ^50 ^36 ^38 ^39, add ^48 ^38 t[20].y, 009: sel ^56 ^42 ^50 ^48, 010: mul ^63 ^56 ^56, 011: mul ^68 ^56 ^63, mul ^69 ^56 t[21].w, mov ^66 ^63, 012: mul ^74 ^68 t[22].x, mul ^75 ^68 ^66, 013: mul ^80 ^75 t[22].y, mul ^81 ^75 ^66, add ^78 ^69 ^74, mov ^79 ^66, 014: mul ^86 ^81 t[22].z, mul ^87 ^81 t[22].w, add ^84 ^78 ^80, 015: mul ^93 ^87 ^79, add ^90 ^84 ^86, 016: , add ^96 ^90 ^93, 017: mul ^104 a2.x t[20].z, mul ^105 a2.y t[20].z, mov ^102 ^96, 018: mul ^110 ^104 ^102, mul ^111 ^105 ^102, 019: mov ^116 ^102, , add ^114/$0.y a0.y ^111, add ^115/$0.x a0.x ^110, 020: , 021: mov ^129 t[0].x, mov ^126 ^116, 022: mul ^134 ^129 $0.x, mul ^135 t[1].x $1.x, <---- $1 has never been initialized!