Hello,

I would like to understand the high level architecture of SWR codebase.

Is there any document for extending SWR for architectures other than Intel?
It seems like SWR uses llvm_pipe shader creation, so is it still based on
tgsi IR to LLVM conversion?
Is there a path from NIR->LLVM (it seems so as per
https://phoronix.com/scan.php?page=news_item&px=LLVM-Switches-To-NIR-Default
?
If yes please point to the code?
If not then How much effort will it take to get a NIR to LLVM IR converter?

To get LLVM directly from NIR I am thinking to use RADV's NIR to LLVM IR
converter but make it more suitable to generate LLVM IR for any other
architecture by simply having a text file to look up for NIR to LLVM ir
mapping and that makes RADV's LLVMIR generator target independent. If it is
not one to one mapping then something more complex like LLVM's table gen
can be used.

Is the above idea possible at high-level? or I am missing lots of important
points?

Overall idea is to have SWR retargettable for any architecture that is
supported by LLVM codege and also don't want to use TGSI instead use NIR.

Thanks,
Vivek
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to