Bugzilla – Bug 58666
rv670 + llvm = errors.
Last modified: 2013-02-01 22:47:32 UTC
I've only just tested this AGP HD3850 card with tstellar LLVM (or any llvm) as it's been out of the PC since Feb.
Both last week and now with updated llvm/mesa gits, running anything eg. gears will just flood -
EE r600_asm.c:122 r600_bytecode_get_num_operands - Need instruction operand number for 0xc.
Works OK with R600_LLVM=0
This was tested with drm-fixes kernel.
Since mesa commit -
r600g: use tables with ISA info v3
I can run demos without flooding errors, but most of them don't render anything.
The ones that do render something resemble what they should look like are all flawed/distorted eg, "textures" is almost normal but the actual textures are repeated rather than scaled to fit the surfaces.
Can you run one of the demos and post the output with the environment variable R600_DUMP_SHADERS=2
Created attachment 74051 [details]
R600_DUMP_SHADERS=2 ./gears &>gears-dump
R600_DUMP_SHADERS=2 ./gears which doesn't render anything, but appears to be running OK eg. outputting sane fps stats and quitting normally with Esc.
Created attachment 74053 [details]
It looks like we were telling the backend that RV670 is an R700 GPU, when it is really an R600. R600 chips uses a slightly different instruction encoding. This patch should fix it, can you test?
(In reply to comment #4)
> Created attachment 74053 [details]
> Possible Fix
> It looks like we were telling the backend that RV670 is an R700 GPU, when it
> is really an R600. R600 chips uses a slightly different instruction
> encoding. This patch should fix it, can you test?
Yes, this fixes it - demos are all OK (well at least the same as my rv790) and a brief run of etqw worked.
Fixed by commit 257006e2a4201c11ca5f800a74ac4aaf62a7bfc1