diff options
author | 2012-09-19 09:39:15 +0100 | |
---|---|---|
committer | 2012-09-19 09:39:15 +0100 | |
commit | b1530597d97bf6adbdc64b6f7698e1e1bee6966b (patch) | |
tree | a0f51257239f3537e1687a97c54da26c06548866 | |
parent | 743cb89f91a030d38740defa775f9d2406e74e24 (diff) |
When uniformity analysis is disabled, no procedures (even the kernel entry
point) will be regarded as uniform. This simplification avoids various edge
cases.
-rw-r--r-- | Source/GPUVerify/GPUVerifier.cs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Source/GPUVerify/GPUVerifier.cs b/Source/GPUVerify/GPUVerifier.cs index 5afabe80..868bcaa1 100644 --- a/Source/GPUVerify/GPUVerifier.cs +++ b/Source/GPUVerify/GPUVerifier.cs @@ -475,8 +475,10 @@ namespace GPUVerify private void DoUniformityAnalysis() { - var entryPoints = new HashSet<Implementation>(); - entryPoints.Add(KernelImplementation); + var entryPoints = new HashSet<Implementation>();
+ if (CommandLineOptions.DoUniformityAnalysis) {
+ entryPoints.Add(KernelImplementation);
+ } var nonUniformVars = new Variable[] { _X, _Y, _Z, _GROUP_X, _GROUP_Y, _GROUP_Z }; @@ -1910,7 +1912,7 @@ namespace GPUVerify { if (CommandLineOptions.SmartPredication) { - SmartBlockPredicator.Predicate(Program, proc => proc != KernelProcedure, uniformityAnalyser); + SmartBlockPredicator.Predicate(Program, proc => true, uniformityAnalyser); } else { |