From 34b9791e460d8e44ca6bfcd3d44b86525dfb9074 Mon Sep 17 00:00:00 2001 From: Anders Schack-Mulligen Date: Tue, 31 Oct 2023 15:32:25 +0100 Subject: [PATCH] Rangeanalysis: Remove superfluous ignoreSsaReadCopy. --- .../semantic/analysis/RangeAnalysisConstantSpecific.qll | 8 -------- .../semantic/analysis/RangeAnalysisRelativeSpecific.qll | 8 -------- .../new/internal/semantic/analysis/RangeUtils.qll | 3 +-- java/ql/lib/semmle/code/java/dataflow/RangeAnalysis.qll | 2 -- .../rangeanalysis/codeql/rangeanalysis/RangeAnalysis.qll | 8 -------- 5 files changed, 1 insertion(+), 28 deletions(-) diff --git a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeAnalysisConstantSpecific.qll b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeAnalysisConstantSpecific.qll index 3993fc87b51..3254b885274 100644 --- a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeAnalysisConstantSpecific.qll +++ b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeAnalysisConstantSpecific.qll @@ -8,14 +8,6 @@ private import RangeAnalysisImpl private import codeql.rangeanalysis.RangeAnalysis module CppLangImplConstant implements LangSig { - /** - * Holds if the specified expression should be excluded from the result of `ssaRead()`. - * - * This predicate is to keep the results identical to the original Java implementation. It should be - * removed once we have the new implementation matching the old results exactly. - */ - predicate ignoreSsaReadCopy(SemExpr e) { none() } - /** * Ignore the bound on this expression. * diff --git a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeAnalysisRelativeSpecific.qll b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeAnalysisRelativeSpecific.qll index aad0a9cdfd4..de5b41a559d 100644 --- a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeAnalysisRelativeSpecific.qll +++ b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeAnalysisRelativeSpecific.qll @@ -9,14 +9,6 @@ private import semmle.code.cpp.rangeanalysis.RangeAnalysisUtils private import codeql.rangeanalysis.RangeAnalysis module CppLangImplRelative implements LangSig { - /** - * Holds if the specified expression should be excluded from the result of `ssaRead()`. - * - * This predicate is to keep the results identical to the original Java implementation. It should be - * removed once we have the new implementation matching the old results exactly. - */ - predicate ignoreSsaReadCopy(SemExpr e) { none() } - /** * Ignore the bound on this expression. * diff --git a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeUtils.qll b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeUtils.qll index 1afc3af1e29..c61bf4817c2 100644 --- a/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeUtils.qll +++ b/cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeUtils.qll @@ -32,8 +32,7 @@ module RangeUtil Lang> implements UtilSig { result = v.(SemSsaExplicitUpdate).getSourceExpr() and delta = D::fromFloat(0) or - result.(SemCopyValueExpr).getOperand() = semSsaRead(v, delta) and - not Lang::ignoreSsaReadCopy(result) + result.(SemCopyValueExpr).getOperand() = semSsaRead(v, delta) or result.(SemStoreExpr).getOperand() = semSsaRead(v, delta) } diff --git a/java/ql/lib/semmle/code/java/dataflow/RangeAnalysis.qll b/java/ql/lib/semmle/code/java/dataflow/RangeAnalysis.qll index f1f8d16c77e..47b9ccbca43 100644 --- a/java/ql/lib/semmle/code/java/dataflow/RangeAnalysis.qll +++ b/java/ql/lib/semmle/code/java/dataflow/RangeAnalysis.qll @@ -315,8 +315,6 @@ module IntDelta implements DeltaSig { } module JavaLangImpl implements LangSig { - predicate ignoreSsaReadCopy(Sem::Expr e) { none() } - /** * Holds if `e >= bound` (if `upper = false`) or `e <= bound` (if `upper = true`). */ diff --git a/shared/rangeanalysis/codeql/rangeanalysis/RangeAnalysis.qll b/shared/rangeanalysis/codeql/rangeanalysis/RangeAnalysis.qll index b399a390688..89ee8a72ca9 100644 --- a/shared/rangeanalysis/codeql/rangeanalysis/RangeAnalysis.qll +++ b/shared/rangeanalysis/codeql/rangeanalysis/RangeAnalysis.qll @@ -250,14 +250,6 @@ signature module DeltaSig { } signature module LangSig { - /** - * Holds if the specified expression should be excluded from the result of `ssaRead()`. - * - * This predicate is to keep the results identical to the original Java implementation. It should be - * removed once we have the new implementation matching the old results exactly. - */ - predicate ignoreSsaReadCopy(Sem::Expr e); - /** * Holds if `e >= bound` (if `upper = false`) or `e <= bound` (if `upper = true`). */