C#: Sign analysis support for unsigned right shift.

This commit is contained in:
Michael Nebel
2023-01-09 10:39:02 +01:00
parent d06a877709
commit 2568318460
2 changed files with 8 additions and 0 deletions

View File

@@ -404,6 +404,13 @@ module ExprNode {
override TRShiftOp getOp() { any() }
}
/** An unsigned right-shift operation. */
class UnsignedRightShiftExpr extends BinaryOperation {
override CS::UnsignedRightShiftExpr e;
override TURShiftOp getOp() { any() }
}
/** A conditional expression. */
class ConditionalExpr extends ExprNode {
override CS::ConditionalExpr e;

View File

@@ -213,6 +213,7 @@ private module Impl {
not e.getExpr() instanceof BitwiseXorExpr and
not e.getExpr() instanceof LeftShiftExpr and
not e.getExpr() instanceof RightShiftExpr and
not e.getExpr() instanceof UnsignedRightShiftExpr and
not e.getExpr() instanceof ConditionalExpr and
not e.getExpr() instanceof RefExpr and
not e.getExpr() instanceof LocalVariableDeclAndInitExpr and