You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Originally, SYCLInstallationDetector just had a single constructor
parameter D, and filled InstallationCandidates. In the process of
upstreaming this, unused arguments HostTriple and Args were added, and
InstallationCandidates was removed. Then, when the upstreamed version
was pulled into DPC++, we ended up with two constructors, one which did
fill InstallationCandidates and one which did not, for no reason.
Ideally, we would align with upstream and use that new constructor
everywhere. However, we use SYCLInstallationDetector in places where do
not have that information, we need to be able to construct a
SYCLInstallationDetector from only a Driver, so using only the upstream
constructor is not an option.
Using only the single-argument constructor is also not a good idea, as
it makes future pulldowns more difficult. This is the situation we had,
and a pulldown brought us to the current situation where the
three-parameter constructor was added to resolve the conflict.
Therefore, this commit takes the approach of using the single-parameter
constructor to implement the three-parameter constructor, thus ensuring
that InstallationCandidates is always filled.
This is NFC at the moment because the only places that rely on
InstallationCandidates being filled use the single-parameter
constructor.
0 commit comments