intel: limit compiler access to device information, to replace use of pci ids in shader caching

Open Mark Janes requested to merge majanes/mesa:brw_compiler_devinfo into main

The goal of this series is to enable a multiplatform precompiled shader cache for a wide range of platforms and programs.

Intel's shader cache is partly keyed by pci id, but many identical platforms have different pci ids. To minimize duplication, we need a key that differs only for platform characteristics that affect compilation.

Intel's compiler uses struct intel_device_info to encapsulate compilation parameters, which is broader than what is used.

This series provides a hash of all device information that is used by the compiler, to replace the use of pci id in the shader cache. To ensure that future changes to the compiler do make use of new (unhashed) device parameters, limit compiler access to a subset of intel_device_info.

Merge request reports