diff options
author | 2012-08-14 15:43:49 -0700 | |
---|---|---|
committer | 2012-08-14 15:43:49 -0700 | |
commit | 84c536ab99a31a5a11637894952e608697a42606 (patch) | |
tree | ca088335b8a1f4c128547b83376fe951c85a4f63 /Source/GPUVerify/KernelDualiser.cs | |
parent | c8f24efe0511fd5129753ad288cdc16c354f4d1a (diff) | |
parent | 486a0227c6d7864371265909f369f0ea3fd4851f (diff) |
Merge
Diffstat (limited to 'Source/GPUVerify/KernelDualiser.cs')
-rw-r--r-- | Source/GPUVerify/KernelDualiser.cs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Source/GPUVerify/KernelDualiser.cs b/Source/GPUVerify/KernelDualiser.cs index fecd26fa..272d0a1b 100644 --- a/Source/GPUVerify/KernelDualiser.cs +++ b/Source/GPUVerify/KernelDualiser.cs @@ -106,12 +106,14 @@ namespace GPUVerify { if (verifier.uniformityAnalyser.knowsOf(Call.callee) && verifier.uniformityAnalyser.IsUniform(Call.callee, verifier.uniformityAnalyser.GetInParameter(Call.callee, i))) {
uniformNewIns.Add(Call.Ins[i]);
}
- else {
+ else if(!verifier.OnlyThread2.Contains(Call.callee)) {
nonUniformNewIns.Add(new VariableDualiser(1, verifier.uniformityAnalyser, procName).VisitExpr(Call.Ins[i]));
}
}
for (int i = 0; i < Call.Ins.Count; i++) {
- if (!(verifier.uniformityAnalyser.knowsOf(Call.callee) && verifier.uniformityAnalyser.IsUniform(Call.callee, verifier.uniformityAnalyser.GetInParameter(Call.callee, i)))) {
+ if (
+ !(verifier.uniformityAnalyser.knowsOf(Call.callee) && verifier.uniformityAnalyser.IsUniform(Call.callee, verifier.uniformityAnalyser.GetInParameter(Call.callee, i)))
+ && !verifier.OnlyThread1.Contains(Call.callee)) {
nonUniformNewIns.Add(new VariableDualiser(2, verifier.uniformityAnalyser, procName).VisitExpr(Call.Ins[i]));
}
}
|