From ec57ad7414bbd8b30be382f6b3227092fd2e6406 Mon Sep 17 00:00:00 2001 From: Danyal Date: Tue, 28 Mar 2023 20:35:56 +0200 Subject: [PATCH 01/28] added benchmarks for floats --- regression-tests/floats/nan_double.c | 7 +++++++ regression-tests/floats/nan_double_range.c | 11 +++++++++++ regression-tests/floats/nan_floats.c | 7 +++++++ regression-tests/floats/nan_floats_range.c | 10 ++++++++++ 4 files changed, 35 insertions(+) create mode 100644 regression-tests/floats/nan_double.c create mode 100644 regression-tests/floats/nan_double_range.c create mode 100644 regression-tests/floats/nan_floats.c create mode 100644 regression-tests/floats/nan_floats_range.c diff --git a/regression-tests/floats/nan_double.c b/regression-tests/floats/nan_double.c new file mode 100644 index 00000000..376357f8 --- /dev/null +++ b/regression-tests/floats/nan_double.c @@ -0,0 +1,7 @@ +int main() +{ + double x = _; + + assert(x==x); + return 0; +} diff --git a/regression-tests/floats/nan_double_range.c b/regression-tests/floats/nan_double_range.c new file mode 100644 index 00000000..94d5200c --- /dev/null +++ b/regression-tests/floats/nan_double_range.c @@ -0,0 +1,11 @@ + +int main() +{ + float x = _; + + if (x >= -1e10 && x <= 1e10) { + assert(x==x); + } + return 0; +} + diff --git a/regression-tests/floats/nan_floats.c b/regression-tests/floats/nan_floats.c new file mode 100644 index 00000000..c3a323b2 --- /dev/null +++ b/regression-tests/floats/nan_floats.c @@ -0,0 +1,7 @@ +int main() +{ + float x = _; + + assert(x==x); + return 0; +} diff --git a/regression-tests/floats/nan_floats_range.c b/regression-tests/floats/nan_floats_range.c new file mode 100644 index 00000000..76d6ff1a --- /dev/null +++ b/regression-tests/floats/nan_floats_range.c @@ -0,0 +1,10 @@ +int main() +{ + float x = _; + + if (x >= -1e10 && x <= 1e10) { + assert(x==x); + } + return 0; +} + From 03516eba2ee3571a4156ef2f0025bc8ea88d5a63 Mon Sep 17 00:00:00 2001 From: Danyal Date: Wed, 29 Mar 2023 19:57:52 +0200 Subject: [PATCH 02/28] added support for NAN and INF in parser --- cc-parser/concurrentC.cf | 3 +++ regression-tests/floats/INFINITY_macro.c | 6 ++++++ regression-tests/floats/NAN_macro.c | 6 ++++++ regression-tests/floats/float_add.c | 8 ++++++++ src/tricera/concurrency/CCReader.scala | 2 +- 5 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 regression-tests/floats/INFINITY_macro.c create mode 100644 regression-tests/floats/NAN_macro.c create mode 100644 regression-tests/floats/float_add.c diff --git a/cc-parser/concurrentC.cf b/cc-parser/concurrentC.cf index cf4d9181..d4bb6851 100644 --- a/cc-parser/concurrentC.cf +++ b/cc-parser/concurrentC.cf @@ -313,6 +313,7 @@ token CFloat (((digit+ '.' digit+)|(digit+ '.')|('.' digit+))(('e'|'E')('-')? di token CLongDouble (((digit+ '.' digit+)|(digit+ '.')|('.' digit+))(('e'|'E')('-')? digit+)?('l'|'L'))|((digit+ ('e'|'E')('-')? digit+)('l'|'L')); +token Cnan ('N''A''N') Ecomma. Exp ::= Exp "," Exp2; @@ -354,6 +355,8 @@ Econst. Exp17 ::= Constant; Estring. Exp17 ::= String; Enondet. Exp17 ::= "_"; +Enan. Constant ::= Cnan; +Einf. Constant ::= "INFINITY"; Efloat. Constant ::= Double; Echar. Constant ::= Char; Eunsigned. Constant ::= Unsigned; diff --git a/regression-tests/floats/INFINITY_macro.c b/regression-tests/floats/INFINITY_macro.c new file mode 100644 index 00000000..16521bcb --- /dev/null +++ b/regression-tests/floats/INFINITY_macro.c @@ -0,0 +1,6 @@ +#include + +int main() { + float inf = INFINITY; + assert(isinf(inf)); +} \ No newline at end of file diff --git a/regression-tests/floats/NAN_macro.c b/regression-tests/floats/NAN_macro.c new file mode 100644 index 00000000..81ea5e53 --- /dev/null +++ b/regression-tests/floats/NAN_macro.c @@ -0,0 +1,6 @@ +#include + +int main() { + float NaN = NAN; + assert(isnan(NaN)); +} \ No newline at end of file diff --git a/regression-tests/floats/float_add.c b/regression-tests/floats/float_add.c new file mode 100644 index 00000000..a48a4e9f --- /dev/null +++ b/regression-tests/floats/float_add.c @@ -0,0 +1,8 @@ + +int main () { + float a = 1.0f; + float b = 2.0f; + + assert(a+b == 3.0f); + return 0; +} \ No newline at end of file diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index f8f4a207..276044ec 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -4225,7 +4225,7 @@ class CCReader private (prog : Program, Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) // case constant : Eoctalunslong. Constant ::= OctalUnsLong; // case constant : Ecdouble. Constant ::= CDouble; -// case constant : Ecfloat. Constant ::= CFloat; +// case constant : Ecfloat => Constant ::= CFloat; // case constant : Eclongdouble. Constant ::= CLongDouble; case constant : Eint => pushVal(CCTerm(IExpression.i(IdealInt(constant.unboundedinteger_)), CCInt(), From 60b7fae1e548705084d89f59336e7fad06262a64 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Tue, 11 Apr 2023 15:36:21 +0200 Subject: [PATCH 03/28] Began making some changes in the code, don't know how to endode Fractionals as an ITerm --- .../floating-point/double/double_add.c | 8 +++++ .../floating-point/double/double_sub.c | 5 +++ .../double}/nan_double.c | 0 .../double}/nan_double_range.c | 0 .../float}/float_add.c | 2 +- .../float}/nan_floats.c | 0 .../float}/nan_floats_range.c | 0 .../long_double/long_double_add.c | 8 +++++ .../long_double/nan_long_double.c | 7 ++++ .../long_double/nan_long_double_range.c | 9 ++++++ .../misc}/INFINITY_macro.c | 0 .../misc}/NAN_macro.c | 0 .../floating-point/misc/int-test.c | 6 ++++ src/tricera/concurrency/CCReader.scala | 32 +++++++++++++++---- 14 files changed, 69 insertions(+), 8 deletions(-) create mode 100644 regression-tests/floating-point/double/double_add.c create mode 100644 regression-tests/floating-point/double/double_sub.c rename regression-tests/{floats => floating-point/double}/nan_double.c (100%) rename regression-tests/{floats => floating-point/double}/nan_double_range.c (100%) rename regression-tests/{floats => floating-point/float}/float_add.c (97%) rename regression-tests/{floats => floating-point/float}/nan_floats.c (100%) rename regression-tests/{floats => floating-point/float}/nan_floats_range.c (100%) create mode 100644 regression-tests/floating-point/long_double/long_double_add.c create mode 100644 regression-tests/floating-point/long_double/nan_long_double.c create mode 100644 regression-tests/floating-point/long_double/nan_long_double_range.c rename regression-tests/{floats => floating-point/misc}/INFINITY_macro.c (100%) rename regression-tests/{floats => floating-point/misc}/NAN_macro.c (100%) create mode 100644 regression-tests/floating-point/misc/int-test.c diff --git a/regression-tests/floating-point/double/double_add.c b/regression-tests/floating-point/double/double_add.c new file mode 100644 index 00000000..d8c5ff56 --- /dev/null +++ b/regression-tests/floating-point/double/double_add.c @@ -0,0 +1,8 @@ + +int main () { + double a = 1.0; + double b = 2.0; + + assert(a+b == 3.0); + return 0; +} diff --git a/regression-tests/floating-point/double/double_sub.c b/regression-tests/floating-point/double/double_sub.c new file mode 100644 index 00000000..58df8dcd --- /dev/null +++ b/regression-tests/floating-point/double/double_sub.c @@ -0,0 +1,5 @@ +int main() { + + + +} diff --git a/regression-tests/floats/nan_double.c b/regression-tests/floating-point/double/nan_double.c similarity index 100% rename from regression-tests/floats/nan_double.c rename to regression-tests/floating-point/double/nan_double.c diff --git a/regression-tests/floats/nan_double_range.c b/regression-tests/floating-point/double/nan_double_range.c similarity index 100% rename from regression-tests/floats/nan_double_range.c rename to regression-tests/floating-point/double/nan_double_range.c diff --git a/regression-tests/floats/float_add.c b/regression-tests/floating-point/float/float_add.c similarity index 97% rename from regression-tests/floats/float_add.c rename to regression-tests/floating-point/float/float_add.c index a48a4e9f..2dcc2665 100644 --- a/regression-tests/floats/float_add.c +++ b/regression-tests/floating-point/float/float_add.c @@ -5,4 +5,4 @@ int main () { assert(a+b == 3.0f); return 0; -} \ No newline at end of file +} diff --git a/regression-tests/floats/nan_floats.c b/regression-tests/floating-point/float/nan_floats.c similarity index 100% rename from regression-tests/floats/nan_floats.c rename to regression-tests/floating-point/float/nan_floats.c diff --git a/regression-tests/floats/nan_floats_range.c b/regression-tests/floating-point/float/nan_floats_range.c similarity index 100% rename from regression-tests/floats/nan_floats_range.c rename to regression-tests/floating-point/float/nan_floats_range.c diff --git a/regression-tests/floating-point/long_double/long_double_add.c b/regression-tests/floating-point/long_double/long_double_add.c new file mode 100644 index 00000000..2128d6ed --- /dev/null +++ b/regression-tests/floating-point/long_double/long_double_add.c @@ -0,0 +1,8 @@ + +int main () { + long double a = 1.0l; + long double b = 2.0l; + + assert(a+b == 3.0l); + return 0; +} diff --git a/regression-tests/floating-point/long_double/nan_long_double.c b/regression-tests/floating-point/long_double/nan_long_double.c new file mode 100644 index 00000000..c3a323b2 --- /dev/null +++ b/regression-tests/floating-point/long_double/nan_long_double.c @@ -0,0 +1,7 @@ +int main() +{ + float x = _; + + assert(x==x); + return 0; +} diff --git a/regression-tests/floating-point/long_double/nan_long_double_range.c b/regression-tests/floating-point/long_double/nan_long_double_range.c new file mode 100644 index 00000000..5aea7765 --- /dev/null +++ b/regression-tests/floating-point/long_double/nan_long_double_range.c @@ -0,0 +1,9 @@ +int main() +{ + long double x = _; + + if (x >= -1e10 && x <= 1e10) { + assert(x==x); + } + return 0; +} diff --git a/regression-tests/floats/INFINITY_macro.c b/regression-tests/floating-point/misc/INFINITY_macro.c similarity index 100% rename from regression-tests/floats/INFINITY_macro.c rename to regression-tests/floating-point/misc/INFINITY_macro.c diff --git a/regression-tests/floats/NAN_macro.c b/regression-tests/floating-point/misc/NAN_macro.c similarity index 100% rename from regression-tests/floats/NAN_macro.c rename to regression-tests/floating-point/misc/NAN_macro.c diff --git a/regression-tests/floating-point/misc/int-test.c b/regression-tests/floating-point/misc/int-test.c new file mode 100644 index 00000000..c1354f1a --- /dev/null +++ b/regression-tests/floating-point/misc/int-test.c @@ -0,0 +1,6 @@ +int main() { + int a = 1; + int b = 2; + assert(a+b==3); +} + diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 276044ec..6360a7d6 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -29,7 +29,7 @@ package tricera.concurrency -import ap.basetypes.IdealInt +import ap.basetypes.{IdealInt, IdealRat} import ap.parser._ import ap.theories.{ADT, ExtArray, Heap, ModuloArithmetic} import ap.types.{MonoSortedIFunction, MonoSortedPredicate, SortedConstantTerm} @@ -40,10 +40,11 @@ import lazabs.horn.abstractions.VerificationHints import lazabs.horn.abstractions.VerificationHints.{VerifHintElement, VerifHintInitPred, VerifHintTplElement, VerifHintTplEqTerm, VerifHintTplPred} import lazabs.horn.bottomup.HornClauses import IExpression.{ConstantTerm, Predicate, Sort, toFunApplier} +import ap.theories.rationals.Rationals +import ap.theories.rationals.Rationals.Fraction +import ap.theories.rationals.Rationals.denom -import scala.collection.mutable.{ArrayBuffer, Buffer, Stack, HashMap => MHashMap, - HashSet => MHashSet} - +import scala.collection.mutable.{ArrayBuffer, Buffer, Stack, HashMap => MHashMap, HashSet => MHashSet} import tricera.Util._ import tricera.acsl.{ACSLTranslator, FunctionContract} import tricera.params.TriCeraParameters @@ -141,6 +142,9 @@ object CCReader { case CCULong() => UnsignedBVSort(32) case CCLongLong() => SignedBVSort(64) case CCULongLong() => UnsignedBVSort(64) + case CCFloat() => Rationals.dom + //case CCDouble() => ...? + //case CCLongDouble() => ...? case CCDuration() => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -159,6 +163,9 @@ object CCReader { case CCULong() => UnsignedBVSort(64) case CCLongLong() => SignedBVSort(64) case CCULongLong() => UnsignedBVSort(64) + //case CCFloat() => Rationals.dom + //case CCDouble() => ...? + //case CCLongDouble() => ...? case CCDuration() => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -267,6 +274,13 @@ object CCReader { val UNSIGNED_RANGE : IdealInt = IdealInt("FFFFFFFF", 16) // 32bit val isUnsigned : Boolean = false } + + case class CCFloat()(implicit arithmeticMode: ArithmeticMode.Value) + extends CCType (arithmeticMode){ + override def toString: String = "float" + def shortName = "float" + } + case class CCUInt()(implicit arithmeticMode : ArithmeticMode.Value) extends CCArithType(arithmeticMode) { override def toString : String = "unsigned int" @@ -4223,10 +4237,14 @@ class CCReader private (prog : Program, pushVal(CCTerm(IdealInt(constant.octallong_.substring(0, constant.octallong_.size - 1), 8), CCLong(), Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) -// case constant : Eoctalunslong. Constant ::= OctalUnsLong; + // case constant : Eoctalunslong. Constant ::= OctalUnsLong; // case constant : Ecdouble. Constant ::= CDouble; -// case constant : Ecfloat => Constant ::= CFloat; -// case constant : Eclongdouble. Constant ::= CLongDouble; + + case constant : Ecfloat => + pushVal(CCTerm(Fraction(IdealRat(constant.cfloat_), IdealRat(constant.cfloat_)), CCFloat(), + Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) + + // case constant : Eclongdouble. Constant ::= CLongDouble; case constant : Eint => pushVal(CCTerm(IExpression.i(IdealInt(constant.unboundedinteger_)), CCInt(), Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) From 9f4dc9c576b63f632b633c6ad34c0f761c10f001 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Thu, 13 Apr 2023 20:52:07 +0200 Subject: [PATCH 04/28] added double2fraction and float2fraction, float2fraction seems to work, tests should be added to both --- src/tricera/concurrency/CCReader.scala | 141 ++++++++++++++++++++++++- 1 file changed, 138 insertions(+), 3 deletions(-) diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 6360a7d6..f4282ca1 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -51,6 +51,7 @@ import tricera.params.TriCeraParameters import tricera.parsers.AnnotationParser import tricera.parsers.AnnotationParser._ + object CCReader { def apply(input : java.io.Reader, entryFunction : String, arithMode : ArithmeticMode.Value = ArithmeticMode.Mathematical, @@ -4240,9 +4241,9 @@ class CCReader private (prog : Program, // case constant : Eoctalunslong. Constant ::= OctalUnsLong; // case constant : Ecdouble. Constant ::= CDouble; - case constant : Ecfloat => - pushVal(CCTerm(Fraction(IdealRat(constant.cfloat_), IdealRat(constant.cfloat_)), CCFloat(), - Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) + // case constant : Ecfloat => + // pushVal(CCTerm(Fraction(constant.cfloat_, constant.cfloat_), CCFloat(), + // Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) // case constant : Eclongdouble. Constant ::= CLongDouble; case constant : Eint => @@ -4255,6 +4256,140 @@ class CCReader private (prog : Program, ////////////////////////////////////////////////////////////////////////////// +import scala.util.control._ +import scala.math.pow + + private def double2fraction(fp: String) : (String, String) = { + val f : Double = fp.toDouble + if (f.isNaN) { + ("0", "0") + } + else if (f.isInfinity) { + ("0", "0") + } + else { + val mantissaBits: Long = (java.lang.Double.doubleToLongBits(f) << 11 >>> 11) + val mantissa: String = String.format("%52s", java.lang.Long.toBinaryString(mantissaBits)).replace(' ', '0') + + val exponentBits: Long = (java.lang.Double.doubleToLongBits(f) << 1 >>> 53) + val exponent: String = String.format("%11s", java.lang.Long.toBinaryString(exponentBits)).replace(' ', '0') + + val signBit = (java.lang.Double.doubleToLongBits(f) >>> 63).toBinaryString + + var bitCount: Int = 53 + + var denominator: Int = 0 + var numerator: Int = 0 + var loop = new Breaks + loop.breakable { + for (bit <- mantissa.reverse) { + if (bit == '1') { + denominator = (pow(2, bitCount)).toInt + loop.break() + } + bitCount = bitCount - 1 + } + } + + // reset bitCount + bitCount = 1 + numerator = denominator + for (bit <- mantissa) { + if (bit == '1') { + numerator = numerator + denominator / pow(2, bitCount).toInt + } + bitCount = bitCount + 1 + } + + bitCount = 0 + var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 + for (bit <- exponent.reverse) { + if (bit == '1') { + exponentInt = exponentInt + pow(2, bitCount).toInt + } + bitCount = bitCount + 1 + } + + if (exponentInt > 0) { + numerator = numerator * pow(2, exponentInt).toInt + } + if (exponentInt < 0) { + denominator = denominator * pow(2, exponentInt).toInt + } + if (signBit == "1") { + numerator = -numerator + } + (numerator.toString, denominator.toString) + } + } + + + private def float2fraction(fp : String) : (String, String) = { + val f : Float = fp.toFloat + + if(f.isNaN) { + ("0", "0") + } + else if(f.isInfinity) { + ("0", "0") + } + else { + val mantissaBits: Int = java.lang.Float.floatToIntBits(f) << 8 >>> 8 + val mantissa: String = String.format("%23s", Integer.toBinaryString(mantissaBits)).replace(' ', '0') + + val exponentBits: Int = (java.lang.Float.floatToIntBits(f) << 1 >>> 24) + val exponent: String = String.format("%8s", Integer.toBinaryString(exponentBits)).replace(' ', '0') + + val signBit = (java.lang.Float.floatToIntBits(f) >>> 31).toBinaryString + + var bitCount: Int = 23 + + var denominator : Int = 0 + var numerator : Int = 0 + var loop = new Breaks + loop.breakable { + for (bit <- mantissa.reverse) { + if (bit == '1') { + denominator = (pow(2, bitCount)).toInt + loop.break() + } + bitCount = bitCount - 1 + } + } + + // reset bitCount + bitCount = 1 + numerator = denominator + for (bit <- mantissa) { + if (bit == '1') { + numerator = numerator + denominator/pow(2, bitCount).toInt + } + bitCount = bitCount + 1 + } + + bitCount = 0 + var exponentInt : Int = - pow(2, exponent.length() - 1).toInt + 1 + for (bit <- exponent.reverse) { + if (bit == '1') { + exponentInt = exponentInt + pow(2, bitCount).toInt + } + bitCount = bitCount + 1 + } + + if (exponentInt > 0) { + numerator = numerator * pow(2, exponentInt).toInt + } + if (exponentInt < 0) { + denominator = denominator * pow(2, exponentInt).toInt + } + if (signBit == "1") { + numerator = -numerator + } + (numerator.toString, denominator.toString) + } + } + ////////////////////////////////////////////////////////////////////////////// + private def inlineFunction(functionDef : Function_def, entry : CCPredicate, exit : CCPredicate, From 51affebeae768ba0635abe3ddd968188d64925b3 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Wed, 19 Apr 2023 10:35:18 +0200 Subject: [PATCH 05/28] Fixed bug in 2fraction --- build.sbt | 1 + .../floating-point/float/float_add.c | 7 +- src/tricera/concurrency/CCReader.scala | 40 ++--- .../concurrency/CCReaderCollectVarDecls.scala | 138 +++++++++++++++++- 4 files changed, 164 insertions(+), 22 deletions(-) diff --git a/build.sbt b/build.sbt index 485289cb..47eb6841 100644 --- a/build.sbt +++ b/build.sbt @@ -17,6 +17,7 @@ lazy val commonSettings = Seq( // Jar files for the parsers + lazy val parserSettings = Seq( publishArtifact in packageDoc := false, publishArtifact in packageSrc := false, diff --git a/regression-tests/floating-point/float/float_add.c b/regression-tests/floating-point/float/float_add.c index 2dcc2665..22c6c2a6 100644 --- a/regression-tests/floating-point/float/float_add.c +++ b/regression-tests/floating-point/float/float_add.c @@ -1,8 +1,7 @@ int main () { - float a = 1.0f; - float b = 2.0f; - - assert(a+b == 3.0f); + float b = 2.5f; + float a = 0.75f; + assert(a+b == 3.25f); return 0; } diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index f4282ca1..c4ea81bc 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -40,6 +40,7 @@ import lazabs.horn.abstractions.VerificationHints import lazabs.horn.abstractions.VerificationHints.{VerifHintElement, VerifHintInitPred, VerifHintTplElement, VerifHintTplEqTerm, VerifHintTplPred} import lazabs.horn.bottomup.HornClauses import IExpression.{ConstantTerm, Predicate, Sort, toFunApplier} +import ap.basetypes.IdealInt._ import ap.theories.rationals.Rationals import ap.theories.rationals.Rationals.Fraction import ap.theories.rationals.Rationals.denom @@ -2453,6 +2454,8 @@ class CCReader private (prog : Program, // ignore case _ : Tchar => // ignore + case _ : Tfloat => + typ = CCFloat() case _ : Tsigned => typ = CCInt() case _ : Tunsigned => @@ -4241,9 +4244,10 @@ class CCReader private (prog : Program, // case constant : Eoctalunslong. Constant ::= OctalUnsLong; // case constant : Ecdouble. Constant ::= CDouble; - // case constant : Ecfloat => - // pushVal(CCTerm(Fraction(constant.cfloat_, constant.cfloat_), CCFloat(), - // Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) + case constant : Ecfloat => + val frac : (String, String) = float2fraction(constant.cfloat_) + pushVal(CCTerm(Fraction(IExpression.i((IdealInt(frac._1))), IExpression.i(IdealInt(frac._2))), CCFloat(), + Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) // case constant : Eclongdouble. Constant ::= CLongDouble; case constant : Eint => @@ -4257,9 +4261,9 @@ class CCReader private (prog : Program, ////////////////////////////////////////////////////////////////////////////// import scala.util.control._ -import scala.math.pow +import scala.math._ - private def double2fraction(fp: String) : (String, String) = { + def double2fraction(fp: String) : (String, String) = { val f : Double = fp.toDouble if (f.isNaN) { ("0", "0") @@ -4324,16 +4328,17 @@ import scala.math.pow } - private def float2fraction(fp : String) : (String, String) = { - val f : Float = fp.toFloat + def float2fraction(fp: String): (String, String) = { + val f: Float = fp.toFloat - if(f.isNaN) { + if (f.isNaN) { ("0", "0") } - else if(f.isInfinity) { + else if (f.isInfinity) { ("0", "0") } else { + // val mantissaBits: Int = java.lang.Float.floatToIntBits(f) << 8 >>> 8 val mantissa: String = String.format("%23s", Integer.toBinaryString(mantissaBits)).replace(' ', '0') @@ -4344,13 +4349,13 @@ import scala.math.pow var bitCount: Int = 23 - var denominator : Int = 0 - var numerator : Int = 0 + var denominator: BigInt = 1 + var numerator: BigInt = 0 var loop = new Breaks loop.breakable { for (bit <- mantissa.reverse) { if (bit == '1') { - denominator = (pow(2, bitCount)).toInt + denominator = BigInt(2).pow(bitCount) loop.break() } bitCount = bitCount - 1 @@ -4362,25 +4367,25 @@ import scala.math.pow numerator = denominator for (bit <- mantissa) { if (bit == '1') { - numerator = numerator + denominator/pow(2, bitCount).toInt + numerator = numerator + denominator / BigInt(2).pow(bitCount) } bitCount = bitCount + 1 } bitCount = 0 - var exponentInt : Int = - pow(2, exponent.length() - 1).toInt + 1 + var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 for (bit <- exponent.reverse) { if (bit == '1') { exponentInt = exponentInt + pow(2, bitCount).toInt } bitCount = bitCount + 1 } - + denominator if (exponentInt > 0) { - numerator = numerator * pow(2, exponentInt).toInt + numerator = numerator * BigInt(2).pow(exponentInt) } if (exponentInt < 0) { - denominator = denominator * pow(2, exponentInt).toInt + denominator = denominator * BigInt(2).pow(abs(exponentInt)) } if (signBit == "1") { numerator = -numerator @@ -4388,6 +4393,7 @@ import scala.math.pow (numerator.toString, denominator.toString) } } + ////////////////////////////////////////////////////////////////////////////// private def inlineFunction(functionDef : Function_def, diff --git a/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala b/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala index 7087e4ac..fc7dc6a9 100644 --- a/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala +++ b/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala @@ -2,8 +2,144 @@ package tricera.concurrency import org.scalatest.flatspec.AnyFlatSpec import CCReader._ -import tricera.params.TriCeraParameters +import scala.util.control._ +import scala.math.BigInt +import scala.math._ +import java.math.BigInteger +import org.scalatest._ + +import scala.math.BigDecimal.int2bigDecimal + +class toFractionTests extends AnyFlatSpec { + // create a dummy file to create an instance of CCReader + val testFileReader = new java.io.StringReader( + """ + |void main(){ + |} + |""".stripMargin + ) + + // arithmetic mode must be implicitly declared for the correct types + // would need to be changed or scoped to test different arith. modes + implicit def arithMode = tricera.params.TriCeraParameters.get.arithMode + + val (reader, modelledHeap) = CCReader(input = testFileReader, + entryFunction = "main") + + + def float2fractionTest(fp: String): (String, String) = { + val f: Float = fp.toFloat + + if (f.isNaN) { + ("0", "0") + } + else if (f.isInfinity) { + ("0", "0") + } + else { + // + val mantissaBits: Int = java.lang.Float.floatToIntBits(f) << 8 >>> 8 + val mantissa: String = String.format("%23s", Integer.toBinaryString(mantissaBits)).replace(' ', '0') + + val exponentBits: Int = (java.lang.Float.floatToIntBits(f) << 1 >>> 24) + val exponent: String = String.format("%8s", Integer.toBinaryString(exponentBits)).replace(' ', '0') + + val signBit = (java.lang.Float.floatToIntBits(f) >>> 31).toBinaryString + + var bitCount: Int = 23 + + var denominator: BigInt = 1 + var numerator : BigInt = 0 + var loop = new Breaks + loop.breakable { + for (bit <- mantissa.reverse) { + if (bit == '1') { + denominator = BigInt(2).pow(bitCount) + loop.break() + } + bitCount = bitCount - 1 + } + } + + // reset bitCount + bitCount = 1 + numerator = denominator + for (bit <- mantissa) { + if (bit == '1') { + numerator = numerator + denominator / BigInt(2).pow(bitCount) + } + bitCount = bitCount + 1 + } + + bitCount = 0 + var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 + for (bit <- exponent.reverse) { + if (bit == '1') { + exponentInt = exponentInt + pow(2, bitCount).toInt + } + bitCount = bitCount + 1 + } +denominator + if (exponentInt > 0) { + numerator = numerator * BigInt(2).pow(exponentInt) + } + if (exponentInt < 0) { + denominator = denominator * BigInt(2).pow(abs(exponentInt)) + } + if (signBit == "1") { + numerator = -numerator + } + (numerator.toString, denominator.toString) + } + } + + //////////////////////////////////////////////////////////////////////////////// + // Tests + var foo : (String, String) = float2fractionTest("2.0f") + assert(foo == ("2", "1")) + + foo = float2fractionTest("-2.0f") + assert(foo == ("-2", "1")) + + foo = float2fractionTest("8.0f") + assert(foo == ("8", "1")) + + foo = float2fractionTest("-8.0f") + assert(foo == ("-8", "1")) + + foo = float2fractionTest("3.14f") + assert(foo == ("26340230","8388608")) + + foo = float2fractionTest("-3.14f") + assert(foo == ("-26340230", "8388608")) + + foo = float2fractionTest("2.64f") + assert(foo == ("22145926", "8388608")) + + foo = float2fractionTest("-2.64f") + assert(foo == ("-22145926", "8388608")) + + foo = float2fractionTest("0.125f") + assert(foo == ("1", "8")) + + foo = float2fractionTest("-0.125f") + assert(foo == ("-1", "8")) + + foo = float2fractionTest("0.0032f") + assert(foo == ("13743895", "4294967296")) + + foo = float2fractionTest("-0.0032f") + assert(foo == ("-13743895", "4294967296")) + + foo = float2fractionTest("0.69f") + assert(foo == ("11576279", "16777216")) + + foo = float2fractionTest("-0.69f") + assert(foo == ("-11576279", "16777216")) + + +} class CCReaderCollectVarDecls extends AnyFlatSpec { //////////////////////////////////////////////////////////////////////////////// // Configuration From ab4f4e1fc250dbe2c20ccd252fe71c842272dcf6 Mon Sep 17 00:00:00 2001 From: Zafer Esen Date: Wed, 19 Apr 2023 11:53:36 +0200 Subject: [PATCH 06/28] Adds ADT encoding for floats and helper methods --- src/tricera/concurrency/CCReader.scala | 46 ++++++++++++++++++++++---- 1 file changed, 39 insertions(+), 7 deletions(-) diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index c4ea81bc..61c5e75d 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -39,7 +39,7 @@ import hornconcurrency.ParametricEncoder import lazabs.horn.abstractions.VerificationHints import lazabs.horn.abstractions.VerificationHints.{VerifHintElement, VerifHintInitPred, VerifHintTplElement, VerifHintTplEqTerm, VerifHintTplPred} import lazabs.horn.bottomup.HornClauses -import IExpression.{ConstantTerm, Predicate, Sort, toFunApplier} +import IExpression.{ConstantTerm, Predicate, Sort, toFunApplier, toPredApplier, i} import ap.basetypes.IdealInt._ import ap.theories.rationals.Rationals import ap.theories.rationals.Rationals.Fraction @@ -114,6 +114,35 @@ object CCReader { val Mathematical, ILP32, LP64, LLP64 = Value } + ////////////////////////////////////////////////////////////////////////////// + // Floats + + val floatADTCtorSignatures : Seq[(String, ADT.CtorSignature)] = Seq( + ("floatData", ADT.CtorSignature( + Seq(("getFloat", ADT.OtherSort(Rationals.dom))), ADT.ADTSort(0))), + ("NaN", ADT.CtorSignature(Nil, ADT.ADTSort(0))), + ("plusInfinity", ADT.CtorSignature(Nil, ADT.ADTSort(0))), + ("negativeInfinity", ADT.CtorSignature(Nil, ADT.ADTSort(0))) + ) + + val floatADT = new ADT(sortNames = Seq("floatADT"), floatADTCtorSignatures) + val floatADTSort = floatADT.sorts.head + + object FloatADT { + val floatCtor : MonoSortedIFunction = floatADT.constructors(0) + val getData : MonoSortedIFunction = floatADT.selectors(0)(0) + + val nan : ITerm = IFunApp(floatADT.constructors(1), Nil) + val plusInf : ITerm = ??? + val negInf : ITerm = ??? + + val isFloat : Predicate = floatADT.ctorIdPreds(0) + val isNan : Predicate = floatADT.ctorIdPreds(1) + val isPlusInf : Predicate = floatADT.ctorIdPreds(2) + val isNegInf : Predicate = floatADT.ctorIdPreds(3) + } + ////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////////// // todo: maybe make private to package? @@ -144,7 +173,7 @@ object CCReader { case CCULong() => UnsignedBVSort(32) case CCLongLong() => SignedBVSort(64) case CCULongLong() => UnsignedBVSort(64) - case CCFloat() => Rationals.dom + case CCFloat() => floatADTSort //case CCDouble() => ...? //case CCLongDouble() => ...? case CCDuration() => Sort.Nat @@ -827,7 +856,6 @@ class CCReader private (prog : Program, res } - ////////////////////////////////////////////////////////////////////////////// private val channels = new MHashMap[String, ParametricEncoder.CommChannel] @@ -4245,10 +4273,14 @@ class CCReader private (prog : Program, // case constant : Ecdouble. Constant ::= CDouble; case constant : Ecfloat => - val frac : (String, String) = float2fraction(constant.cfloat_) - pushVal(CCTerm(Fraction(IExpression.i((IdealInt(frac._1))), IExpression.i(IdealInt(frac._2))), CCFloat(), - Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) - + //val frac : (String, String) = float2fraction(constant.cfloat_) + val (num, denum) = float2fraction(constant.cfloat_) + val floatData = Fraction(i((IdealInt(num))), i(IdealInt(denum))) + pushVal(CCTerm(FloatADT.floatCtor(floatData), + CCFloat(), Some(getSourceInfo(constant)))) + + // assertProperty(FloatADT.isFloat(floatData), None) // todo: just an example of adding an implicit assertion + // addGuard(FloatADT.isFloat(floatData)) // todo: just an example of adding an assumption // case constant : Eclongdouble. Constant ::= CLongDouble; case constant : Eint => pushVal(CCTerm(IExpression.i(IdealInt(constant.unboundedinteger_)), CCInt(), From 88eab10a28a6ed002a6efce719624047222df26b Mon Sep 17 00:00:00 2001 From: Zafer Esen Date: Wed, 19 Apr 2023 12:41:15 +0200 Subject: [PATCH 07/28] Move everything that is floatADT related to FloatADT. --- src/tricera/concurrency/CCReader.scala | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 61c5e75d..7eb48db1 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -117,18 +117,19 @@ object CCReader { ////////////////////////////////////////////////////////////////////////////// // Floats - val floatADTCtorSignatures : Seq[(String, ADT.CtorSignature)] = Seq( - ("floatData", ADT.CtorSignature( - Seq(("getFloat", ADT.OtherSort(Rationals.dom))), ADT.ADTSort(0))), - ("NaN", ADT.CtorSignature(Nil, ADT.ADTSort(0))), - ("plusInfinity", ADT.CtorSignature(Nil, ADT.ADTSort(0))), - ("negativeInfinity", ADT.CtorSignature(Nil, ADT.ADTSort(0))) + object FloatADT { + private val floatADTCtorSignatures : Seq[(String, ADT.CtorSignature)] = Seq( + ("floatData", ADT.CtorSignature( + Seq(("getFloat", ADT.OtherSort(Rationals.dom))), ADT.ADTSort(0))), + ("NaN", ADT.CtorSignature(Nil, ADT.ADTSort(0))), + ("plusInfinity", ADT.CtorSignature(Nil, ADT.ADTSort(0))), + ("negativeInfinity", ADT.CtorSignature(Nil, ADT.ADTSort(0))) ) - val floatADT = new ADT(sortNames = Seq("floatADT"), floatADTCtorSignatures) - val floatADTSort = floatADT.sorts.head + val floatADT = new ADT(sortNames = Seq("floatADT"), + floatADTCtorSignatures) + val sort = floatADT.sorts.head - object FloatADT { val floatCtor : MonoSortedIFunction = floatADT.constructors(0) val getData : MonoSortedIFunction = floatADT.selectors(0)(0) @@ -173,7 +174,7 @@ object CCReader { case CCULong() => UnsignedBVSort(32) case CCLongLong() => SignedBVSort(64) case CCULongLong() => UnsignedBVSort(64) - case CCFloat() => floatADTSort + case CCFloat() => FloatADT.sort //case CCDouble() => ...? //case CCLongDouble() => ...? case CCDuration() => Sort.Nat From 35bcaee316c3973e0a2ef632e99b152505c4183f Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Fri, 21 Apr 2023 16:44:34 +0200 Subject: [PATCH 08/28] added Rational operators, does not work yet, unsure why --- .../{floating-point => }/double/double_add.c | 0 .../{floating-point => }/double/double_sub.c | 0 .../{floating-point => }/double/nan_double.c | 0 .../double/nan_double_range.c | 0 regression-tests/float/add_1.c | 6 +++ regression-tests/float/add_2.c | 6 +++ regression-tests/float/div_1.c | 6 +++ regression-tests/float/div_2.c | 6 +++ regression-tests/float/mul_1.c | 6 +++ regression-tests/float/mul_2.c | 6 +++ .../float/nan_floats.c => float/nan.c} | 0 .../nan_floats_range.c => float/nan_range.c} | 0 regression-tests/float/sub_1.c | 7 +++ regression-tests/float/sub_2.c | 6 +++ regression-tests/float/unmatched_type.c | 7 +++ .../floating-point/float/float_add.c | 7 --- .../long_double/long_double_add.c | 0 .../long_double/nan_long_double.c | 0 .../long_double/nan_long_double_range.c | 0 .../misc/INFINITY_macro.c | 0 .../{floating-point => }/misc/NAN_macro.c | 0 .../{floating-point => }/misc/int-test.c | 0 src/tricera/concurrency/CCReader.scala | 51 ++++++++++++++----- 23 files changed, 94 insertions(+), 20 deletions(-) rename regression-tests/{floating-point => }/double/double_add.c (100%) rename regression-tests/{floating-point => }/double/double_sub.c (100%) rename regression-tests/{floating-point => }/double/nan_double.c (100%) rename regression-tests/{floating-point => }/double/nan_double_range.c (100%) create mode 100644 regression-tests/float/add_1.c create mode 100644 regression-tests/float/add_2.c create mode 100644 regression-tests/float/div_1.c create mode 100644 regression-tests/float/div_2.c create mode 100644 regression-tests/float/mul_1.c create mode 100644 regression-tests/float/mul_2.c rename regression-tests/{floating-point/float/nan_floats.c => float/nan.c} (100%) rename regression-tests/{floating-point/float/nan_floats_range.c => float/nan_range.c} (100%) create mode 100644 regression-tests/float/sub_1.c create mode 100644 regression-tests/float/sub_2.c create mode 100644 regression-tests/float/unmatched_type.c delete mode 100644 regression-tests/floating-point/float/float_add.c rename regression-tests/{floating-point => }/long_double/long_double_add.c (100%) rename regression-tests/{floating-point => }/long_double/nan_long_double.c (100%) rename regression-tests/{floating-point => }/long_double/nan_long_double_range.c (100%) rename regression-tests/{floating-point => }/misc/INFINITY_macro.c (100%) rename regression-tests/{floating-point => }/misc/NAN_macro.c (100%) rename regression-tests/{floating-point => }/misc/int-test.c (100%) diff --git a/regression-tests/floating-point/double/double_add.c b/regression-tests/double/double_add.c similarity index 100% rename from regression-tests/floating-point/double/double_add.c rename to regression-tests/double/double_add.c diff --git a/regression-tests/floating-point/double/double_sub.c b/regression-tests/double/double_sub.c similarity index 100% rename from regression-tests/floating-point/double/double_sub.c rename to regression-tests/double/double_sub.c diff --git a/regression-tests/floating-point/double/nan_double.c b/regression-tests/double/nan_double.c similarity index 100% rename from regression-tests/floating-point/double/nan_double.c rename to regression-tests/double/nan_double.c diff --git a/regression-tests/floating-point/double/nan_double_range.c b/regression-tests/double/nan_double_range.c similarity index 100% rename from regression-tests/floating-point/double/nan_double_range.c rename to regression-tests/double/nan_double_range.c diff --git a/regression-tests/float/add_1.c b/regression-tests/float/add_1.c new file mode 100644 index 00000000..0302a45e --- /dev/null +++ b/regression-tests/float/add_1.c @@ -0,0 +1,6 @@ +int main () { + float a = 4.0f; + float b = 2.0f; + assert(a+b== 6.0f); + return 0; +} diff --git a/regression-tests/float/add_2.c b/regression-tests/float/add_2.c new file mode 100644 index 00000000..5fd93d92 --- /dev/null +++ b/regression-tests/float/add_2.c @@ -0,0 +1,6 @@ +int main() { + float a = 3.0f; + float b = 0.5f; + assert(a+b == 3.5f); + return 0; +} diff --git a/regression-tests/float/div_1.c b/regression-tests/float/div_1.c new file mode 100644 index 00000000..7f6d0428 --- /dev/null +++ b/regression-tests/float/div_1.c @@ -0,0 +1,6 @@ +int main () { + float a = 4.0f; + float b = 2.0f; + assert(a/b== 2.0f); + return 0; +} diff --git a/regression-tests/float/div_2.c b/regression-tests/float/div_2.c new file mode 100644 index 00000000..ad292ce2 --- /dev/null +++ b/regression-tests/float/div_2.c @@ -0,0 +1,6 @@ +int main () { + float a = 4.0f; + float b = 0.5f; + assert(a/b== 8.0f); + return 0; +} diff --git a/regression-tests/float/mul_1.c b/regression-tests/float/mul_1.c new file mode 100644 index 00000000..c9753339 --- /dev/null +++ b/regression-tests/float/mul_1.c @@ -0,0 +1,6 @@ +int main () { + float a = 4.0f; + float b = 2.0f; + assert(a*b== 8.0f); + return 0; +} diff --git a/regression-tests/float/mul_2.c b/regression-tests/float/mul_2.c new file mode 100644 index 00000000..fadb1432 --- /dev/null +++ b/regression-tests/float/mul_2.c @@ -0,0 +1,6 @@ +int main () { + float a = 4.0f; + float b = 0.5f; + assert(a*b== 2.0f); + return 0; +} diff --git a/regression-tests/floating-point/float/nan_floats.c b/regression-tests/float/nan.c similarity index 100% rename from regression-tests/floating-point/float/nan_floats.c rename to regression-tests/float/nan.c diff --git a/regression-tests/floating-point/float/nan_floats_range.c b/regression-tests/float/nan_range.c similarity index 100% rename from regression-tests/floating-point/float/nan_floats_range.c rename to regression-tests/float/nan_range.c diff --git a/regression-tests/float/sub_1.c b/regression-tests/float/sub_1.c new file mode 100644 index 00000000..2a8339d0 --- /dev/null +++ b/regression-tests/float/sub_1.c @@ -0,0 +1,7 @@ +int main() { + float a = 4.0f; + float b = 2.0f; + assert(a-b== 2.0f); + return 0; + +} diff --git a/regression-tests/float/sub_2.c b/regression-tests/float/sub_2.c new file mode 100644 index 00000000..c51751f1 --- /dev/null +++ b/regression-tests/float/sub_2.c @@ -0,0 +1,6 @@ +int main() { + float a = 3.0f; + float b = 0.5f; + assert(a-b == 2.5f); + return 0; +} diff --git a/regression-tests/float/unmatched_type.c b/regression-tests/float/unmatched_type.c new file mode 100644 index 00000000..05ccf844 --- /dev/null +++ b/regression-tests/float/unmatched_type.c @@ -0,0 +1,7 @@ +int main () +{ + float a = 2.0f; + int b = 1; + assert(a+b == 3.0f); + return 0; +} diff --git a/regression-tests/floating-point/float/float_add.c b/regression-tests/floating-point/float/float_add.c deleted file mode 100644 index 22c6c2a6..00000000 --- a/regression-tests/floating-point/float/float_add.c +++ /dev/null @@ -1,7 +0,0 @@ - -int main () { - float b = 2.5f; - float a = 0.75f; - assert(a+b == 3.25f); - return 0; -} diff --git a/regression-tests/floating-point/long_double/long_double_add.c b/regression-tests/long_double/long_double_add.c similarity index 100% rename from regression-tests/floating-point/long_double/long_double_add.c rename to regression-tests/long_double/long_double_add.c diff --git a/regression-tests/floating-point/long_double/nan_long_double.c b/regression-tests/long_double/nan_long_double.c similarity index 100% rename from regression-tests/floating-point/long_double/nan_long_double.c rename to regression-tests/long_double/nan_long_double.c diff --git a/regression-tests/floating-point/long_double/nan_long_double_range.c b/regression-tests/long_double/nan_long_double_range.c similarity index 100% rename from regression-tests/floating-point/long_double/nan_long_double_range.c rename to regression-tests/long_double/nan_long_double_range.c diff --git a/regression-tests/floating-point/misc/INFINITY_macro.c b/regression-tests/misc/INFINITY_macro.c similarity index 100% rename from regression-tests/floating-point/misc/INFINITY_macro.c rename to regression-tests/misc/INFINITY_macro.c diff --git a/regression-tests/floating-point/misc/NAN_macro.c b/regression-tests/misc/NAN_macro.c similarity index 100% rename from regression-tests/floating-point/misc/NAN_macro.c rename to regression-tests/misc/NAN_macro.c diff --git a/regression-tests/floating-point/misc/int-test.c b/regression-tests/misc/int-test.c similarity index 100% rename from regression-tests/floating-point/misc/int-test.c rename to regression-tests/misc/int-test.c diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 7eb48db1..cc729b05 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -134,14 +134,17 @@ object CCReader { val getData : MonoSortedIFunction = floatADT.selectors(0)(0) val nan : ITerm = IFunApp(floatADT.constructors(1), Nil) - val plusInf : ITerm = ??? - val negInf : ITerm = ??? + val plusInf : ITerm = IFunApp(floatADT.constructors(2), Nil) + val negInf : ITerm = IFunApp(floatADT.constructors(3), Nil) val isFloat : Predicate = floatADT.ctorIdPreds(0) - val isNan : Predicate = floatADT.ctorIdPreds(1) - val isPlusInf : Predicate = floatADT.ctorIdPreds(2) - val isNegInf : Predicate = floatADT.ctorIdPreds(3) + + // val isFloat : Predicate = floatADT.predicates(0) + // val isNan : Predicate = floatADT.predicates(1) + // val isPlusInf : Predicate = floatADT.predicates(2) + // val isNegInf : Predicate = floatADT.predicates(3) } + ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// @@ -195,7 +198,7 @@ object CCReader { case CCULong() => UnsignedBVSort(64) case CCLongLong() => SignedBVSort(64) case CCULongLong() => UnsignedBVSort(64) - //case CCFloat() => Rationals.dom + case CCFloat() => FloatADT.sort //case CCDouble() => ...? //case CCLongDouble() => ...? case CCDuration() => Sort.Nat @@ -216,6 +219,7 @@ object CCReader { case CCULong() => UnsignedBVSort(32) case CCLongLong() => SignedBVSort(64) case CCULongLong() => UnsignedBVSort(64) + case CCFloat() => FloatADT.sort case CCDuration() => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -3323,7 +3327,7 @@ class CCReader private (prog : Program, (lhsE.typ, rhsE.typ) match { case (_ : CCHeapArrayPointer, _ : CCArithType) => addToAddressRangeStart(lhs, rhs) - case _ => lhs + rhs + case _ => lhs + rhs //todo: add Rationals.plus here?? } case _ : AssignSub => (lhsE.typ, rhsE.typ) match { @@ -3475,19 +3479,19 @@ class CCReader private (prog : Program, case exp : Eright => strictUnsignedBinFun(exp.exp_1, exp.exp_2, ModuloArithmetic.bvashr(_, _)) case exp : Eplus => - strictBinFun(exp.exp_1, exp.exp_2, _ + _, opIsAddition = true) + strictBinFun(exp.exp_1, exp.exp_2, _ + _ , opIsAddition = true, operator = "add") case exp : Eminus => - strictBinFun(exp.exp_1, exp.exp_2, _ - _) + strictBinFun(exp.exp_1, exp.exp_2, _ - _, operator = "sub") case exp : Etimes => strictBinFun(exp.exp_1, exp.exp_2, { (x : ITerm, y : ITerm) => ap.theories.nia.GroebnerMultiplication.mult(x, y) - }) + }, operator = "mul") case exp : Ediv => strictBinFun(exp.exp_1, exp.exp_2, { (x : ITerm, y : ITerm) => ap.theories.nia.GroebnerMultiplication.tDiv(x, y) - }) + }, operator = "div") case exp : Emod => strictBinFun(exp.exp_1, exp.exp_2, { (x : ITerm, y : ITerm) => @@ -4101,7 +4105,7 @@ class CCReader private (prog : Program, private def strictBinFun(left : Exp, right : Exp, op : (ITerm, ITerm) => ITerm, - opIsAddition : Boolean = false) + opIsAddition : Boolean = false, operator : String = "") (implicit evalSettings : EvalSettings) : Unit = { strictBinOp(left, right, (lhs : CCExpr, rhs : CCExpr) => { @@ -4113,6 +4117,27 @@ class CCReader private (prog : Program, else throw new TranslationException("Pointer arithmetic" + "over arrays is only supported with addition.") + case (CCFloat(), CCFloat()) => + val (promLhs, promRhs) = unifyTypes(lhs, rhs) + val typ = promLhs.typ + operator match { + case "add" => + CCTerm(typ cast Rationals.plus(promLhs.toTerm, promRhs.toTerm), typ, + lhs.srcInfo) + case "sub" => + CCTerm(typ cast Rationals.minus(promLhs.toTerm, promRhs.toTerm), typ, + lhs.srcInfo) + case "mul" => + CCTerm(typ cast Rationals.mul(promLhs.toTerm, promRhs.toTerm), typ, + lhs.srcInfo) + case "div" => + CCTerm(typ cast Rationals.div(promLhs.toTerm, promRhs.toTerm), typ, + lhs.srcInfo) + case _ => + CCTerm(typ cast op(promLhs.toTerm, promRhs.toTerm), typ, + lhs.srcInfo) + } + // TODO: correct type promotion case _ => val (promLhs, promRhs) = unifyTypes(lhs, rhs) // TODO: correct type promotion @@ -4280,7 +4305,7 @@ class CCReader private (prog : Program, pushVal(CCTerm(FloatADT.floatCtor(floatData), CCFloat(), Some(getSourceInfo(constant)))) - // assertProperty(FloatADT.isFloat(floatData), None) // todo: just an example of adding an implicit assertion + // assertProperty(FloatADT.isFloat(floatData), None)) // todo: just an example of adding an implicit assertion // addGuard(FloatADT.isFloat(floatData)) // todo: just an example of adding an assumption // case constant : Eclongdouble. Constant ::= CLongDouble; case constant : Eint => From 547561678bc38485d5dd947cdd1716807769e646 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Fri, 21 Apr 2023 17:37:03 +0200 Subject: [PATCH 09/28] added tests and answers --- regression-tests/float/Answers | 42 +++++++++++++++++++ regression-tests/float/init_1.c | 6 +++ regression-tests/float/init_2.c | 6 +++ regression-tests/float/init_3.c | 6 +++ .../{unmatched_type.c => int_plus_float.c} | 0 regression-tests/float/nan_range.c | 2 +- regression-tests/float/runtests | 25 +++++++++++ 7 files changed, 86 insertions(+), 1 deletion(-) create mode 100644 regression-tests/float/Answers create mode 100644 regression-tests/float/init_1.c create mode 100644 regression-tests/float/init_2.c create mode 100644 regression-tests/float/init_3.c rename regression-tests/float/{unmatched_type.c => int_plus_float.c} (100%) create mode 100755 regression-tests/float/runtests diff --git a/regression-tests/float/Answers b/regression-tests/float/Answers new file mode 100644 index 00000000..df3e062b --- /dev/null +++ b/regression-tests/float/Answers @@ -0,0 +1,42 @@ + +regression-tests/float/add_1.c +SAFE + +regression-tests/float/add_2.c +SAFE + +regression-tests/float/div_1.c +SAFE + +regression-tests/float/div_2.c +SAFE + +regression-tests/float/mul_1.c +SAFE + +regression-tests/float/mul_2.c +SAFE + +regression-tests/float/nan.c +UNSAFE + +regression-tests/float/nan_range.c +SAFE + +regression-tests/float/sub_1.c +SAFE + +regression-tests/float/sub_2.c +SAFE + +regression-tests/float/int_plus_float.c +SAFE + +regression-tests/float/init_1.c +SAFE + +regression-tests/float/init_2.c +SAFE + +regression-tests/float/init_3.c +UNSAFE diff --git a/regression-tests/float/init_1.c b/regression-tests/float/init_1.c new file mode 100644 index 00000000..da28ff2e --- /dev/null +++ b/regression-tests/float/init_1.c @@ -0,0 +1,6 @@ +int main() { + float a = 0.0f; + assert(a == 0.0f); + return 0; + +} diff --git a/regression-tests/float/init_2.c b/regression-tests/float/init_2.c new file mode 100644 index 00000000..fa723621 --- /dev/null +++ b/regression-tests/float/init_2.c @@ -0,0 +1,6 @@ +int main() { + float a = 4.24242f; + assert(a == 4.24242f); + return 0; + +} diff --git a/regression-tests/float/init_3.c b/regression-tests/float/init_3.c new file mode 100644 index 00000000..c4dab6cf --- /dev/null +++ b/regression-tests/float/init_3.c @@ -0,0 +1,6 @@ +int main() { + float a = 4.24242f; + assert(a == 4.24241f); + return 0; + +} diff --git a/regression-tests/float/unmatched_type.c b/regression-tests/float/int_plus_float.c similarity index 100% rename from regression-tests/float/unmatched_type.c rename to regression-tests/float/int_plus_float.c diff --git a/regression-tests/float/nan_range.c b/regression-tests/float/nan_range.c index 76d6ff1a..13ebeade 100644 --- a/regression-tests/float/nan_range.c +++ b/regression-tests/float/nan_range.c @@ -2,7 +2,7 @@ int main() { float x = _; - if (x >= -1e10 && x <= 1e10) { + if (x >= -0.00001f && x <= -0.00001f) { assert(x==x); } return 0; diff --git a/regression-tests/float/runtests b/regression-tests/float/runtests new file mode 100755 index 00000000..4cccb482 --- /dev/null +++ b/regression-tests/float/runtests @@ -0,0 +1,25 @@ +#!/bin/sh + +LAZABS=./tri + +TESTS="regression-tests/float/add_1.c \ + regression-tests/float/add_2.c \ + regression-tests/float/div_1.c \ + regression-tests/float/div_2.c \ + regression-tests/float/mul_1.c \ + regression-tests/float/mul_2.c \ + regression-tests/float/nan.c \ + regression-tests/float/nan_range.c \ + regression-tests/float/sub_1.c \ + regression-tests/float/sub_2.c \ + regression-tests/float/int_plus_float.c \ + regression-tests/float/init_1.c \ + regression-tests/float/init_2.c \ + regression-tests/float/init_3.c" + +for name in $TESTS; do + echo + echo $name + $LAZABS "$@" $name 2>&1 | grep -v 'at ' +done + From c59fbed66dd280b0cb39dc74562ad6af2aa79ba8 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Mon, 24 Apr 2023 12:33:19 +0200 Subject: [PATCH 10/28] changed isFloat etc in floatADT --- regression-tests/float/init_2.c | 1 - src/tricera/concurrency/CCReader.scala | 18 ++++++++++++------ 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/regression-tests/float/init_2.c b/regression-tests/float/init_2.c index fa723621..6d11b62d 100644 --- a/regression-tests/float/init_2.c +++ b/regression-tests/float/init_2.c @@ -2,5 +2,4 @@ int main() { float a = 4.24242f; assert(a == 4.24242f); return 0; - } diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index cc729b05..00c6041c 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -116,7 +116,7 @@ object CCReader { ////////////////////////////////////////////////////////////////////////////// // Floats - +// TODO: Add doubleADT object FloatADT { private val floatADTCtorSignatures : Seq[(String, ADT.CtorSignature)] = Seq( ("floatData", ADT.CtorSignature( @@ -137,12 +137,18 @@ object CCReader { val plusInf : ITerm = IFunApp(floatADT.constructors(2), Nil) val negInf : ITerm = IFunApp(floatADT.constructors(3), Nil) - val isFloat : Predicate = floatADT.ctorIdPreds(0) + // val isFloat : Predicate = floatADT.ctorIdPreds(0) + + // todo: change to hasCtor + private def isFloat(t: ITerm): IFormula = floatADT.hasCtor(t, 0) + private def isNan(t: ITerm): IFormula = floatADT.hasCtor(t, 1) + private def isPlusinf(t: ITerm): IFormula = floatADT.hasCtor(t, 2) + private def isNeginf(t: ITerm): IFormula = floatADT.hasCtor(t, 3) - // val isFloat : Predicate = floatADT.predicates(0) - // val isNan : Predicate = floatADT.predicates(1) - // val isPlusInf : Predicate = floatADT.predicates(2) - // val isNegInf : Predicate = floatADT.predicates(3) + // val isFloat : Predicate = floatADT.hasCtor(I, 0) + // val isNan : Predicate = floatADT.ctorIdPreds(1) + // val isPlusInf : Predicate = floatADT.ctorIdPreds(2) + // val isNegInf : Predicate = floatADT.ctorIdPreds(3) } ////////////////////////////////////////////////////////////////////////////// From 8b9c91a6aff9d48e61d9b3dff00786c7cf10bf14 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Tue, 25 Apr 2023 11:20:46 +0200 Subject: [PATCH 11/28] merge --- src/tricera/concurrency/CCReader.scala | 1 - 1 file changed, 1 deletion(-) diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 00c6041c..8c7f4753 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -139,7 +139,6 @@ object CCReader { // val isFloat : Predicate = floatADT.ctorIdPreds(0) - // todo: change to hasCtor private def isFloat(t: ITerm): IFormula = floatADT.hasCtor(t, 0) private def isNan(t: ITerm): IFormula = floatADT.hasCtor(t, 1) private def isPlusinf(t: ITerm): IFormula = floatADT.hasCtor(t, 2) From ed81d8835a2d4f1e7b9e856b8f99988052a8012e Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Tue, 25 Apr 2023 13:29:40 +0200 Subject: [PATCH 12/28] bug sort is int --- src/tricera/concurrency/CCReader.scala | 10 +++++--- .../ccreader/CCBinaryExpressions.scala | 24 ++++++++++++------- src/tricera/concurrency/ccreader/CCType.scala | 11 +++++---- .../concurrency/CCReaderCollectVarDecls.scala | 2 +- 4 files changed, 30 insertions(+), 17 deletions(-) diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index dda88bfd..13434e0c 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -39,7 +39,7 @@ import hornconcurrency.ParametricEncoder import lazabs.horn.abstractions.VerificationHints import lazabs.horn.abstractions.VerificationHints.{VerifHintElement, VerifHintInitPred, VerifHintTplElement, VerifHintTplEqTerm, VerifHintTplPred} import lazabs.horn.bottomup.HornClauses -import IExpression.{ConstantTerm, Predicate, Sort, toFunApplier} +import IExpression.{ConstantTerm, Predicate, Sort, i, toFunApplier} import scala.collection.mutable.{ArrayBuffer, Buffer, Stack, HashMap => MHashMap, HashSet => MHashSet} import tricera.Util._ @@ -50,6 +50,10 @@ import tricera.params.TriCeraParameters import tricera.parsers.AnnotationParser import tricera.parsers.AnnotationParser._ import CCExceptions._ +import ap.theories.rationals +import ap.theories.rationals.Rationals +import ap.theories.rationals.Rationals.Fraction + object CCReader { @@ -1985,7 +1989,7 @@ class CCReader private (prog : Program, case _ : Tchar => // ignore case _ : Tfloat => - typ = CCFloat() + typ = CCFloat case _ : Tsigned => typ = CCInt case _ : Tunsigned => @@ -3661,7 +3665,7 @@ class CCReader private (prog : Program, val (num, denum) = float2fraction(constant.cfloat_) val floatData = Fraction(i((IdealInt(num))), i(IdealInt(denum))) pushVal(CCTerm(FloatADT.floatCtor(floatData), - CCFloat(), Some(getSourceInfo(constant)))) + CCFloat, Some(getSourceInfo(constant)))) // assertProperty(FloatADT.isFloat(floatData), None)) // todo: just an example of adding an implicit assertion // addGuard(FloatADT.isFloat(floatData)) // todo: just an example of adding an assumption diff --git a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala index 0d227090..2b9d1de5 100644 --- a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala +++ b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala @@ -33,6 +33,7 @@ import ap.theories.ModuloArithmetic import tricera.concurrency.CCReader._ import tricera.concurrency.ccreader.CCExceptions.TranslationException import IExpression._ +import ap.theories.rationals.Rationals object CCBinaryExpressions { object BinaryOperators { @@ -122,7 +123,8 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm === rhsTerm - override def getFloatRes = ??? + override def getFloatRes = lhsTerm === rhsTerm // &&& !isNaN(lhsTerm) //todo: Should it be the same + } case class Disequality(_lhs: CCExpr, _rhs: CCExpr) @@ -130,7 +132,7 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm =/= rhsTerm - override def getFloatRes = ??? + override def getFloatRes = lhsTerm =/= rhsTerm //todo: Should it be the same } case class Less(_lhs: CCExpr, _rhs: CCExpr) @@ -138,7 +140,7 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm < rhsTerm - override def getFloatRes = ??? + override def getFloatRes = Rationals.lt(lhsTerm, rhsTerm) } case class Greater(_lhs: CCExpr, _rhs: CCExpr) @@ -146,7 +148,7 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm > rhsTerm - override def getFloatRes = ??? + override def getFloatRes = Rationals.gt(lhsTerm, rhsTerm) } case class LessEqual(_lhs: CCExpr, _rhs: CCExpr) @@ -154,7 +156,7 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm <= rhsTerm - override def getFloatRes = ??? + override def getFloatRes = Rationals.leq(lhsTerm, rhsTerm) } case class GreaterEqual(_lhs: CCExpr, _rhs: CCExpr) @@ -162,7 +164,7 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm >= rhsTerm - override def getFloatRes = ??? + override def getFloatRes = Rationals.geq(lhsTerm, rhsTerm) } //////////////////////////////////////////////////////////////////////////// @@ -177,7 +179,10 @@ object CCBinaryExpressions { case _ => lhs.toTerm + rhs.toTerm } - override def getFloatRes = ??? + override def getFloatRes = (lhs.typ, rhs.typ) match { + case(CCFloat, CCFloat) => + Rationals.plus(lhs.toTerm, rhs.toTerm) + } } case class Minus(_lhs: CCExpr, _rhs: CCExpr) @@ -186,7 +191,10 @@ object CCBinaryExpressions { throwErrorIfPointerArithmetic(lhs, rhs) lhs.toTerm - rhs.toTerm } - override def getFloatRes = ??? + override def getFloatRes = (lhs.typ, rhs.typ) match { + case (CCFloat, CCFloat) => + Rationals.minus(lhs.toTerm, rhs.toTerm) + } } case class Times(_lhs: CCExpr, _rhs: CCExpr) diff --git a/src/tricera/concurrency/ccreader/CCType.scala b/src/tricera/concurrency/ccreader/CCType.scala index 955f5a88..e1de094e 100644 --- a/src/tricera/concurrency/ccreader/CCType.scala +++ b/src/tricera/concurrency/ccreader/CCType.scala @@ -31,17 +31,15 @@ package tricera.concurrency.ccreader import ap.basetypes.IdealInt import ap.parser.{IFormula, IIntLit, ITerm} -import ap.theories.Heap +import ap.theories.{Heap, ADT} import tricera.concurrency.CCReader._ +import tricera.concurrency.CCReader.FloatADT._ import ap.parser.IExpression.{Sort, _} import ap.theories.bitvectors.ModuloArithmetic._ import ap.types.{MonoSortedIFunction, SortedConstantTerm} import CCExceptions._ -import scala.collection.mutable.{ - Stack, - HashMap => MHashMap -} +import scala.collection.mutable.{Stack, HashMap => MHashMap} abstract sealed class CCType { def shortName: String @@ -71,6 +69,7 @@ abstract sealed class CCType { case CCULong => UnsignedBVSort(32) case CCLongLong => SignedBVSort(64) case CCULongLong => UnsignedBVSort(64) + case CCFloat => FloatADT.sort case CCDuration => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -90,6 +89,7 @@ abstract sealed class CCType { case CCULong => UnsignedBVSort(64) case CCLongLong => SignedBVSort(64) case CCULongLong => UnsignedBVSort(64) + case CCFloat => FloatADT.sort case CCDuration => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -109,6 +109,7 @@ abstract sealed class CCType { case CCULong => UnsignedBVSort(32) case CCLongLong => SignedBVSort(64) case CCULongLong => UnsignedBVSort(64) + case CCFloat => FloatADT.sort case CCDuration => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer diff --git a/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala b/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala index f7d9b971..9389ebd2 100644 --- a/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala +++ b/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala @@ -109,7 +109,7 @@ class toFractionTests extends AnyFlatSpec { } bitCount = bitCount + 1 } -denominator + if (exponentInt > 0) { numerator = numerator * BigInt(2).pow(exponentInt) } From 77ac572f05f0efe4e2f22c13fb3471aa09f461b3 Mon Sep 17 00:00:00 2001 From: Zafer Esen Date: Tue, 25 Apr 2023 14:14:58 +0200 Subject: [PATCH 13/28] Fixes some issues in encoding floats --- .../concurrency/ccreader/CCBinaryExpressions.scala | 10 +++++++--- src/tricera/concurrency/ccreader/CCType.scala | 1 + 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala index 2b9d1de5..f1c1adfd 100644 --- a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala +++ b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala @@ -123,7 +123,9 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm === rhsTerm - override def getFloatRes = lhsTerm === rhsTerm // &&& !isNaN(lhsTerm) //todo: Should it be the same + override def getFloatRes = { + FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm) + } // &&& !isNaN(lhsTerm) //todo: Should it be the same } @@ -132,7 +134,8 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm =/= rhsTerm - override def getFloatRes = lhsTerm =/= rhsTerm //todo: Should it be the same + override def getFloatRes = + FloatADT.getData(lhsTerm) =/= FloatADT.getData(rhsTerm) //todo: Should it be the same } case class Less(_lhs: CCExpr, _rhs: CCExpr) @@ -181,7 +184,8 @@ object CCBinaryExpressions { } override def getFloatRes = (lhs.typ, rhs.typ) match { case(CCFloat, CCFloat) => - Rationals.plus(lhs.toTerm, rhs.toTerm) + FloatADT.floatCtor(Rationals.plus( + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) } } diff --git a/src/tricera/concurrency/ccreader/CCType.scala b/src/tricera/concurrency/ccreader/CCType.scala index e1de094e..6d00180a 100644 --- a/src/tricera/concurrency/ccreader/CCType.scala +++ b/src/tricera/concurrency/ccreader/CCType.scala @@ -59,6 +59,7 @@ abstract sealed class CCType { case CCStruct(ctor, _) => ctor.resSort case CCStructField(n, s) => s(n).ctor.resSort case CCIntEnum(_, _) => Sort.Integer + case CCFloat => FloatADT.sort case _ => Sort.Integer } case ArithmeticMode.ILP32 => From 93c558b4b3f876817ca04483d113c69f05d031be Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Tue, 25 Apr 2023 21:44:11 +0200 Subject: [PATCH 14/28] fixed some bugs --- src/tricera/concurrency/CCReader.scala | 272 +++++++++--------- .../ccreader/CCBinaryExpressions.scala | 24 +- .../concurrency/CCReaderCollectVarDecls.scala | 131 +-------- .../concurrency/float2fractionTest.scala | 88 ++++++ 4 files changed, 247 insertions(+), 268 deletions(-) create mode 100644 unit-tests/tricera/concurrency/float2fractionTest.scala diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 13434e0c..135cd31e 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -53,6 +53,7 @@ import CCExceptions._ import ap.theories.rationals import ap.theories.rationals.Rationals import ap.theories.rationals.Rationals.Fraction +import tricera.concurrency.CCReader.Floats.float2fraction @@ -150,6 +151,141 @@ object CCReader { } ////////////////////////////////////////////////////////////////////////////// + object Floats { + import scala.util.control._ + import scala.math._ + def double2fraction(fp: String): (String, String) = { + val f: Double = fp.toDouble + if (f.isNaN) { + ("0", "0") + } + else if (f.isInfinity) { + ("0", "0") + } + else { + val mantissaBits: Long = (java.lang.Double.doubleToLongBits(f) << 11 >>> 11) + val mantissa: String = String.format("%52s", java.lang.Long.toBinaryString(mantissaBits)).replace(' ', '0') + + val exponentBits: Long = (java.lang.Double.doubleToLongBits(f) << 1 >>> 53) + val exponent: String = String.format("%11s", java.lang.Long.toBinaryString(exponentBits)).replace(' ', '0') + + val signBit = (java.lang.Double.doubleToLongBits(f) >>> 63).toBinaryString + + var bitCount: Int = 53 + + var denominator: Int = 0 + var numerator: Int = 0 + var loop = new Breaks + loop.breakable { + for (bit <- mantissa.reverse) { + if (bit == '1') { + denominator = (pow(2, bitCount)).toInt + loop.break() + } + bitCount = bitCount - 1 + } + } + + // reset bitCount + bitCount = 1 + numerator = denominator + for (bit <- mantissa) { + if (bit == '1') { + numerator = numerator + denominator / pow(2, bitCount).toInt + } + bitCount = bitCount + 1 + } + + bitCount = 0 + var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 + for (bit <- exponent.reverse) { + if (bit == '1') { + exponentInt = exponentInt + pow(2, bitCount).toInt + } + bitCount = bitCount + 1 + } + + if (exponentInt > 0) { + numerator = numerator * pow(2, exponentInt).toInt + } + if (exponentInt < 0) { + denominator = denominator * pow(2, exponentInt).toInt + } + if (signBit == "1") { + numerator = -numerator + } + (numerator.toString, denominator.toString) + } + } + + + def float2fraction(fp: String): (String, String) = { + val f: Float = fp.toFloat + + if (f.isNaN) { + ("0", "0") + } + else if (f.isInfinity) { + ("0", "0") + } + else { + // + val mantissaBits: Int = java.lang.Float.floatToIntBits(f) << 9 >>> 9 + val mantissa: String = String.format("%23s", Integer.toBinaryString(mantissaBits)).replace(' ', '0') + + val exponentBits: Int = (java.lang.Float.floatToIntBits(f) << 1 >>> 24) + val exponent: String = String.format("%8s", Integer.toBinaryString(exponentBits)).replace(' ', '0') + + val signBit = (java.lang.Float.floatToIntBits(f) >>> 31).toBinaryString + + var bitCount: Int = 23 + + var denominator: BigInt = 1 + var numerator: BigInt = 0 + var loop = new Breaks + loop.breakable { + for (bit <- mantissa.reverse) { + if (bit == '1') { + denominator = BigInt(2).pow(bitCount) + loop.break() + } + bitCount = bitCount - 1 + } + } + + // reset bitCount + bitCount = 1 + numerator = denominator + for (bit <- mantissa) { + if (bit == '1') { + numerator = numerator + denominator / BigInt(2).pow(bitCount) + } + bitCount = bitCount + 1 + } + + bitCount = 0 + var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 + for (bit <- exponent.reverse) { + if (bit == '1') { + exponentInt = exponentInt + pow(2, bitCount).toInt + } + bitCount = bitCount + 1 + } + denominator + if (exponentInt > 0) { + numerator = numerator * BigInt(2).pow(exponentInt) + } + if (exponentInt < 0) { + denominator = denominator * BigInt(2).pow(abs(exponentInt)) + } + if (signBit == "1") { + numerator = -numerator + } + (numerator.toString, denominator.toString) + } + } + } + ////////////////////////////////////////////////////////////////////////////// @@ -3680,142 +3816,6 @@ class CCReader private (prog : Program, ////////////////////////////////////////////////////////////////////////////// -import scala.util.control._ -import scala.math._ - - def double2fraction(fp: String) : (String, String) = { - val f : Double = fp.toDouble - if (f.isNaN) { - ("0", "0") - } - else if (f.isInfinity) { - ("0", "0") - } - else { - val mantissaBits: Long = (java.lang.Double.doubleToLongBits(f) << 11 >>> 11) - val mantissa: String = String.format("%52s", java.lang.Long.toBinaryString(mantissaBits)).replace(' ', '0') - - val exponentBits: Long = (java.lang.Double.doubleToLongBits(f) << 1 >>> 53) - val exponent: String = String.format("%11s", java.lang.Long.toBinaryString(exponentBits)).replace(' ', '0') - - val signBit = (java.lang.Double.doubleToLongBits(f) >>> 63).toBinaryString - - var bitCount: Int = 53 - - var denominator: Int = 0 - var numerator: Int = 0 - var loop = new Breaks - loop.breakable { - for (bit <- mantissa.reverse) { - if (bit == '1') { - denominator = (pow(2, bitCount)).toInt - loop.break() - } - bitCount = bitCount - 1 - } - } - - // reset bitCount - bitCount = 1 - numerator = denominator - for (bit <- mantissa) { - if (bit == '1') { - numerator = numerator + denominator / pow(2, bitCount).toInt - } - bitCount = bitCount + 1 - } - - bitCount = 0 - var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 - for (bit <- exponent.reverse) { - if (bit == '1') { - exponentInt = exponentInt + pow(2, bitCount).toInt - } - bitCount = bitCount + 1 - } - - if (exponentInt > 0) { - numerator = numerator * pow(2, exponentInt).toInt - } - if (exponentInt < 0) { - denominator = denominator * pow(2, exponentInt).toInt - } - if (signBit == "1") { - numerator = -numerator - } - (numerator.toString, denominator.toString) - } - } - - - def float2fraction(fp: String): (String, String) = { - val f: Float = fp.toFloat - - if (f.isNaN) { - ("0", "0") - } - else if (f.isInfinity) { - ("0", "0") - } - else { - // - val mantissaBits: Int = java.lang.Float.floatToIntBits(f) << 8 >>> 8 - val mantissa: String = String.format("%23s", Integer.toBinaryString(mantissaBits)).replace(' ', '0') - - val exponentBits: Int = (java.lang.Float.floatToIntBits(f) << 1 >>> 24) - val exponent: String = String.format("%8s", Integer.toBinaryString(exponentBits)).replace(' ', '0') - - val signBit = (java.lang.Float.floatToIntBits(f) >>> 31).toBinaryString - - var bitCount: Int = 23 - - var denominator: BigInt = 1 - var numerator: BigInt = 0 - var loop = new Breaks - loop.breakable { - for (bit <- mantissa.reverse) { - if (bit == '1') { - denominator = BigInt(2).pow(bitCount) - loop.break() - } - bitCount = bitCount - 1 - } - } - - // reset bitCount - bitCount = 1 - numerator = denominator - for (bit <- mantissa) { - if (bit == '1') { - numerator = numerator + denominator / BigInt(2).pow(bitCount) - } - bitCount = bitCount + 1 - } - - bitCount = 0 - var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 - for (bit <- exponent.reverse) { - if (bit == '1') { - exponentInt = exponentInt + pow(2, bitCount).toInt - } - bitCount = bitCount + 1 - } - denominator - if (exponentInt > 0) { - numerator = numerator * BigInt(2).pow(exponentInt) - } - if (exponentInt < 0) { - denominator = denominator * BigInt(2).pow(abs(exponentInt)) - } - if (signBit == "1") { - numerator = -numerator - } - (numerator.toString, denominator.toString) - } - } - - ////////////////////////////////////////////////////////////////////////////// - private def inlineFunction(functionDef : Function_def, entry : CCPredicate, exit : CCPredicate, diff --git a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala index f1c1adfd..4caf4353 100644 --- a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala +++ b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala @@ -186,6 +186,8 @@ object CCBinaryExpressions { case(CCFloat, CCFloat) => FloatADT.floatCtor(Rationals.plus( FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") } } @@ -197,7 +199,11 @@ object CCBinaryExpressions { } override def getFloatRes = (lhs.typ, rhs.typ) match { case (CCFloat, CCFloat) => - Rationals.minus(lhs.toTerm, rhs.toTerm) + FloatADT.floatCtor(Rationals.minus( + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } } @@ -207,7 +213,13 @@ object CCBinaryExpressions { throwErrorIfPointerArithmetic(lhs, rhs) ap.theories.nia.GroebnerMultiplication.mult(lhs.toTerm, rhs.toTerm) } - override def getFloatRes = ??? + override def getFloatRes = (lhs.typ, rhs.typ) match { + case (CCFloat, CCFloat) => + FloatADT.floatCtor(Rationals.mul( + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } } case class Div(_lhs: CCExpr, _rhs: CCExpr) @@ -216,7 +228,13 @@ object CCBinaryExpressions { throwErrorIfPointerArithmetic(lhs, rhs) ap.theories.nia.GroebnerMultiplication.tDiv(lhs.toTerm, rhs.toTerm) } - override def getFloatRes = ??? + override def getFloatRes = (lhs.typ, rhs.typ) match { + case (CCFloat, CCFloat) => + FloatADT.floatCtor(Rationals.div( + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } } case class Mod(_lhs: CCExpr, _rhs: CCExpr) diff --git a/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala b/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala index 9389ebd2..7f9cb9cd 100644 --- a/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala +++ b/unit-tests/tricera/concurrency/CCReaderCollectVarDecls.scala @@ -30,143 +30,16 @@ package tricera.concurrency import org.scalatest.flatspec.AnyFlatSpec -import CCReader._ +import tricera.concurrency.CCReader import scala.util.control._ import scala.math.BigInt import scala.math._ import java.math.BigInteger import org.scalatest._ - +import tricera.concurrency.ccreader._ import scala.math.BigDecimal.int2bigDecimal -class toFractionTests extends AnyFlatSpec { - // create a dummy file to create an instance of CCReader - val testFileReader = new java.io.StringReader( - """ - |void main(){ - |} - |""".stripMargin - ) - - // arithmetic mode must be implicitly declared for the correct types - // would need to be changed or scoped to test different arith. modes - implicit def arithMode = tricera.params.TriCeraParameters.get.arithMode - - val (reader, modelledHeap) = CCReader(input = testFileReader, - entryFunction = "main") - - - def float2fractionTest(fp: String): (String, String) = { - val f: Float = fp.toFloat - - if (f.isNaN) { - ("0", "0") - } - else if (f.isInfinity) { - ("0", "0") - } - else { - // - val mantissaBits: Int = java.lang.Float.floatToIntBits(f) << 8 >>> 8 - val mantissa: String = String.format("%23s", Integer.toBinaryString(mantissaBits)).replace(' ', '0') - - val exponentBits: Int = (java.lang.Float.floatToIntBits(f) << 1 >>> 24) - val exponent: String = String.format("%8s", Integer.toBinaryString(exponentBits)).replace(' ', '0') - - val signBit = (java.lang.Float.floatToIntBits(f) >>> 31).toBinaryString - - var bitCount: Int = 23 - - var denominator: BigInt = 1 - var numerator : BigInt = 0 - var loop = new Breaks - loop.breakable { - for (bit <- mantissa.reverse) { - if (bit == '1') { - denominator = BigInt(2).pow(bitCount) - loop.break() - } - bitCount = bitCount - 1 - } - } - - // reset bitCount - bitCount = 1 - numerator = denominator - for (bit <- mantissa) { - if (bit == '1') { - numerator = numerator + denominator / BigInt(2).pow(bitCount) - } - bitCount = bitCount + 1 - } - - bitCount = 0 - var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 - for (bit <- exponent.reverse) { - if (bit == '1') { - exponentInt = exponentInt + pow(2, bitCount).toInt - } - bitCount = bitCount + 1 - } - - if (exponentInt > 0) { - numerator = numerator * BigInt(2).pow(exponentInt) - } - if (exponentInt < 0) { - denominator = denominator * BigInt(2).pow(abs(exponentInt)) - } - if (signBit == "1") { - numerator = -numerator - } - (numerator.toString, denominator.toString) - } - } - - //////////////////////////////////////////////////////////////////////////////// - // Tests - var foo : (String, String) = float2fractionTest("2.0f") - assert(foo == ("2", "1")) - - foo = float2fractionTest("-2.0f") - assert(foo == ("-2", "1")) - - foo = float2fractionTest("8.0f") - assert(foo == ("8", "1")) - - foo = float2fractionTest("-8.0f") - assert(foo == ("-8", "1")) - - foo = float2fractionTest("3.14f") - assert(foo == ("26340230","8388608")) - - foo = float2fractionTest("-3.14f") - assert(foo == ("-26340230", "8388608")) - - foo = float2fractionTest("2.64f") - assert(foo == ("22145926", "8388608")) - - foo = float2fractionTest("-2.64f") - assert(foo == ("-22145926", "8388608")) - - foo = float2fractionTest("0.125f") - assert(foo == ("1", "8")) - - foo = float2fractionTest("-0.125f") - assert(foo == ("-1", "8")) - - foo = float2fractionTest("0.0032f") - assert(foo == ("13743895", "4294967296")) - - foo = float2fractionTest("-0.0032f") - assert(foo == ("-13743895", "4294967296")) - - foo = float2fractionTest("0.69f") - assert(foo == ("11576279", "16777216")) - - foo = float2fractionTest("-0.69f") - assert(foo == ("-11576279", "16777216")) - class CCReaderCollectVarDecls extends AnyFlatSpec { //////////////////////////////////////////////////////////////////////////////// diff --git a/unit-tests/tricera/concurrency/float2fractionTest.scala b/unit-tests/tricera/concurrency/float2fractionTest.scala new file mode 100644 index 00000000..a3c004e5 --- /dev/null +++ b/unit-tests/tricera/concurrency/float2fractionTest.scala @@ -0,0 +1,88 @@ +/** + * Copyright (c) 2022-2023 Zafer Esen, Philipp Ruemmer. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * * Neither the name of the authors nor the names of their + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package tricera.concurrency + +import org.scalatest.flatspec.AnyFlatSpec +import tricera.concurrency.CCReader.Floats._ +class FractionTest extends AnyFlatSpec { + // create a dummy file to create an instance of CCReader + + //////////////////////////////////////////////////////////////////////////////// + // Tests + var foo: (String, String) = float2fraction("2.0f") + assert(foo == ("2", "1")) + + foo = float2fraction("-2.0f") + assert(foo == ("-2", "1")) + + foo = float2fraction("8.0f") + assert(foo == ("8", "1")) + + foo = float2fraction("-8.0f") + assert(foo == ("-8", "1")) + + foo = float2fraction("3.14f") + assert(foo == ("26340230", "8388608")) + + foo = float2fraction("-3.14f") + assert(foo == ("-26340230", "8388608")) + + foo = float2fraction("2.64f") + assert(foo == ("22145926", "8388608")) + + foo = float2fraction("-2.64f") + assert(foo == ("-22145926", "8388608")) + + foo = float2fraction("0.125f") + assert(foo == ("1", "8")) + + foo = float2fraction("-0.125f") + assert(foo == ("-1", "8")) + + foo = float2fraction("0.0032f") + assert(foo == ("13743895", "4294967296")) + + foo = float2fraction("-0.0032f") + assert(foo == ("-13743895", "4294967296")) + + foo = float2fraction("0.69f") + assert(foo == ("11576279", "16777216")) + + foo = float2fraction("-0.69f") + assert(foo == ("-11576279", "16777216")) + + foo = float2fraction("2.35098856151e-38") + assert(foo == ("16777215" , "713623846352979940529142984724747568191373312")) + + foo = float2fraction("-2.35098856151e-38") + assert(foo == ("-16777215", "713623846352979940529142984724747568191373312")) + + println("ALL TESTS PASSED") +} From 64764d913ad9ea8ce8fe755be54ebf6f4789b31a Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Wed, 26 Apr 2023 12:26:53 +0200 Subject: [PATCH 15/28] added a test and added small support for NaN --- regression-tests/float/add_3.c | 5 +++++ src/tricera/concurrency/CCReader.scala | 8 ++++---- .../concurrency/ccreader/CCBinaryExpressions.scala | 4 ++-- 3 files changed, 11 insertions(+), 6 deletions(-) create mode 100644 regression-tests/float/add_3.c diff --git a/regression-tests/float/add_3.c b/regression-tests/float/add_3.c new file mode 100644 index 00000000..e8fa0208 --- /dev/null +++ b/regression-tests/float/add_3.c @@ -0,0 +1,5 @@ +int main() { + float a = 2.0f; + float b = a; + assert(a == b); +} diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 135cd31e..2e536bc4 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -139,10 +139,10 @@ object CCReader { // val isFloat : Predicate = floatADT.ctorIdPreds(0) - private def isFloat(t: ITerm): IFormula = floatADT.hasCtor(t, 0) - private def isNan(t: ITerm): IFormula = floatADT.hasCtor(t, 1) - private def isPlusinf(t: ITerm): IFormula = floatADT.hasCtor(t, 2) - private def isNeginf(t: ITerm): IFormula = floatADT.hasCtor(t, 3) + def isFloat(t: ITerm): IFormula = floatADT.hasCtor(t, 0) + def isNan(t: ITerm): IFormula = floatADT.hasCtor(t, 1) + def isPlusinf(t: ITerm): IFormula = floatADT.hasCtor(t, 2) + def isNeginf(t: ITerm): IFormula = floatADT.hasCtor(t, 3) // val isFloat : Predicate = floatADT.hasCtor(I, 0) // val isNan : Predicate = floatADT.ctorIdPreds(1) diff --git a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala index 4caf4353..64e94ef4 100644 --- a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala +++ b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala @@ -124,8 +124,8 @@ object CCBinaryExpressions { override def getIntRes = lhsTerm === rhsTerm override def getFloatRes = { - FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm) - } // &&& !isNaN(lhsTerm) //todo: Should it be the same + (FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm)) &&& (!FloatADT.isNan(lhsTerm) ||| !FloatADT.isNan(rhsTerm)) //todo: Should it be the same + } } From 04da5b110ab6dff93528d725794ae5701c466628 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Wed, 26 Apr 2023 13:22:21 +0200 Subject: [PATCH 16/28] added some support for doubles and did some refactoring for them --- regression-tests/float/leq_1.c | 5 + regression-tests/float/nan_create.c | 4 + src/tricera/concurrency/CCReader.scala | 174 +++++++++++------- .../ccreader/CCBinaryExpressions.scala | 31 +++- src/tricera/concurrency/ccreader/CCType.scala | 7 + 5 files changed, 150 insertions(+), 71 deletions(-) create mode 100644 regression-tests/float/leq_1.c create mode 100644 regression-tests/float/nan_create.c diff --git a/regression-tests/float/leq_1.c b/regression-tests/float/leq_1.c new file mode 100644 index 00000000..24d24696 --- /dev/null +++ b/regression-tests/float/leq_1.c @@ -0,0 +1,5 @@ +int main() { + float a = 2.3f; + float b = 2.25f;; + assert(b <= a); +} diff --git a/regression-tests/float/nan_create.c b/regression-tests/float/nan_create.c new file mode 100644 index 00000000..90bdae21 --- /dev/null +++ b/regression-tests/float/nan_create.c @@ -0,0 +1,4 @@ +int main() { + float nan = 0/0; + assert(nan = 2); +} diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 2e536bc4..88d301c7 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -114,9 +114,112 @@ object CCReader { object ArithmeticMode extends Enumeration { val Mathematical, ILP32, LP64, LLP64 = Value } + + ////////////////////////////////////////////////////////////////////////////// + // Doubles + object DoubleADT { + private val doubleADTCtorSignatures: Seq[(String, ADT.CtorSignature)] = Seq( + ("doubleData", ADT.CtorSignature( + Seq(("getDouble", ADT.OtherSort(Rationals.dom))), ADT.ADTSort(0))), + ("NaN", ADT.CtorSignature(Nil, ADT.ADTSort(0))), + ("plusInfinity", ADT.CtorSignature(Nil, ADT.ADTSort(0))), + ("negativeInfinity", ADT.CtorSignature(Nil, ADT.ADTSort(0))) + ) + + val doubleADT = new ADT(sortNames = Seq("doubleADT"), + doubleADTCtorSignatures) + val sort = doubleADT.sorts.head + + val doubleCtor: MonoSortedIFunction = doubleADT.constructors(0) + val getData: MonoSortedIFunction = doubleADT.selectors(0)(0) + + val nan: ITerm = IFunApp(doubleADT.constructors(1), Nil) + val plusInf: ITerm = IFunApp(doubleADT.constructors(2), Nil) + val negInf: ITerm = IFunApp(doubleADT.constructors(3), Nil) + + def isFloat(t: ITerm): IFormula = doubleADT.hasCtor(t, 0) + + def isNan(t: ITerm): IFormula = doubleADT.hasCtor(t, 1) + + def isPlusinf(t: ITerm): IFormula = doubleADT.hasCtor(t, 2) + + def isNeginf(t: ITerm): IFormula = doubleADT.hasCtor(t, 3) + } + + object Doubles { + import scala.util.control._ + import scala.math._ + def double2fraction(fp: String): (String, String) = { + val f: Double = fp.toDouble + if (f.isNaN) { + ("0", "0") + } + else if (f.isInfinity) { + ("0", "0") + } + else { + val mantissaBits: Long = (java.lang.Double.doubleToLongBits(f) << 12 >>> 12) + val mantissa: String = String.format("%52s", java.lang.Long.toBinaryString(mantissaBits)).replace(' ', '0') + + val exponentBits: Long = (java.lang.Double.doubleToLongBits(f) << 1 >>> 53) + val exponent: String = String.format("%11s", java.lang.Long.toBinaryString(exponentBits)).replace(' ', '0') + + val signBit = (java.lang.Double.doubleToLongBits(f) >>> 63).toBinaryString + + var bitCount: Int = 53 + var denominator: BigInt = 1 + var numerator: BigInt = 0 + + //Get the denominator from the mantissa + var loop = new Breaks + loop.breakable { + for (bit <- mantissa.reverse) { + if (bit == '1') { + denominator = BigInt(2).pow(bitCount) + loop.break() + } + bitCount = bitCount - 1 + } + } + + // reset bitCount + bitCount = 1 + numerator = denominator + //Get the numerator from the mantissa + for (bit <- mantissa) { + if (bit == '1') { + numerator = numerator + denominator / BigInt(2).pow(bitCount) + } + bitCount = bitCount + 1 + } + + bitCount = 0 + // Get the exponent + var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 + for (bit <- exponent.reverse) { + if (bit == '1') { + exponentInt = exponentInt + pow(2, bitCount).toInt + } + bitCount = bitCount + 1 + } + + if (exponentInt > 0) { + numerator = numerator * BigInt(2).pow(exponentInt) + } + if (exponentInt < 0) { + denominator = denominator * BigInt(2).pow(abs(exponentInt)) + } + if (signBit == "1") { + numerator = -numerator + } + (numerator.toString, denominator.toString) + } + } + } + } + ////////////////////////////////////////////////////////////////////////////// // Floats -// TODO: Add doubleADT object FloatADT { private val floatADTCtorSignatures : Seq[(String, ADT.CtorSignature)] = Seq( ("floatData", ADT.CtorSignature( @@ -150,75 +253,10 @@ object CCReader { // val isNegInf : Predicate = floatADT.ctorIdPreds(3) } - ////////////////////////////////////////////////////////////////////////////// object Floats { + import scala.util.control._ import scala.math._ - def double2fraction(fp: String): (String, String) = { - val f: Double = fp.toDouble - if (f.isNaN) { - ("0", "0") - } - else if (f.isInfinity) { - ("0", "0") - } - else { - val mantissaBits: Long = (java.lang.Double.doubleToLongBits(f) << 11 >>> 11) - val mantissa: String = String.format("%52s", java.lang.Long.toBinaryString(mantissaBits)).replace(' ', '0') - - val exponentBits: Long = (java.lang.Double.doubleToLongBits(f) << 1 >>> 53) - val exponent: String = String.format("%11s", java.lang.Long.toBinaryString(exponentBits)).replace(' ', '0') - - val signBit = (java.lang.Double.doubleToLongBits(f) >>> 63).toBinaryString - - var bitCount: Int = 53 - - var denominator: Int = 0 - var numerator: Int = 0 - var loop = new Breaks - loop.breakable { - for (bit <- mantissa.reverse) { - if (bit == '1') { - denominator = (pow(2, bitCount)).toInt - loop.break() - } - bitCount = bitCount - 1 - } - } - - // reset bitCount - bitCount = 1 - numerator = denominator - for (bit <- mantissa) { - if (bit == '1') { - numerator = numerator + denominator / pow(2, bitCount).toInt - } - bitCount = bitCount + 1 - } - - bitCount = 0 - var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 - for (bit <- exponent.reverse) { - if (bit == '1') { - exponentInt = exponentInt + pow(2, bitCount).toInt - } - bitCount = bitCount + 1 - } - - if (exponentInt > 0) { - numerator = numerator * pow(2, exponentInt).toInt - } - if (exponentInt < 0) { - denominator = denominator * pow(2, exponentInt).toInt - } - if (signBit == "1") { - numerator = -numerator - } - (numerator.toString, denominator.toString) - } - } - - def float2fraction(fp: String): (String, String) = { val f: Float = fp.toFloat @@ -287,6 +325,8 @@ object CCReader { } + ////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////////// case class CCClause (clause : HornClauses.Clause, diff --git a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala index 64e94ef4..e4381404 100644 --- a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala +++ b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala @@ -50,6 +50,7 @@ object CCBinaryExpressions { // these should be handled in relevant cases supporting pointer arithmetic, // e.g., addition + protected def getDoubleRes: IExpression protected def getFloatRes: IExpression protected def getIntRes: IExpression @@ -81,6 +82,7 @@ object CCBinaryExpressions { ModuloArithmetic.bvor(lhs.typ cast2Unsigned lhs.toTerm, lhs.typ cast2Unsigned rhs.toTerm) override def getFloatRes = ??? + override def getDoubleRes = ??? } case class BitwiseAnd(_lhs: CCExpr, _rhs: CCExpr) @@ -89,6 +91,7 @@ object CCBinaryExpressions { ModuloArithmetic.bvand(lhs.typ cast2Unsigned lhs.toTerm, lhs.typ cast2Unsigned rhs.toTerm) override def getFloatRes = ??? + override def getDoubleRes = ??? } case class BitwiseXor(_lhs: CCExpr, _rhs: CCExpr) @@ -97,6 +100,7 @@ object CCBinaryExpressions { ModuloArithmetic.bvxor(lhs.typ cast2Unsigned lhs.toTerm, lhs.typ cast2Unsigned rhs.toTerm) override def getFloatRes = ??? + override def getDoubleRes = ??? } case class ShiftLeft(_lhs: CCExpr, _rhs: CCExpr) @@ -105,6 +109,7 @@ object CCBinaryExpressions { ModuloArithmetic.bvshl(lhs.typ cast2Unsigned lhs.toTerm, lhs.typ cast2Unsigned rhs.toTerm) override def getFloatRes = ??? + override def getDoubleRes = ??? } case class ShiftRight(_lhs: CCExpr, _rhs: CCExpr) @@ -113,6 +118,7 @@ object CCBinaryExpressions { ModuloArithmetic.bvashr(lhs.typ cast2Unsigned lhs.toTerm, lhs.typ cast2Unsigned rhs.toTerm) override def getFloatRes = ??? + override def getDoubleRes = ??? } //////////////////////////////////////////////////////////////////////////// @@ -126,6 +132,7 @@ object CCBinaryExpressions { override def getFloatRes = { (FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm)) &&& (!FloatADT.isNan(lhsTerm) ||| !FloatADT.isNan(rhsTerm)) //todo: Should it be the same } + override def getDoubleRes = ??? } @@ -136,6 +143,7 @@ object CCBinaryExpressions { override def getIntRes = lhsTerm =/= rhsTerm override def getFloatRes = FloatADT.getData(lhsTerm) =/= FloatADT.getData(rhsTerm) //todo: Should it be the same + override def getDoubleRes = ??? } case class Less(_lhs: CCExpr, _rhs: CCExpr) @@ -143,7 +151,8 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm < rhsTerm - override def getFloatRes = Rationals.lt(lhsTerm, rhsTerm) + override def getFloatRes = Rationals.lt(FloatADT.getData(lhsTerm), FloatADT.getData(rhsTerm)) + override def getDoubleRes = ??? } case class Greater(_lhs: CCExpr, _rhs: CCExpr) @@ -151,7 +160,8 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm > rhsTerm - override def getFloatRes = Rationals.gt(lhsTerm, rhsTerm) + override def getFloatRes = Rationals.gt(FloatADT.getData(lhsTerm), FloatADT.getData(rhsTerm)) + override def getDoubleRes = ??? } case class LessEqual(_lhs: CCExpr, _rhs: CCExpr) @@ -159,7 +169,8 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm <= rhsTerm - override def getFloatRes = Rationals.leq(lhsTerm, rhsTerm) + override def getFloatRes = Rationals.leq(FloatADT.getData(lhsTerm), FloatADT.getData(rhsTerm)) + override def getDoubleRes = ??? } case class GreaterEqual(_lhs: CCExpr, _rhs: CCExpr) @@ -167,7 +178,8 @@ object CCBinaryExpressions { val (lhsTerm, rhsTerm) = getActualOperandsForBinPred(lhs, rhs) override def getIntRes = lhsTerm >= rhsTerm - override def getFloatRes = Rationals.geq(lhsTerm, rhsTerm) + override def getFloatRes = Rationals.geq(FloatADT.getData(lhsTerm), FloatADT.getData(rhsTerm)) + override def getDoubleRes = ??? } //////////////////////////////////////////////////////////////////////////// @@ -189,6 +201,13 @@ object CCBinaryExpressions { case _ => throw new Exception("Unmatched types") } + override def getDoubleRes = (lhs.typ, rhs.typ) match { + case (CCDouble, CCDouble) => + FloatADT.floatCtor(Rationals.plus( + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } } case class Minus(_lhs: CCExpr, _rhs: CCExpr) @@ -205,6 +224,7 @@ object CCBinaryExpressions { throw new Exception("Unmatched types") } + override def getDoubleRes = ??? } case class Times(_lhs: CCExpr, _rhs: CCExpr) @@ -220,6 +240,7 @@ object CCBinaryExpressions { case _ => throw new Exception("Unmatched types") } + override def getDoubleRes = ??? } case class Div(_lhs: CCExpr, _rhs: CCExpr) @@ -235,6 +256,7 @@ object CCBinaryExpressions { case _ => throw new Exception("Unmatched types") } + override def getDoubleRes = ??? } case class Mod(_lhs: CCExpr, _rhs: CCExpr) @@ -244,6 +266,7 @@ object CCBinaryExpressions { ap.theories.nia.GroebnerMultiplication.tMod(lhs.toTerm, rhs.toTerm) } override def getFloatRes = ??? + override def getDoubleRes = ??? } private def throwErrorIfPointerArithmetic(lhs: CCExpr, diff --git a/src/tricera/concurrency/ccreader/CCType.scala b/src/tricera/concurrency/ccreader/CCType.scala index 6d00180a..e7d24959 100644 --- a/src/tricera/concurrency/ccreader/CCType.scala +++ b/src/tricera/concurrency/ccreader/CCType.scala @@ -71,6 +71,7 @@ abstract sealed class CCType { case CCLongLong => SignedBVSort(64) case CCULongLong => UnsignedBVSort(64) case CCFloat => FloatADT.sort + case CCDouble => DoubleADT.sort case CCDuration => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -91,6 +92,7 @@ abstract sealed class CCType { case CCLongLong => SignedBVSort(64) case CCULongLong => UnsignedBVSort(64) case CCFloat => FloatADT.sort + case CCDouble => DoubleADT.sort case CCDuration => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -111,6 +113,7 @@ abstract sealed class CCType { case CCLongLong => SignedBVSort(64) case CCULongLong => UnsignedBVSort(64) case CCFloat => FloatADT.sort + case CCDouble => DoubleADT.sort case CCDuration => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -243,6 +246,10 @@ case object CCFloat extends CCType { override def toString : String = "float" def shortName = "float" } +case object CCDouble extends CCType { + override def toString : String = "doublej" + def shortName = "double" +} case class CCHeap(heap: Heap) extends CCType { override def toString: String = heap.toString From 579437fc6370baeb617ff52bf7a9e3fad5b47e4e Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Wed, 3 May 2023 16:47:22 +0200 Subject: [PATCH 17/28] added small changes and added some tests --- regression-tests/float/add_3.c | 4 +-- regression-tests/float/nan_create.c | 2 +- src/tricera/concurrency/CCReader.scala | 25 ++++++++------- .../ccreader/CCBinaryExpressions.scala | 3 +- .../concurrency/float2fractionTest.scala | 32 +++++++++---------- 5 files changed, 34 insertions(+), 32 deletions(-) diff --git a/regression-tests/float/add_3.c b/regression-tests/float/add_3.c index e8fa0208..7df0b362 100644 --- a/regression-tests/float/add_3.c +++ b/regression-tests/float/add_3.c @@ -1,5 +1,5 @@ int main() { float a = 2.0f; - float b = a; - assert(a == b); + float b = a + 0.5f; + assert(a + 0.4f == b); } diff --git a/regression-tests/float/nan_create.c b/regression-tests/float/nan_create.c index 90bdae21..967a9276 100644 --- a/regression-tests/float/nan_create.c +++ b/regression-tests/float/nan_create.c @@ -1,4 +1,4 @@ int main() { float nan = 0/0; - assert(nan = 2); + assert(nan == 2); } diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 88d301c7..602e8033 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -53,7 +53,9 @@ import CCExceptions._ import ap.theories.rationals import ap.theories.rationals.Rationals import ap.theories.rationals.Rationals.Fraction -import tricera.concurrency.CCReader.Floats.float2fraction +import tricera.concurrency.CCReader.Doubles.doubleToFraction +import tricera.concurrency.CCReader.Floats.floatToFraction + @@ -149,7 +151,7 @@ object CCReader { object Doubles { import scala.util.control._ import scala.math._ - def double2fraction(fp: String): (String, String) = { + def doubleToFraction(fp: String): (String, String) = { val f: Double = fp.toDouble if (f.isNaN) { ("0", "0") @@ -216,7 +218,6 @@ object CCReader { } } } - } ////////////////////////////////////////////////////////////////////////////// // Floats @@ -257,7 +258,7 @@ object CCReader { import scala.util.control._ import scala.math._ - def float2fraction(fp: String): (String, String) = { + def floatToFraction(fp: String): (String, String) = { val f: Float = fp.toFloat if (f.isNaN) { @@ -3792,7 +3793,6 @@ class CCReader private (prog : Program, //////////////////////////////////////////////////////////////////////////// private def evalHelp(constant : Constant) : Unit = constant match { -// case constant : Efloat. Constant ::= Double; case constant : Echar => pushVal(CCTerm(IdealInt(constant.char_.toInt), CCInt, Some( SourceInfo(constant.line_num, constant.col_num, constant.offset)))) @@ -3833,19 +3833,20 @@ class CCReader private (prog : Program, pushVal(CCTerm(IdealInt(constant.octallong_.substring(0, constant.octallong_.size - 1), 8), CCLong, Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) - // case constant : Eoctalunslong. Constant ::= OctalUnsLong; -// case constant : Ecdouble. Constant ::= CDouble; - case constant : Ecfloat => - //val frac : (String, String) = float2fraction(constant.cfloat_) - val (num, denum) = float2fraction(constant.cfloat_) + //val frac : (String, String) = floatToFraction(constant.cfloat_) + val (num, denum) = floatToFraction(constant.cfloat_) val floatData = Fraction(i((IdealInt(num))), i(IdealInt(denum))) pushVal(CCTerm(FloatADT.floatCtor(floatData), CCFloat, Some(getSourceInfo(constant)))) - // assertProperty(FloatADT.isFloat(floatData), None)) // todo: just an example of adding an implicit assertion // addGuard(FloatADT.isFloat(floatData)) // todo: just an example of adding an assumption - // case constant : Eclongdouble. Constant ::= CLongDouble; + case constant : Ecdouble => + val (num, denum) = doubleToFraction(constant.cdouble_) + val doubleData = Fraction(i((IdealInt(num))), i(IdealInt(denum))) + pushVal(CCTerm(DoubleADT.doubleCtor(doubleData), + CCDouble, Some(getSourceInfo(constant)))) + case constant : Eclongdouble => ??? case constant : Eint => pushVal(CCTerm(IExpression.i(IdealInt(constant.unboundedinteger_)), CCInt, Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) diff --git a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala index e4381404..36ec0731 100644 --- a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala +++ b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala @@ -130,7 +130,8 @@ object CCBinaryExpressions { override def getIntRes = lhsTerm === rhsTerm override def getFloatRes = { - (FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm)) &&& (!FloatADT.isNan(lhsTerm) ||| !FloatADT.isNan(rhsTerm)) //todo: Should it be the same + //IExpression.ite(FloatADT.isFloat(lhsTerm),(FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm)), !(FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm))) + (FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm))// &&& (!FloatADT.isNan(lhsTerm) ||| !FloatADT.isNan(rhsTerm)) //todo: Should it be the same } override def getDoubleRes = ??? diff --git a/unit-tests/tricera/concurrency/float2fractionTest.scala b/unit-tests/tricera/concurrency/float2fractionTest.scala index a3c004e5..bb49104b 100644 --- a/unit-tests/tricera/concurrency/float2fractionTest.scala +++ b/unit-tests/tricera/concurrency/float2fractionTest.scala @@ -36,52 +36,52 @@ class FractionTest extends AnyFlatSpec { //////////////////////////////////////////////////////////////////////////////// // Tests - var foo: (String, String) = float2fraction("2.0f") + var foo: (String, String) = floatToFraction("2.0f") assert(foo == ("2", "1")) - foo = float2fraction("-2.0f") + foo = floatToFraction("-2.0f") assert(foo == ("-2", "1")) - foo = float2fraction("8.0f") + foo = floatToFraction("8.0f") assert(foo == ("8", "1")) - foo = float2fraction("-8.0f") + foo = floatToFraction("-8.0f") assert(foo == ("-8", "1")) - foo = float2fraction("3.14f") + foo = floatToFraction("3.14f") assert(foo == ("26340230", "8388608")) - foo = float2fraction("-3.14f") + foo = floatToFraction("-3.14f") assert(foo == ("-26340230", "8388608")) - foo = float2fraction("2.64f") + foo = floatToFraction("2.64f") assert(foo == ("22145926", "8388608")) - foo = float2fraction("-2.64f") + foo = floatToFraction("-2.64f") assert(foo == ("-22145926", "8388608")) - foo = float2fraction("0.125f") + foo = floatToFraction("0.125f") assert(foo == ("1", "8")) - foo = float2fraction("-0.125f") + foo = floatToFraction("-0.125f") assert(foo == ("-1", "8")) - foo = float2fraction("0.0032f") + foo = floatToFraction("0.0032f") assert(foo == ("13743895", "4294967296")) - foo = float2fraction("-0.0032f") + foo = floatToFraction("-0.0032f") assert(foo == ("-13743895", "4294967296")) - foo = float2fraction("0.69f") + foo = floatToFraction("0.69f") assert(foo == ("11576279", "16777216")) - foo = float2fraction("-0.69f") + foo = floatToFraction("-0.69f") assert(foo == ("-11576279", "16777216")) - foo = float2fraction("2.35098856151e-38") + foo = floatToFraction("2.35098856151e-38") assert(foo == ("16777215" , "713623846352979940529142984724747568191373312")) - foo = float2fraction("-2.35098856151e-38") + foo = floatToFraction("-2.35098856151e-38") assert(foo == ("-16777215", "713623846352979940529142984724747568191373312")) println("ALL TESTS PASSED") From d36885b02dccd61ef28fbf25c501935c19bda5b8 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Sun, 7 May 2023 16:39:31 +0200 Subject: [PATCH 18/28] Bug in both long double and double --- acsl-parser/acsl.cf | 27 ++-- cc-parser/concurrentC.cf | 10 +- .../double/{double_add.c => add_1.c} | 4 +- .../double/{nan_double.c => nan_1.c} | 0 .../{nan_double_range.c => nan_range.c} | 0 .../double/{double_sub.c => sub_1.c} | 0 .../{long_double_add.c => add_1.c} | 4 +- .../{nan_long_double.c => nan_1.c} | 0 .../{nan_long_double_range.c => nan_range.c} | 0 src/tricera/concurrency/CCReader.scala | 120 +++++++++++++++++- .../ccreader/CCBinaryExpressions.scala | 97 ++++++++++++-- src/tricera/concurrency/ccreader/CCType.scala | 10 +- 12 files changed, 229 insertions(+), 43 deletions(-) rename regression-tests/double/{double_add.c => add_1.c} (58%) rename regression-tests/double/{nan_double.c => nan_1.c} (100%) rename regression-tests/double/{nan_double_range.c => nan_range.c} (100%) rename regression-tests/double/{double_sub.c => sub_1.c} (100%) rename regression-tests/long_double/{long_double_add.c => add_1.c} (53%) rename regression-tests/long_double/{nan_long_double.c => nan_1.c} (100%) rename regression-tests/long_double/{nan_long_double_range.c => nan_range.c} (100%) diff --git a/acsl-parser/acsl.cf b/acsl-parser/acsl.cf index d2128770..a4456e2a 100644 --- a/acsl-parser/acsl.cf +++ b/acsl-parser/acsl.cf @@ -222,19 +222,20 @@ TSetTerm. TSet ::= Term ; -- C Type Expressions (A.1) -------------------------------- -- TODO: Missing a lot. -CTypeSpecifierVoid. CTypeSpecifier ::= "void" ; -CTypeSpecifierChar. CTypeSpecifier ::= "char" ; -CTypeSpecifierShort. CTypeSpecifier ::= "short" ; -CTypeSpecifierInt. CTypeSpecifier ::= "int" ; -CTypeSpecifierLong. CTypeSpecifier ::= "long" ; -CTypeSpecifierFloat. CTypeSpecifier ::= "float" ; -CTypeSpecifierDouble. CTypeSpecifier ::= "double" ; -CTypeSpecifierSigned. CTypeSpecifier ::= "signed" ; -CTypeSpecifierUnsigned. CTypeSpecifier ::= "unsigned" ; -CTypeSpecifierStruct. CTypeSpecifier ::= "struct" Id ; -CTypeSpecifierUnion. CTypeSpecifier ::= "union" Id ; -CTypeSpecifierEnum. CTypeSpecifier ::= "enum" Id ; -CTypeSpecifierId. CTypeSpecifier ::= Id ; +CTypeSpecifierVoid. CTypeSpecifier ::= "void" ; +CTypeSpecifierChar. CTypeSpecifier ::= "char" ; +CTypeSpecifierShort. CTypeSpecifier ::= "short" ; +CTypeSpecifierInt. CTypeSpecifier ::= "int" ; +CTypeSpecifierLong. CTypeSpecifier ::= "long" ; +CTypeSpecifierFloat. CTypeSpecifier ::= "float" ; +CTypeSpecifierDouble. CTypeSpecifier ::= "double" ; +CTypeSpecifierLongDouble. CTypeSpecifier ::= "long double"; +CTypeSpecifierSigned. CTypeSpecifier ::= "signed" ; +CTypeSpecifierUnsigned. CTypeSpecifier ::= "unsigned" ; +CTypeSpecifierStruct. CTypeSpecifier ::= "struct" Id ; +CTypeSpecifierUnion. CTypeSpecifier ::= "union" Id ; +CTypeSpecifierEnum. CTypeSpecifier ::= "enum" Id ; +CTypeSpecifierId. CTypeSpecifier ::= Id ; ---- Tokens ------------------------------------------------ diff --git a/cc-parser/concurrentC.cf b/cc-parser/concurrentC.cf index d4bb6851..53ab9607 100644 --- a/cc-parser/concurrentC.cf +++ b/cc-parser/concurrentC.cf @@ -313,7 +313,6 @@ token CFloat (((digit+ '.' digit+)|(digit+ '.')|('.' digit+))(('e'|'E')('-')? di token CLongDouble (((digit+ '.' digit+)|(digit+ '.')|('.' digit+))(('e'|'E')('-')? digit+)?('l'|'L'))|((digit+ ('e'|'E')('-')? digit+)('l'|'L')); -token Cnan ('N''A''N') Ecomma. Exp ::= Exp "," Exp2; @@ -355,9 +354,7 @@ Econst. Exp17 ::= Constant; Estring. Exp17 ::= String; Enondet. Exp17 ::= "_"; -Enan. Constant ::= Cnan; Einf. Constant ::= "INFINITY"; -Efloat. Constant ::= Double; Echar. Constant ::= Char; Eunsigned. Constant ::= Unsigned; Elong. Constant ::= Long; @@ -370,13 +367,10 @@ Eoctal. Constant ::= Octal; Eoctalunsign. Constant ::= OctalUnsigned; Eoctallong. Constant ::= OctalLong; Eoctalunslong. Constant ::= OctalUnsLong; -Ecdouble. Constant ::= CDouble; Ecfloat. Constant ::= CFloat; +Ecdouble. Constant ::= CDouble; Eclongdouble. Constant ::= CLongDouble; -Eint. Constant ::= UnboundedInteger; - --- internal Elonger. Constant ::= Integer; --- internal Edouble. Constant ::= Double; +Eint. Constant ::= UnboundedInteger; Especial. Constant_expression ::= Exp3; diff --git a/regression-tests/double/double_add.c b/regression-tests/double/add_1.c similarity index 58% rename from regression-tests/double/double_add.c rename to regression-tests/double/add_1.c index d8c5ff56..0774d483 100644 --- a/regression-tests/double/double_add.c +++ b/regression-tests/double/add_1.c @@ -1,7 +1,7 @@ int main () { - double a = 1.0; - double b = 2.0; + double a = 1e2; + double b = 2e3; assert(a+b == 3.0); return 0; diff --git a/regression-tests/double/nan_double.c b/regression-tests/double/nan_1.c similarity index 100% rename from regression-tests/double/nan_double.c rename to regression-tests/double/nan_1.c diff --git a/regression-tests/double/nan_double_range.c b/regression-tests/double/nan_range.c similarity index 100% rename from regression-tests/double/nan_double_range.c rename to regression-tests/double/nan_range.c diff --git a/regression-tests/double/double_sub.c b/regression-tests/double/sub_1.c similarity index 100% rename from regression-tests/double/double_sub.c rename to regression-tests/double/sub_1.c diff --git a/regression-tests/long_double/long_double_add.c b/regression-tests/long_double/add_1.c similarity index 53% rename from regression-tests/long_double/long_double_add.c rename to regression-tests/long_double/add_1.c index 2128d6ed..a0630afa 100644 --- a/regression-tests/long_double/long_double_add.c +++ b/regression-tests/long_double/add_1.c @@ -1,8 +1,8 @@ int main () { long double a = 1.0l; - long double b = 2.0l; + long double b = 1.0l; - assert(a+b == 3.0l); + assert(a+b == 2.0l); return 0; } diff --git a/regression-tests/long_double/nan_long_double.c b/regression-tests/long_double/nan_1.c similarity index 100% rename from regression-tests/long_double/nan_long_double.c rename to regression-tests/long_double/nan_1.c diff --git a/regression-tests/long_double/nan_long_double_range.c b/regression-tests/long_double/nan_range.c similarity index 100% rename from regression-tests/long_double/nan_long_double_range.c rename to regression-tests/long_double/nan_range.c diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 602e8033..5bc726fb 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -31,7 +31,7 @@ package tricera.concurrency import ap.basetypes.{IdealInt, IdealRat} import ap.parser._ -import ap.theories.{ADT, ExtArray, Heap, ModuloArithmetic} +import ap.theories.{ADT, ExtArray, Heap, ModuloArithmetic, rationals} import ap.types.{MonoSortedIFunction, MonoSortedPredicate, SortedConstantTerm} import concurrent_c._ import concurrent_c.Absyn._ @@ -50,11 +50,13 @@ import tricera.params.TriCeraParameters import tricera.parsers.AnnotationParser import tricera.parsers.AnnotationParser._ import CCExceptions._ -import ap.theories.rationals import ap.theories.rationals.Rationals import ap.theories.rationals.Rationals.Fraction import tricera.concurrency.CCReader.Doubles.doubleToFraction import tricera.concurrency.CCReader.Floats.floatToFraction +import tricera.concurrency.CCReader.LongDoubles.longDoubleToFraction + +import scala.collection.immutable.Nil @@ -117,6 +119,110 @@ object CCReader { val Mathematical, ILP32, LP64, LLP64 = Value } + ////////////////////////////////////////////////////////////////////////////// + // Long Doubles + object LongDoubleADT { + private val longDoubleADTCtorSignatures: Seq[(String, ADT.CtorSignature)] = Seq( + ("longDoubleData", ADT.CtorSignature( + Seq(("getLongDouble", ADT.OtherSort(Rationals.dom))), ADT.ADTSort(0))), + ("NaN", ADT.CtorSignature(Nil, ADT.ADTSort(0))), + ("plusInfinity", ADT.CtorSignature(Nil, ADT.ADTSort(0))), + ("negativeInfinity", ADT.CtorSignature(Nil, ADT.ADTSort(0))) + ) + + val longDoubleADT = new ADT(sortNames = Seq("longDoubleADT"), + longDoubleADTCtorSignatures) + val sort = longDoubleADT.sorts.head + + val longDoubleCtor: MonoSortedIFunction = longDoubleADT.constructors(0) + val getData: MonoSortedIFunction = longDoubleADT.selectors(0)(0) + + val nan: ITerm = IFunApp(longDoubleADT.constructors(1), Nil) + val plusInf: ITerm = IFunApp(longDoubleADT.constructors(2), Nil) + val negInf: ITerm = IFunApp(longDoubleADT.constructors(3), Nil) + + def isFloat(t: ITerm): IFormula = longDoubleADT.hasCtor(t, 0) + + def isNan(t: ITerm): IFormula = longDoubleADT.hasCtor(t, 1) + + def isPlusinf(t: ITerm): IFormula = longDoubleADT.hasCtor(t, 2) + + def isNeginf(t: ITerm): IFormula = longDoubleADT.hasCtor(t, 3) + } + + object LongDoubles { + + import scala.util.control._ + import scala.math._ + + def longDoubleToFraction(fp: String): (String, String) = { + val f: Double = fp.toDouble + if (f.isNaN) { + ("0", "0") + } + else if (f.isInfinity) { + ("0", "0") + } + else { + val mantissaBits: Long = (java.lang.Double.doubleToLongBits(f) << 12 >>> 12) + val mantissa: String = String.format("%52s", java.lang.Long.toBinaryString(mantissaBits)).replace(' ', '0') + + val exponentBits: Long = (java.lang.Double.doubleToLongBits(f) << 1 >>> 53) + val exponent: String = String.format("%11s", java.lang.Long.toBinaryString(exponentBits)).replace(' ', '0') + + val signBit = (java.lang.Double.doubleToLongBits(f) >>> 63).toBinaryString + + var bitCount: Int = 53 + var denominator: BigInt = 1 + var numerator: BigInt = 0 + + //Get the denominator from the mantissa + var loop = new Breaks + loop.breakable { + for (bit <- mantissa.reverse) { + if (bit == '1') { + denominator = BigInt(2).pow(bitCount) + loop.break() + } + bitCount = bitCount - 1 + } + } + + // reset bitCount + bitCount = 1 + numerator = denominator + //Get the numerator from the mantissa + for (bit <- mantissa) { + if (bit == '1') { + numerator = numerator + denominator / BigInt(2).pow(bitCount) + } + bitCount = bitCount + 1 + } + + bitCount = 0 + // Get the exponent + var exponentInt: Int = -pow(2, exponent.length() - 1).toInt + 1 + for (bit <- exponent.reverse) { + if (bit == '1') { + exponentInt = exponentInt + pow(2, bitCount).toInt + } + bitCount = bitCount + 1 + } + + if (exponentInt > 0) { + numerator = numerator * BigInt(2).pow(exponentInt) + } + if (exponentInt < 0) { + denominator = denominator * BigInt(2).pow(abs(exponentInt)) + } + if (signBit == "1") { + numerator = -numerator + } + (numerator.toString, denominator.toString) + } + } + } + ////////////////////////////////////////////////////////////////////////////// // Doubles object DoubleADT { @@ -2167,6 +2273,10 @@ class CCReader private (prog : Program, // ignore case _ : Tfloat => typ = CCFloat + case _: Tdouble => + typ = CCDouble + case _: Tlong if typ == CCDouble => + typ = CCLongDouble case _ : Tsigned => typ = CCInt case _ : Tunsigned => @@ -3846,7 +3956,11 @@ class CCReader private (prog : Program, val doubleData = Fraction(i((IdealInt(num))), i(IdealInt(denum))) pushVal(CCTerm(DoubleADT.doubleCtor(doubleData), CCDouble, Some(getSourceInfo(constant)))) - case constant : Eclongdouble => ??? + case constant : Eclongdouble => + val (num, denum) = doubleToFraction(constant.clongdouble_.dropRight(1)) + val longDoubleData = Fraction(i((IdealInt(num))), i(IdealInt(denum))) + pushVal(CCTerm(LongDoubleADT.longDoubleCtor(longDoubleData), + CCLongDouble, Some(getSourceInfo(constant)))) case constant : Eint => pushVal(CCTerm(IExpression.i(IdealInt(constant.unboundedinteger_)), CCInt, Some(SourceInfo(constant.line_num, constant.col_num, constant.offset)))) diff --git a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala index 36ec0731..fb649741 100644 --- a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala +++ b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala @@ -50,9 +50,10 @@ object CCBinaryExpressions { // these should be handled in relevant cases supporting pointer arithmetic, // e.g., addition - protected def getDoubleRes: IExpression - protected def getFloatRes: IExpression - protected def getIntRes: IExpression + protected def getLongDoubleRes: IExpression + protected def getDoubleRes: IExpression + protected def getFloatRes: IExpression + protected def getIntRes: IExpression def expr: CCExpr = { (lhs.typ, rhs.typ) match { @@ -83,6 +84,7 @@ object CCBinaryExpressions { lhs.typ cast2Unsigned rhs.toTerm) override def getFloatRes = ??? override def getDoubleRes = ??? + override def getLongDoubleRes = ??? } case class BitwiseAnd(_lhs: CCExpr, _rhs: CCExpr) @@ -92,6 +94,7 @@ object CCBinaryExpressions { lhs.typ cast2Unsigned rhs.toTerm) override def getFloatRes = ??? override def getDoubleRes = ??? + override def getLongDoubleRes = ??? } case class BitwiseXor(_lhs: CCExpr, _rhs: CCExpr) @@ -101,6 +104,7 @@ object CCBinaryExpressions { lhs.typ cast2Unsigned rhs.toTerm) override def getFloatRes = ??? override def getDoubleRes = ??? + override def getLongDoubleRes = ??? } case class ShiftLeft(_lhs: CCExpr, _rhs: CCExpr) @@ -110,6 +114,7 @@ object CCBinaryExpressions { lhs.typ cast2Unsigned rhs.toTerm) override def getFloatRes = ??? override def getDoubleRes = ??? + override def getLongDoubleRes = ??? } case class ShiftRight(_lhs: CCExpr, _rhs: CCExpr) @@ -119,6 +124,7 @@ object CCBinaryExpressions { lhs.typ cast2Unsigned rhs.toTerm) override def getFloatRes = ??? override def getDoubleRes = ??? + override def getLongDoubleRes = ??? } //////////////////////////////////////////////////////////////////////////// @@ -133,7 +139,8 @@ object CCBinaryExpressions { //IExpression.ite(FloatADT.isFloat(lhsTerm),(FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm)), !(FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm))) (FloatADT.getData(lhsTerm) === FloatADT.getData(rhsTerm))// &&& (!FloatADT.isNan(lhsTerm) ||| !FloatADT.isNan(rhsTerm)) //todo: Should it be the same } - override def getDoubleRes = ??? + override def getDoubleRes = DoubleADT.getData(lhsTerm) === DoubleADT.getData(rhsTerm) + override def getLongDoubleRes = LongDoubleADT.getData(lhsTerm) === LongDoubleADT.getData(rhsTerm) } @@ -144,7 +151,9 @@ object CCBinaryExpressions { override def getIntRes = lhsTerm =/= rhsTerm override def getFloatRes = FloatADT.getData(lhsTerm) =/= FloatADT.getData(rhsTerm) //todo: Should it be the same - override def getDoubleRes = ??? + override def getDoubleRes = DoubleADT.getData(lhsTerm) =/= DoubleADT.getData(rhsTerm) + override def getLongDoubleRes = LongDoubleADT.getData(lhsTerm) =/= LongDoubleADT.getData(rhsTerm) + } case class Less(_lhs: CCExpr, _rhs: CCExpr) @@ -153,7 +162,8 @@ object CCBinaryExpressions { override def getIntRes = lhsTerm < rhsTerm override def getFloatRes = Rationals.lt(FloatADT.getData(lhsTerm), FloatADT.getData(rhsTerm)) - override def getDoubleRes = ??? + override def getDoubleRes = Rationals.lt(DoubleADT.getData(lhsTerm), DoubleADT.getData(rhsTerm)) + override def getLongDoubleRes = Rationals.lt(LongDoubleADT.getData(lhsTerm), LongDoubleADT.getData(rhsTerm)) } case class Greater(_lhs: CCExpr, _rhs: CCExpr) @@ -162,7 +172,10 @@ object CCBinaryExpressions { override def getIntRes = lhsTerm > rhsTerm override def getFloatRes = Rationals.gt(FloatADT.getData(lhsTerm), FloatADT.getData(rhsTerm)) - override def getDoubleRes = ??? + + override def getDoubleRes = Rationals.gt(DoubleADT.getData(lhsTerm), DoubleADT.getData(rhsTerm)) + + override def getLongDoubleRes = Rationals.gt(LongDoubleADT.getData(lhsTerm), LongDoubleADT.getData(rhsTerm)) } case class LessEqual(_lhs: CCExpr, _rhs: CCExpr) @@ -171,7 +184,9 @@ object CCBinaryExpressions { override def getIntRes = lhsTerm <= rhsTerm override def getFloatRes = Rationals.leq(FloatADT.getData(lhsTerm), FloatADT.getData(rhsTerm)) - override def getDoubleRes = ??? + override def getDoubleRes = Rationals.leq(DoubleADT.getData(lhsTerm), DoubleADT.getData(rhsTerm)) + + override def getLongDoubleRes = Rationals.leq(LongDoubleADT.getData(lhsTerm), LongDoubleADT.getData(rhsTerm)) } case class GreaterEqual(_lhs: CCExpr, _rhs: CCExpr) @@ -180,7 +195,8 @@ object CCBinaryExpressions { override def getIntRes = lhsTerm >= rhsTerm override def getFloatRes = Rationals.geq(FloatADT.getData(lhsTerm), FloatADT.getData(rhsTerm)) - override def getDoubleRes = ??? + override def getDoubleRes = Rationals.geq(DoubleADT.getData(lhsTerm), DoubleADT.getData(rhsTerm)) + override def getLongDoubleRes = Rationals.geq(LongDoubleADT.getData(lhsTerm), LongDoubleADT.getData(rhsTerm)) } //////////////////////////////////////////////////////////////////////////// @@ -204,8 +220,16 @@ object CCBinaryExpressions { } override def getDoubleRes = (lhs.typ, rhs.typ) match { case (CCDouble, CCDouble) => - FloatADT.floatCtor(Rationals.plus( - FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) + DoubleADT.doubleCtor(Rationals.plus( + DoubleADT.getData(lhs.toTerm), DoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } + + override def getLongDoubleRes = (lhs.typ, rhs.typ) match { + case (CCLongDouble, CCLongDouble) => + LongDoubleADT.longDoubleCtor(Rationals.plus( + LongDoubleADT.getData(lhs.toTerm), LongDoubleADT.getData(rhs.toTerm))) case _ => throw new Exception("Unmatched types") } @@ -225,7 +249,22 @@ object CCBinaryExpressions { throw new Exception("Unmatched types") } - override def getDoubleRes = ??? + + override def getDoubleRes = (lhs.typ, rhs.typ) match { + case (CCDouble, CCDouble) => + DoubleADT.doubleCtor(Rationals.minus( + DoubleADT.getData(lhs.toTerm), DoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } + + override def getLongDoubleRes = (lhs.typ, rhs.typ) match { + case (CCLongDouble, CCLongDouble) => + LongDoubleADT.longDoubleCtor(Rationals.minus( + LongDoubleADT.getData(lhs.toTerm), LongDoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } } case class Times(_lhs: CCExpr, _rhs: CCExpr) @@ -241,7 +280,21 @@ object CCBinaryExpressions { case _ => throw new Exception("Unmatched types") } - override def getDoubleRes = ??? + override def getDoubleRes = (lhs.typ, rhs.typ) match { + case (CCDouble, CCDouble) => + DoubleADT.doubleCtor(Rationals.mul( + DoubleADT.getData(lhs.toTerm), DoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } + + override def getLongDoubleRes = (lhs.typ, rhs.typ) match { + case (CCLongDouble, CCLongDouble) => + LongDoubleADT.longDoubleCtor(Rationals.mul( + LongDoubleADT.getData(lhs.toTerm), LongDoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } } case class Div(_lhs: CCExpr, _rhs: CCExpr) @@ -257,7 +310,22 @@ object CCBinaryExpressions { case _ => throw new Exception("Unmatched types") } - override def getDoubleRes = ??? + + override def getDoubleRes = (lhs.typ, rhs.typ) match { + case (CCDouble, CCDouble) => + DoubleADT.doubleCtor(Rationals.div( + DoubleADT.getData(lhs.toTerm), DoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } + + override def getLongDoubleRes = (lhs.typ, rhs.typ) match { + case (CCLongDouble, CCLongDouble) => + LongDoubleADT.longDoubleCtor(Rationals.div( + LongDoubleADT.getData(lhs.toTerm), LongDoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } } case class Mod(_lhs: CCExpr, _rhs: CCExpr) @@ -268,6 +336,7 @@ object CCBinaryExpressions { } override def getFloatRes = ??? override def getDoubleRes = ??? + override def getLongDoubleRes = ??? } private def throwErrorIfPointerArithmetic(lhs: CCExpr, diff --git a/src/tricera/concurrency/ccreader/CCType.scala b/src/tricera/concurrency/ccreader/CCType.scala index e7d24959..c6b01d27 100644 --- a/src/tricera/concurrency/ccreader/CCType.scala +++ b/src/tricera/concurrency/ccreader/CCType.scala @@ -60,6 +60,7 @@ abstract sealed class CCType { case CCStructField(n, s) => s(n).ctor.resSort case CCIntEnum(_, _) => Sort.Integer case CCFloat => FloatADT.sort + case CCDouble => DoubleADT.sort case _ => Sort.Integer } case ArithmeticMode.ILP32 => @@ -72,6 +73,7 @@ abstract sealed class CCType { case CCULongLong => UnsignedBVSort(64) case CCFloat => FloatADT.sort case CCDouble => DoubleADT.sort + case CCLongDouble => LongDoubleADT.sort case CCDuration => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -93,6 +95,7 @@ abstract sealed class CCType { case CCULongLong => UnsignedBVSort(64) case CCFloat => FloatADT.sort case CCDouble => DoubleADT.sort + case CCLongDouble => LongDoubleADT.sort case CCDuration => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -114,6 +117,7 @@ abstract sealed class CCType { case CCULongLong => UnsignedBVSort(64) case CCFloat => FloatADT.sort case CCDouble => DoubleADT.sort + case CCLongDouble => LongDoubleADT.sort case CCDuration => Sort.Nat case CCHeap(heap) => heap.HeapSort case CCStackPointer(_, _, _) => Sort.Integer @@ -247,10 +251,14 @@ case object CCFloat extends CCType { def shortName = "float" } case object CCDouble extends CCType { - override def toString : String = "doublej" + override def toString : String = "double" def shortName = "double" } +case object CCLongDouble extends CCType { + override def toString : String = "long double" + def shortName = "long double" +} case class CCHeap(heap: Heap) extends CCType { override def toString: String = heap.toString def shortName = "heap" From 09f1befc6738e10f6355513c73359749ac88183a Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Mon, 8 May 2023 15:04:04 +0200 Subject: [PATCH 19/28] doubles shoudl be working, still issues with long doubles --- cc-parser/cc-parser.jar | Bin 338347 -> 339059 bytes cc-parser/concurrentC.cf | 4 ++-- regression-tests/double/add_1.c | 10 ++++------ regression-tests/long_double/add_1.c | 6 +++--- src/tricera/concurrency/CCReader.scala | 4 ++-- .../ccreader/CCBinaryExpressions.scala | 10 +++++++--- 6 files changed, 18 insertions(+), 16 deletions(-) diff --git a/cc-parser/cc-parser.jar b/cc-parser/cc-parser.jar index 3b1828aa66593cb915ee57815015400b6e855233..db8f3c4de8c0e5d72782fc4c2abf4a5478058b95 100644 GIT binary patch literal 339059 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�vsYjqf5$<#h!- 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 gP^t!eWxQytucyR@j~IL%o*G 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 mB)0& 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%0Adi@R3 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�g0=9e1&mtG&k?Ue{pNvY@K_NoW1vsk8DpNNxm$`1d_sK+NUWUxUf zjxQl{^J@<;Oz35U#277)xLc%#xvdBQC1EeATd@;9xI1bkoEYI4N0fgFhz2G z7WXX#WIeWI$<41k+%l@y0&@IO|B1xkXxPo#AqQkkZ>ct_mk)Bxs1G1nrM5)oZqXb@ zw?0uM$zikXv~oxQiP2fQTc6mGC%z<|2E!(1&|lLUW{l?|%ta8UsXO*1OVWc>YIS9B5%1NSd&PWp5`+!L z352Ovn(9nJq3^paFfOIrdR08!o1ut}quimfq;FKDMV(j8%)*S88@ainO?lRue*y`t ztg6(%pcfNv92!+z$y@&(-z!r8!b>5OCFmFYoIxc5K`vOefz zSNcccqH0WkIl?^4r7V&0*NJ2I{qMF-v`c7PMU82yJ9(UWw5oUES zA~B_8MOOZyw4k0*yFRoC@eUtizxCxENJ?DLYw;#7FRid~{z<&kU7FTJ z&83BTWul#jJeEYvE^o%XZOMeOj@7`g0lH+cY5h_>M0{r9R;m|UNiW3L<&c|#i)%R~ zNNKF|%4&!amHw=+5!B`2Y=ZH;z5Xj@sB>@}3N-#6hXxWZn8ZdT!sBWbZG1syr+={2 zLAf=N9BgPjQ2cg=>oz}>Ze}dKW5KoD38@}!fh>+Q(hcD3?cko-fL7n*hoThTU&v&8 zahrlgl~pFkq*|`i@?ndO#0IgVo&BR%8~X`U1<9#Vky_qCVy#@24_J^tJmxwHx%4Qf zl+)km8r(GK3a^fv^AlBd@vJ?Lx1((p+u^`vliSgYN<1B$BCIq@MH>ZG=}R&+a$hgZ z=Rqd}`qatHWsg7Y40KdizAix@ZgP9C2hNGL(qy}Di*A2z3RNcIT-iWoYVJry1sT|A z&H_WqO8izxu*wJt_k5hK(*BNO`c#chWaej?Qi%lDEt4nZ{m9A-O;Gg`V4J4_b-6~O z8;o&GmVDRtp)^VO&FI3*$*mb_A+7~rbo@8p?Kj3Jdc<^FcUT`h^>YoOec-drp;f<{ z)yoyknwIC%dK_ViH7zCO(C8t{KZ39Cn@$YM*=67Wo;dq#KmsmpXW_<3Z?R^1lx#=e zU;FIy8P0^UsjlijYK`f_#<+gLA>F$SIZ_Ne^R~lQRbEmYO~GP`81t6goNIa1+%h{F zT&Z!aXE$9|;j>S)rBWvy+u9aLQ1MHRV1#6mVk!pO3Y~hKh3FVmj3UPUd!A1?9K%Z(T zheDLmp8wrk%IUYWQy;Z!@#U#nmoNCy14)@|2R`0?g+d8Gy-}OkPJLDLW0hBJyJNo$ z-i%Ht=N+zlAU4do+3ed`FhfEt9Tlyw5!T&{hpt)3JbzM07dohDH%Ht`*2DY?I!1SS-#f#ETwNm4RPyBO z#biMmlY-qQ=YJ)T?sULCfuT0_Kpl5bCGTdgmwgo}?^8Ym82pCh2rf8c9Y> zPPZm8G^^g@pTup*^k?z3o&w|a_H|X8H~O2P&zNVv9-nRZtRQR{O=*|IW4j z9+Gi6FAuEpscLaP4%+#V*s7Ff9=q=u z|DMNerf%a_EGxU|l7MfIentiDZr=!h10?bbvMUXAv^gWm@7Su*M>2~e1&r4A18*F) z`dQBc9VnYb8Z~4rnu+moy(eCbrjLhltkEvq>#_88Uw`%g)!z~EtNSw9#J^Qs z-z`R}^VyB^#a{==AE~|)LG<`@4EnV>y`TN=UArU;)UE`>rR4vfwqr@;$FV6+l0hwF z+;RWYum!hbeJBd60o}%GlpA(JD=>HUsjybujh4)|#+`@~cdk@+kv%Av%F-Y-K*^R8 zWppA}Tn63q6t*kXt{;&Z{?m$bIxC_@cbxZzS~E#VdCF5XBiQf2LA0O7BidBazUB_(PH*vJz2@#c0#j7ULv7AO!O-&5A^rY z=yYyDGS6h4OK6>Ota!yO{#@gn3d`^OqvFz(F?UTaX05bd*0*@?Xs5 zhu5GU?Rrm{b*M^QPleR=a!P*uacNCbt&c*iBtb=Nk8SujM)yK?$Zq`sIdz9jg)W2z z=kClHY)zj0YwKKIMdF|>b|zT6ka`qn z!Q~G=&sY^Fu%AhdqFTn;rw9EWRoyzr%KnzcYD`^P;<|R?Y%a0pzQym=87pTg&a{Or z?X%N`8An-m75dAUC+Jm^Lv!LNAb0mb*3ByY_(aPH=9eUC{E~&XIMenGH?uOnJ2nAX z?CGY*p8YKuw~~EBC#`L*+6Ib44>C~W6w;B|KBMl&t*39 zE8$fSA}z~fDKdpGS-*=3&jf1h@E2S&Jk_j2hHb8~o$r=%`tw&!Fzgew^3 z@-(AtpsoXM7g2~Z^-(X?e>DS&_KZy0?=`*lchn{$ET;R8x=+F#MBSt(LBj7nP~ImV z+VVa?oqYND*Qi9Ji&1@M+JG-g-q>O>=S=jn%Bn;$=k?UYvs`WNRtnz}w zumM_IJ&!||*bfE5QX56n5g~%GOocy$0>#)ind%Je)qjieZJ;D*ERS2^1c60T-U)D- z$vp549kO{$j6}hDAtL2)l9p#DaVe9JfD`tBhhL|jGlRKEKx{t4C={CMxX zxal#=uRJG#V*BmDI#t~qm!C(BPc4liB~@6QtG)6S!&;|0QpQkh{ODcpAHPSv)IZmP z^yzIh71B;-qR$WFK=S-rvSX@fi4LJIwuUmmsl-`=WvBn>o=|nJ^Fv6Q+c=bTPUXgg zy9l}~o#fe4bJQm`bguncNSY-b)Qjs;b}h=SE0C+`^FFK!3CPaY+uhO5ice9MIkUXuwl1P?zSN(R)qX9sx@3|Y z#8c8ADW;FP3d|BzTd2?=c=;k)N6MrpEvQq6-%eGF#8$GEw6Wq5$2w(?lJ zvOeGFO$&k}<7{OtT79rZZ*rO)L|(!&7hj@Ox_M@BirjOA z-8zF`CnOpSDhiJ!eo&#i4N$UjHgGqT6a5CfVIIRh6n%+Yr(AFlH0$fNt4*gfMRxJ! z6NpexYdBh-Hmg}}|4|@K0ks-P5YB_*xW+t2D ziNDaa=E9WiSF|c{5~~*vE08E}IYV6i*iE^o=%{=_E;wNB2_bLSdm}^M(nUSh&9cY) zpqzdvkSSgrmGZ*{M>r}M_;OBqTn)F-W=tc_r|>YF;Kq(u4@`wJl!&||ZaM}5_B;tN z6*fIB2Q6@aCG`~;7qA->peNDJO+Q~({(I~}XgcWu1B{96iys5V1isER$gY(Avt51V zhWQ*!#`gjVZd$w<8}~GQdO9{B&Swv_YCgRkZaov_QvI|0)#7aE9KWL=A zBu&KX94P6D)0D-xwvS_)wzA2Tz6=v*(KIlbGF7oroZgy)R*JNMeEh*uy~>o0+T-Ow z52$GY<%=q~;PJnk0h7|EUv*0lM@|0i0Z7wNWK^~CF5{xKmo!4u*A?L?aXd6s6o@lEhC}|OXkSih zNEj4JcruH`XC@{+!gwttOk)rDBp!20g0dHv60krm)e@6rm%oYXkx(L zRT*(lnS75v%=Vu2rc|?n){peWSm7F9@Ef8JML?p48ll%A?}XYM!Rtchvkv-aL*d>` z*7U@yr1Y3pgNGc#3ZAi!T-_#*phB<_@H#{BMNsX8L4`cNhD0BETa8G@kmYStM1G$U z^dMPPF#hq*PPZIz(wBgWFoJKW+aR@u@vlDi`gs~|D_#5;6P^~xA1d+ zu4wV+{DAytg*B7G^l6a6;IMVXz)6K$1Rbr|-0PY{tb{~!Vr(1R+Uo?&?jc2+w>go8 zXifo}j9=K|0U|-&&c(*yoNg3C3FW+)j=|_k?dlty2~!ptphBbEveqg#uM3_?pcX4u z2<-;1W8^0lsB`MouxL7>Ba73}gs1FfxW^#(^#35dCtTc=GY(EX-VLSvPc5b3xAtAo zug(24wa|i?rS>mR%3GfYOkD+X!hW5vHeaY(#IyX-URAWOb}pCPEoTy>R@_t^_S(6P z01(;i_IWk9l>bKhys2p2s@Y!irw^f*TC_lL0IrEt3+3X{N<*aq;<_&k?Q$~)JX72c z2DRuA9wGd9l9B5%h0Sa#>qsUcwV%R#0xogwt6;24nMbxr7nc*~r|(D6VHZ-2`fH4@ zq*__xk&BnSA}K-75OZ$IQq{ZgeW{(!ue62PYlSE!wX*W_>1lcCu3acQ-*vN=&N%DB zQsf+iC7rV1H$^v%<~JWn1GiaUX2sKApVhO485p#6$HELR?ntNPhKRGUY7>_#(e()j zj6J9a+&BY$E58sx(CKE7qxs5|ppnd)3~MCP+I9%q#aUW;ZV;47IWA-6=D+flGTs`- z9T~70;b(Cq<3vqFzev(q3ZU$?%!EDk`$kFGH9TK2M+I^oSmzp}xl9upNdis(QR-EV z-fZhxL2ECWr)Liv7S{A$$nZmXMbf8ZUagSMLZ4Svr_-s;tekKEQ=N}g&WQcI|1R;r z$_Fvo-Ro1ehF)3Adjo2yF9pm@jedp$6YU%5b^;Dl5`Ib;Il~z_QMrkIXeR;n=Er{f zxBsnnUeK3e{sPR4*7KG3Q>6kxpA?NJUIP-`S+sByA&d>#4Hbr0%lZISM89zsfcoXD zYl8jI0h*!0+J&#Xu?Cw&FkY}KDhyMU4iA#S3=Liba9o43vF3#&Cy`;+=r>I)KtxkW zgk&BTRLE!C2t1_;DPISW`N?-9RMsKEq`@Y1>fw8_E2Bg(3$O_Wl+I^d1I(TZ`8df1 zi5Dy0fSYFt@uLMeYe0Sz@GTR;n86$9(AD#_)lk1EX=^8lifD0dB&;*k4+pTws5ME@ zT)_ctmNZ6%qMoPSNCpB5fliP~(PDAT`J9jr5=bH=G=v4{ZVE9BeG~+=ZZoODd3H); zwH3CUgE}xO3lLy)l7aGtD8}lBkJ9Ui&~C}~sB%#pC=ovJ4_5OJTj&em1s#9`ccUFq z*;&+b8{zjK#2Mj+O?2N8OrZhkAOn(3L(Zgbo+Mx3APV@E+p#MPL@;%55CT-~BJB_EANQ+@ZDMS1a)E+)UB$%}RMXqe{!0G_+;kLo3 zFiLdowj!_d2tRa4FyalR=sxefc?lqb45&~CVf`XJSHT)7$VZ|JDPsXLNILxB3I^lfaKr> zWS|&$K^J0eq~7@;?T7>&mQ+Cj;(__KA=YbvPJekvG^mcGBNmh&o$vjo4H5zU!Cr7c z1+W(a&^Ch9P3H87q*(;u57*29@MnTH)Iz!g3U3jC!C-7Sm?Rim17f`n@b{M|M}clj zlEXuj(VKHwfRv^X%h3O24T47i6cT{;|DnQIB*nmhX-_%wU5pznFa;7UM=}rt;>-edUk8l%$%|n^??N8M0TKX+ zwvqbCgY*kAL?QGM4IqIGd&3732tY6L)qCM!8ImvWq_IFNYaw_6g+VybUC9@C2t&wY zv2+bAQh0_3rU-sThi-;Ec1qVA#0rlQ!AvE^kfFVyk2rw$R=z($ME-K~2qpGX%vDEP znmqV0-&#oO3m8a9VnEW+^dFs_bwz@XYGM9iq+g6J^fOoo2}lRl(Sghxt7`@n>LC6f zY!!g2&O+4-kO3LQGsJ)ha)S@V(uHc7La;(tK0x9_voWFc=*^L2Fs*3_TgVD7q$Xs= zpm4!MPUR|M1sif2x&jX&4_#4wH_52nfmW~}>!B-%5HSMSLoI})2k?Z@ObK{G^n?ST zGDEM{0p-5(TakVhwoq2^6atVR;EoS;)P-jC0Ios};GojrDHPbJ z2!mBDz6l-}0@wr_`tGhurE7L$g(rw$G++}%=#XSLAw(G;NG245m=OMdVMA}uXMtJw0L~C$FOtR>P*2G~$-)J9 znaL|q$H)JLO#^actbP?(D30=fu&ER-c+0T8J2X6q8iFSgpg;pc)KNtE?$EHHhanxP z5dY8)wL+7>k;1DyFlEU=63A2NW305}R;=)QgN`Kw5h19dkMw{|4G7j6;LuM#kO&eL z`bYuT)P-Ofs~^6T_5nhPc*6*gfQOZ%Hy4t@0;VA&A&Ji8=@#;P%5@JD0TIFcNI+UJKMJrx+7TAn zvBU#(2e-fhmBB36GKu%{m=lK_(0|NI)Q~{@Ogg4+GK|l3fEZY%i)k zkH|)a27n3Sn*W0|5&&5Qpk!jjQ>gz-8$Qrp7n&1LXo3Zmlk7%;#D)6RNIRZJcFgj? zJSB~>p~sxcBB#>4(PXd6mHpFoa;Cun{V*td3_z?kgS)eVokg9;f z4Gid0h@S-D-9zR{J03^+RoOzZB-cMcqe32kN_USE-0+)15)p2=z)tWm9k6&UfWu9u zdz}Y{4gQA&OO;$N1+2CgZER!Q=!5^Ez}zMOrx!(U&Le~6<*S<_{V#6>K!05*jVYuK z{>BsB0}l_v-TF`=d*ez=fcW~gc{g! zGpn_RSi$^}iz?xh^X+@w-z#*rRgdE;Qv6)JpZXnguC^%8x8miXNH`mr=UY*GN7H{% zoxx&X-hSr2Zhybd*)#87x@JiZYRn6Amwr^(i|Jmv)=YX;7kMd0JEBZI^tYI6m3(At z*>3q{oLmu2lKj@|z zCiczmCy_O>|J<4xWry%mh7Qux%(z)_2d!YzKWyxx`2PMTKEdz#SlFdv{pQzhE=b*k zpA^qf6=vSTijRC;s+ltvv{VUx%j09lLeR^jXzM4Fmx_~@(p}(hT|{je>?+|#2H_G{ zQG7%f;1pN?8#bt7!j({$C8D{&bB&pfQ#P`w)WHv{pdZj88q`WPuT=i~Y=+KvDIZ^4wj@ zX&(oj)s3~4!&@(3pf`=BH??I|a(!oVz5iCq-7s$;M})nqDN(uq(9jWf-%(1S;JUEj zx}V^BxJw6?OGng}M~;$fM^M6C#HYxd7IkkEl)cH5?|UG6?vIwvyWJz z_fi5EB}xe?0zXnp#;5iT&GVcy{t3!d&~V=opL7!327bC-j|9FU@qKVoz-UKIXiV)u zE-2~gFW(YX8+6T=VtHWAwH3%c6dK3)SBTu--6YtC!?uUPr7}=8q_yZ37d`|v(J$+@ z%p&?U@f=@G-oWP0*w40swix0)KhyMmc;a6G^Of)!5plwJ;F=hM^Q_UvM|IH zVz*fQ|9;7hknm^$8 zKp?7ghaw?G@QSZ}AABu)&ZD(Gee|%!CH&uW3N}h_5l*;iaouBN4_1(}1j_r&YyWQL zHK{s@wqF!Ysdrmu_EJ6VkVh!FNNgta3_SbIsb9o)!^TzMu|nnhC1#aavT@@c_$EA$heK1DvDgZT;qdky{0A z?yyI2jjk{{i(pgx89?tZJ>`0_!A4)`lbvuECjeh?)U~@==NBf_5nnz53p2{&uF;{I zb;NTt6fE-UN)7$&3lHN%!lr}5gI$ISb<+FSz@JmTKUF>T%IT{$tMHF8U5P1NiT8XC za%f1Aj{{Q8@|-Peu8deLepM2!&FjD8E#@N4)k@i_(nK#ID>RV>A zW(gmwKoU37P>v?QPCn|rA+^Vy^$VWJ9{V-tIi|@T^OJ?)4iB2us+t3 zR`@l!5PQ_NTaTU%co*`Dij5fIzs4432~qZ|oaHZHJ6y{s71=x$>v3oLk&e;wuHhzPM#|{4#;#Hq6wR^PwX-2Vs^uTM%0j|21?vN_L zn@fIE|61cP@vQyz=7+VsVDk>dGAm$jzv+~*d>12M{rTPr@kViDA`?hKqWq<9h!>94 zZ1HCHYV*gG)GHCyo9_EU^M%4CvUQcO|{!wSgjKn}h zmBFFJ^bR-2BL0Uw7-*)45s9i~PJB8*Wkmdy^ZIfo*#T*A&}<1Qa?;EPAJg!?Y!^DJ zf<2gcPOJPt-iZ4Q0p$t}J+6zF;1HPqX^D!!oz2kZsfn%5bq`EfLreT&iu7< zt>r6o!*|6n{*M(^s})rv<+aI49cUVhO`3}!wZNbN;4O~EVuR*ltXiOyG)y45qb0Ay zD*z^pR5KvxrY+bm;8%^Vx2&-b~FXPelaGfAX}~=8!C6o z{Ua6>2OaZ*?cGCFa5W^tp(>}5U_0p-AU#gYNLerZQO@d74nv7EHIBn@SugRC;R-L? zuAKqhA6^;Qf*cgC!f>SANz*`LSbp}K&vgdm{Q@Zkhcmyh&Cm80TfO-E+`0m*3cv}E ziBR3Qn8?2pb4V{l9eNUqc8|`yGH-e4*Am}CUm4iuhV~7Q z90dzD+F-}{OknJ=$jg$CZK$`%r?Q$;6USZhgCeB64(y863UhvYA_2GR{3Ja;Cx1iF zC!cw8BeB-v({}P*O>bsTq_W|&VY8iK06NJaq>?KaNJ7iFOsqHwQim=O%aF&{Ll=n^ z!s9P^H!>wtK{34ZZJA|csZ5(~-w()`nto+UFOpO=&3-9f1$lIAj)LQddHn`5Kh7OB z#p^X0`>ba*C$1e6w_GBPjF(yNTaOyquHxtI@+=O`yBMEBjo+K#&S&Jk>axD8dB-^K za%st7W!3Mp%xQ#;nSn8Aj54_2@AANDM2#sx7MUX>18V2(&r~2HyJDJb%e5ia1%$fN zv2ha4YV5-P4(TrlS%7Mj_3nP^(+k@y|IOTY2j4aEtng5D>q^Ue(|9_Ic%I!u1C5NE z>+(9B17JaD6%5p#!6Ke-_fSM!4FNe=D6lvj>p9Ulxy?1zm5sFrpU@N~&J;C{BWkEF zYREZc$ocz_bJ&pXz>dJ+PHW#zmD$DW`(l0}Vs;^7enDg4v?eD&<~?^hEY`H37cPHm z!rO3HnA}Ynes#nyw3mcn1m@~BUx|rOLg#Pe$K8u?lEg5zR~xU zI6Rqaqa1G7hS^qBi4Qaa>8VGi_sLx$QA^_v>sY$TJ#To0PwV@SkJ?5C*Kei}M$RVt zE}bl7dm4$Q>r6sdz3u>JDRh+mcrfI@6piFa`=cc~MZJ{i2#&5e4nmLyQU!3+gLqr6 z*`k!qiMaFMRke^&eMzw|G3WX7ONWP@faanK3D-t^MT5*hqXRzz zkD3TSDWaYA{g~?ZnOkM`Cs0Bo%Xr&;EcZsUW42kV3f_*U8f$YIgpPL?k$6Xjc!!pF z#}b-W3}GthQxTU_dBEh`cZa4~LYPd!WdQ_YKWuhs#6_vsE{%4qER%O7jN$kd*}57P z(IPzS{hZO0$6(q8Z|}M3dJvCXlV0Iw@faH@)vY87M}x|yhR6Qi@bXt=!kF{%GlV^3 zl=GCN^0H5gRbSpegoA`{h+t4A;$uqSNJW}3-;lY_f_WPff0jk!*YeLxpZQ!>>X2vE zno$uo@n*}1>Sl%rIB;+eQ6dDRjFILK==t^uo42ebjnaj$+@J*oGPFLv*}qdQV!f5D z0(khkOwwT%QyxU_HhsAj8h(MIjo9Kgg;KW}Q)`WT0cR2QRW8W!;J2lD03&olI;JNZl) z{gO8w-+{oK+%qApPq+WUsaX8kYv~RuO6Mx`aL(VSF&|C;ub8tv1$vvpvHo0iKwc zMol_SS>_smCy$cDlqw;u|Ezv3Vfc-GQz`CYw<*lISo;~RBgeVCIRKTkEU)Q@greGI z`Ct84-tK{d!q$hzYw=ALg$MU*woRFl2NU73f^vxmjIW0r4Q|hLIx)S!E3aOv`GX_) z_EGgPUYYGjOl|WX$f_kIM&-{1mIYr4a|SkT=I*J}M>fqPo{hbPf)kA=H*Hz&QBS;r zzOPS8SlK@)oTvwBJ-AC$mOT5qmelCsif{F$%MEWWD*UU7<^{9R1{)J>WKViLRuiaB ziiZufO;QwY5^gH4Q1GA-mYE&<3P4S+oS@Pu2L#7ILLA>vV?6zlQyq*Y)by zRZg59cuCqBOnQFlUqVoF_jv>-xCAGNe(q=d9qTEwdgWW`cZRUNB?w=hRd7hC%G~4d zrWZ(Z+|pW~7i_Wif*C{4B2U zfufZnOg;i@%Q7PSftsDKBMdz*21A!V=YcJ1Yedd>Pj~@4#2R(YtACo&GLQF;%9gIx zs9q4gZi1<(U;GYv@%=enM?2xd$WA7gu+YND2E%Y71S%+0p;Qd(IVXyDWk^^#gQRnGnU)Uk@HJ5IK?} zeq(0X9|!de!dSniuh4SCp$LztZ<6-1v<3{MbCxt&`S>c|>b@zV%JK-aW)G$s{3$OY z2&6WcQ!BzEh-+b`Vz)SqzU8Xoy^|Ala4bpop_+Yh{6HCCl{0{M!h!lEp6H(IwUS(nz0~T-tB>JY2$iUKuyps!F}L^`+VUw(i+a^0 z_5|CoCA&lak*P=-f_^DR>Lf(yB!ulGM8Ow?0DP7OQqxnvrB*byeSeI@CuJ`CBbcm| zI;1s@Z&yh*8T#l^Q@AClrU;Qm|ez~XHS4~2y z$vwN7?t~3(bNq)>NbcfUZO-dhN8ZZ^Uj^@e=f`rRuotig&gsWb$x)oB!};S6P&Aq+ z3jG{0TC$`#sfW95`*hnDCLhgWo*2O^XM}9X8cQPe547j0>%&C9Xl?Zj${V!Bjox=X zY5GO~t#uuV?$e0PbVNqVZQ2G>MRL7fSQnejMyLR%yeX?2H+g=i@Ym}?50rQozjXNU7|1*GKG7~;k1nE?W%ZZ zZ<j0(sFP5^Wexd@laJ9|KneEOG%ugqa|64^sP`oH9c)j2VKe*5 z|Lm26oeW1QnxbA&@vJsMDMR~)rEm~;PUqE!z|~0|_QnWXYPV4vajjV2O(w@O>T;H| zm4-8VPRf=nW&hgT+HTuK{te}%KnW$n49e$`F+H8A$3gwpe*M-#eeXVf@7aePMIe<| zzj;9s_Kuz4F%MMvByvz(p?HWwYpvU5DbQu%kV&B{q<&DjNwVv!@=%ZgwMpn41-Nsl zs!6>oQvT7?&*)Q0-j0f&Ntaw*OzV-OYxD-u*&nV8_CPx9Ih>uqN4WsW@}ZCPzoM#h z@1wOpQZ{DqFxr0>H&^*pUfp~TY9=aZ+}I%|W9%^-9LhMcxFAseXxeDEW5}-=Fme!m zwoI@iXh;)eCJ>ExqIyAV$QEQ_Kg8h>E;!Z_W4g?B)_5Y+qS9i-B!10b3|E9WYpaV~ z(VOvd(VMpZZXjy!GH+aDhUEVNfVAb%K4LdpM-oc;Llo7ePXB2_`u`#QO|j`4A^m4|`p**5e~$Dw$9naj zNPo;upK#ur$@AW;V$;8Z^k3TPzf4H~RpKjiMM(d(o&M{D^xq);ZHe8+w|4q(6Vl5g z)yaw7#`ku&@qI%2<1)RB{1BhOy1+;-*C*vkX-=LsZ)=OHIvk)WST6+L;xo zvzbKw&5AU_tVEN|$~471m!_LlDa))zbItSUYO^}6Fl*3CvnJhP)}p)33uvQRo3@&D z=vlKa?J?`o%jSjjn%RKfHyhIb%tmzFY)n6z$@II~lunt=m@u2O3T6vd(`?BuFk7(( zW*gSTY|Gl47qK2@J2u2@&xV^F*f_HjyV&f^W|&>rWoB1)h1rc=Wp-yv&7SNAvlqM5 z?9J{s`>;pMzHE!xkL@%EuxHGHY`-~(y=4w&N6aDYOLLg2T^UqU)vhCvPVJ*e>}VwR zX(aYpBz7zk`!W*yIuiRf68k>fNftQ6i7C!-;(3(Y3Hw0fiG*_d(OGv5?>op7;Y(x7 z{aVQXTtvMfA9o_WBKyS=JE?k|5;eajs_69~w^$%?Z@foJd{FNz~oEnEIKQ&|ou##+y?p#Z09c=2Xft)8IqtwAjp` zrRFrc(VRi6%uKr1yp$d^XVN2P7VR)+(LOULW=L`(a%%DCVoJ7SzZH}H25+G=D1AR_ z*!`#7&Hm{&vv8S=$VItgdsbdt%4FoPfc%8Pzf42a0cSHGb}58iX2ULX=zMc7)idXz zZq29G<^t+yUP0Z=D`}9q5cTUSnrL2)`n3pkYjMmF_0LFqUL0P!n(gE={8m;fkWbm` zBd7l31=0<45fcAxo8<2V2mHrAx?TFttr~Qj%aF6>$l3MC*$v3q3TkZLh?e6fYGd9^ z9n4#(kGYD5nzzzu^ETw_j+h*siW~v@yBIT7nWH&z$Ao_dK9MUA3|JQ^!G zY%VXgL|5OKyjKep(fH&&THxPx1!Hx|Z&@rwBEz}niMj_vH-_GQpj*W2He+;KvAWBY zUa1zLl*wET6W;?9uYrm0rCR2FRNuUxnwe{1;&rH456}Q}Ju20MG|JqFiuDksn-9}W za}!-=Zl?L>BXpJdC|zehhQ@gd6`5OUz4HDYa1vvlX!K~3Qt``{cez&T!obG!uScp1*I zAI|X#oZ|qT<5f7vYjBR&;T#9y9B;xo-hy+yO$Fv5T426|p8H)|ZXSknyhpd2@6%fI z131VL+H8J=-uq+p-bd*L^AkE?eoBYT|G_yvqtDFG={xfndhRc%*!+?)^J`|9->@X} zTUO2dj@2^1XARBctflz_>u8=}-OV4_0P`m{#{4CE6<7;J9IAXVb+KcWim8Jgt5!@s zm21s&T+4Z7h1~-KpRX3dwe#Z*T+6ZC1@?|`LXoqn5U#DZfVKD|*jgQTH(|{nQ`eS> zKZvc>E5)^nAyeO$i9e35U090DOOR<`XDt3uwk?BmZ+PfG==V-j z7mKL3rO^N@Kx3>RU2N$z)iNmC;&hoMXs%_^6;>I#&I-{=t1R7am7}%RIkes?Pn)eI z+GoIgSm)AVs|tN!Ri#g@^XLn!I{jqTpg*jdj9KS1Zq;HHtqa(>R&7?( zs>|wF^;k2jK5J`T$U0dKSP!cq>t{7$qpZektd-0rTTR(is~O9-nzKTy1zTXXWQ(m< zY`N8%t+d*(yRD0&H>0%ki>bElxwVm5J61Oms~?Fqh@@*29>HkI;kPa3J3YFy9V_SS zS~Imzq&15#mF7-)v~cf^TH4)F{GoTPRZL;Fj%{(;l-}a>r3yq=N8(mz3RzvKs@0Wh zS>33i)t%Z{J*b`4le${Hsh8De%d`UA1@oywmh6(H6*Aisx$NEf9e zoX}PxyOpj*G!#m@4y|FtDe1~(qxBkEgU4y? z?P%=dT=x}H1CQ1q4nRXcwSTVl8(KreY3MI(4FjC(f#ns1h*7Z=DhAoj&Y+<+%E#wx zu#$n2Anz2H|1lp!~cSoQMQ&*&=Q}Y z(dC^Cjd5;_EpI98<=Ga>1Kuai2%UmS{E%Tfk^UIf2 zT0${exGWjnN{9 z)r)K`i(Ir^<7m+qJ2$R%)q*Lzw#3%5#6`=}u$E=cjq6;sG=P@nMbsBsmP1RqXf2UW z@cMxK#&4t(yur~_E?QIIV`y5Tmd>>m&~#3;ri$8)j_ggUH81(IEqgy?SK6{G6J>99 zWN&em&4BDG^|raTDqa>s@_5j_GIE0~< z-Ro$I+Q5iYPz?(1vr+DIQE-2>0$i`v<+t?QG_ixww9f9+*STnVz}8ezTkqU>P#v9% zQ?eXNHrPrwxG32eR`QT@<6$=?eV}BMUBa7Olxz+wxzQyTCS)J6Wgl^oeKah4bE2&L zBA51LT+vWLC$^NdMoa)~U2@E;3K-q<`W?T0vxc z5hX)pd%TE!lrL5yGFA+(WeqV_oQy$k3I@4TFvv}%+SXKRV5LzDE1f!98Pv_1Mt!Xr zG|0-N@z$l7u*}2&Hwy#YS#-6PO^dA@y571B6P7%>$I7P%tpa+)Dx@9OY)n?>&`Z`_ zI%LhmWMw{mY+X*DSy#{r>q<;i7Sd_!DkiL}S!HVxt7=`tYFXE^de#!w(pt(oTFWp= zxsDC8mb3BJ^=y)L112apvgy`Mn4qj=3$2^k66+RBPFArs)~)P*>o&I0x`RDp-N~M| zir9<8;U_KS7D#;mnk8Ec)EWIdqOu-0phtp~NH)&{MO z^^n%VdRXgcZPG?qo3-)QBidB!Q7zYcOv|^nX!EVdwT0F;ZH4uOc89fHTVw6eHd;Hi z9oCcDE^C*z$9h_O(RxNZWId~WZ0**LSwyv08-Wz-U?9_aGmvY&6_{_m9av@^3S4i!6S&1X z9Js@JFRbmz(R3%EfgqPwAhzo zg(BtuW@m1byWRfy^R&;-z0YSd^V(!GNhWtFIPX#7{EIrAFR0Vype~n}x?KkKxH8ZP zS8f{V%1cwZ3RBrtoO)efP{mc9`dsy>>S{(cS7)lbx>4rpOQT$a=tr&zG_`9cP2*ZX z)4EpBbgs=b+O?IYckQ7WTnA~4>m1GKxcK;Xl zxu??v_X1kny@Hl-Z>FERx6+dCJ+zejAT8}aN6WY`)3WY6w4D1n{oMVMmUsV46Fm<4 zg-4?mJ!xnqPX=1q6Gy9f^3bZD;`B>TNm|YGIsMvGkyiKAp*1{BXiZNmTFcXk*7o$E zbv(mpUC&5b&ohBG@JylKcoxxyo>jDwXFYA~*-XFn9H31+hiOyKDcam~j<)dJq%A#< zXe-Y%`km)3Z5<)eHW4aq8^LJ1h;+0=L=5d1k%xAQC_+0&l%!oED$uSGHEFkqI<$L4 zBib{f8SNF(nf8w8OZ!9&p?xF9(tZ)MX#a@0bU?%sIw)c}9US4OLn3z5p%I7Zu!!I2 z@Q90aM8tJED&jUB9r28giFilHMmp)ZNS%(4jG_}F)6+?jv2=1|Uiy7xQ932EJe?Z( z1)UaIjn0UyNoPhjrL!X2(%F%{>72-ZbZ+EOIzMt0T@X2)E{vQ{7e%h7izC<4C6Rvm zW8^lvH1Y^t7I~U3kGw_$d)JYE&?#^MU4(D;g{6eoke!!GzJ^bDsqAaW%1aga18-?P zQYFq|>C0fLdazVGSgIc^H42uR21_l2r8dD*hhV8ou+$@1>Juyt2$lv1OT&Yu(R|Y~ zERA~&8F*=8u=G8@fsLhULD@`x%Nt9xgLUU|yI^TSP_~#q1&pPo!P3g$QC0^_KfQ*J zcxhd*^z&I9e!zZvQ+^GAist4Ay0Nm zzaYOg884keoS0(KXTa6BEOIG`$G8rp>GzLi!KK^AF}hL6teT=QnD8LL!3Vp!XFOh2O@uj^G8DXqoI5? zY?~@ty z0a-{NlGXGPSxf&%{PZufjXoiV=u>i8APA#31(@5v#bkb!xTKZE?FFlbzmfp!3 z93aOyJaVioyWT{{hA#)+8jvohT!lB+5R>Q6 z9i*>t`pSpjJK2o%RZd?`dF);xw0WU6`xlx;r!(vY>H4LE{!d;}%8Z7K0c$0dmR3Azm&4pU5R4LH-QN%cY=-TpH@iWuSpv z7MjYRLo2yFbd@VWA2|_5$X~!{xgt!GE5kIo3M`VV!gBdb*eF+n&GJ{UQ?3sCxXzexT`=LgV#0O9Sn7@m*Ao-27baY9Ot?On zaD6f1`eDKiz=Ru!2{#B6ZZIa?5KOqCm~g`};YMJ>jl_f-g$Xwr6K)J9+&E0Q@tANE zFySU*!cD@2n~VuJ1ru&6CfqbkxapX1Gl(J2B+>G0l2M*Ra?5i`L3tkeOrB55$P369 z@*+}IUQFuAOUSqK52T&^Bk3qFB|YTjq_4b!jFeZB3Gym3TV74($!o|D@>;S&UPm^` z>&bTcXL4BHK#s{9$*;1XT#z@DTk;n2K>mfil(z+PrUPUQB>J6T0^bdm?gdK^f~7~n z(&J$1NwD-RSb7mGy$qKA;X}h<=MXV8bi=eXzf@6(e^?@~`C*AFV%?ERZvyL=f%VYb z8(^s)vWvaJ11pg!b{Cd+qf7UqOZR~;?}xPV0d(s@h?5WDiRv&El#d3~bpR3Iwq= z99v^y?*;agA4&$XwH#X;#2g^7b$-Z}(j@&M22FAjO>!Ddat2NEE1Kjip104TNzP-W zUqqAq4#nh4P)fcGiSiYwDqn+|@*hx7z5$Kpo6u6e1s&wu&`rJzedT*FNWPCz{{Y6z z4>95&!5sN9ES8_ZGWjX2k)L7YKZot|3)m~a44B#juDERYFJSIr!sAKij^iJM@R=Wk zsDjE6uH^EtcCH$)frfKg1_Rb&_nWAIb|E{ zK=-DGwB9u6nzRt-O@{`HhJxPoP~7`5l=fzTFT64El{X{Q_GW^H-Yn46n-#wEW`mC2 zIOy)p4*k73V5m1IjP>S%Dc;;L%Nq|1z4_orZ+=+iEdW1z3&Iv}A=vHx1P*!&!%1%u zIPWbASG)cI zVrf*d460ZbV!h>1#qvo*3y*_QVS?{)nBY6&huj|yzKR%pl`;6LVDME%TUHAne4|C9 z`$eNI`8OMKncr-%bc_%>9yfKw-xKzTI2m}r22NUdq`*%J{IvKz6DA7EfQr4XfhMYj zCaR4ls)Ht~izccEIlT2DulE}$>}`Zm&={lOTS)Xafok5SP{-R08he{V3vbJ$B+gqn zpwbwTPrHRm;$sVC&5tcueN2@sYR_6x8_&P2&3=a zF#6)B{ zK@*KXK_>(Ufu|gMYGJy-p84VHAoiSN&n=7z?1dj{1+l+5_P2#4Y5dX;HB#ytcyGmf z8+E;ly8el}-a}pQqq!fTu8$zz`xtfo3yOK4Kq>E29J`<4kn#d*dS604?<*Wq{(+X> z*U-WH2D*9QL0|8C7^DDM@FCCv)I7arRv%vGO%pTP9kE34

E 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

A?=)+$m; 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 diff --git a/cc-parser/concurrentC.cf b/cc-parser/concurrentC.cf index 53ab9607..0c6cf277 100644 --- a/cc-parser/concurrentC.cf +++ b/cc-parser/concurrentC.cf @@ -304,8 +304,8 @@ token OctalLong '0'["01234567"]* ('l'|'L'); token OctalUnsLong '0'["01234567"]* (('u''l')|('U''L')); -token CDouble (((digit+ '.')|('.' digit+))(('e'|'E') ('-')? digit+)?)| - (digit+ ('e'|'E') ('-')? digit+)|(digit+ '.' digit+ 'E' ('-')? digit+); +token CDouble (((digit+ '.' digit+)|(digit+ '.')|('.' digit+))(('e'|'E')('-')? digit+)? + )|((digit+ ('e'|'E')('-')? digit+)); token CFloat (((digit+ '.' digit+)|(digit+ '.')|('.' digit+))(('e'|'E')('-')? digit+)? ('f'|'F'))|((digit+ ('e'|'E')('-')? digit+)('f'|'F')); diff --git a/regression-tests/double/add_1.c b/regression-tests/double/add_1.c index 0774d483..e48c3d2e 100644 --- a/regression-tests/double/add_1.c +++ b/regression-tests/double/add_1.c @@ -1,8 +1,6 @@ - int main () { - double a = 1e2; - double b = 2e3; - - assert(a+b == 3.0); - return 0; + double a = 1.0; + double b = 2.0; + assert(a+b == 3.0); + return 0; } diff --git a/regression-tests/long_double/add_1.c b/regression-tests/long_double/add_1.c index a0630afa..aa9e6473 100644 --- a/regression-tests/long_double/add_1.c +++ b/regression-tests/long_double/add_1.c @@ -1,8 +1,8 @@ int main () { - long double a = 1.0l; - long double b = 1.0l; + long double a = 0.5l; + long double b = 0.25l; - assert(a+b == 2.0l); + assert(a+b == 0.75l); return 0; } diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 5bc726fb..9f3c9b19 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -263,7 +263,7 @@ object CCReader { ("0", "0") } else if (f.isInfinity) { - ("0", "0") + ("1", "0") } else { val mantissaBits: Long = (java.lang.Double.doubleToLongBits(f) << 12 >>> 12) @@ -2275,7 +2275,7 @@ class CCReader private (prog : Program, typ = CCFloat case _: Tdouble => typ = CCDouble - case _: Tlong if typ == CCDouble => + case _: Tdouble if typ == CCLong => typ = CCLongDouble case _ : Tsigned => typ = CCInt diff --git a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala index fb649741..44d3a0fe 100644 --- a/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala +++ b/src/tricera/concurrency/ccreader/CCBinaryExpressions.scala @@ -57,9 +57,13 @@ object CCBinaryExpressions { def expr: CCExpr = { (lhs.typ, rhs.typ) match { - case (CCFloat, _) => toCCExpr(getFloatRes) - case (_, CCFloat) => toCCExpr(getFloatRes) - case _ => toCCExpr(getIntRes) + case (CCFloat, _) => toCCExpr(getFloatRes) + case (_, CCFloat) => toCCExpr(getFloatRes) + case (CCDouble, _) => toCCExpr(getDoubleRes) + case (_, CCDouble) => toCCExpr(getDoubleRes) + case (CCLongDouble, _) => toCCExpr(getLongDoubleRes) + case (_, CCLongDouble) => toCCExpr(getLongDoubleRes) + case _ => toCCExpr(getIntRes) } } From 7c873fc619017676a0528cc8a7c885acd13bc62b Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Tue, 9 May 2023 14:23:10 +0200 Subject: [PATCH 20/28] Long doubles are now correcty parsed --- src/tricera/concurrency/CCReader.scala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 9f3c9b19..9df5d1cf 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -2273,10 +2273,10 @@ class CCReader private (prog : Program, // ignore case _ : Tfloat => typ = CCFloat - case _: Tdouble => - typ = CCDouble case _: Tdouble if typ == CCLong => typ = CCLongDouble + case _: Tdouble => + typ = CCDouble case _ : Tsigned => typ = CCInt case _ : Tunsigned => From 18e79b560b6934c78c9c93cdc4742b1828494ca7 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Thu, 11 May 2023 12:40:42 +0200 Subject: [PATCH 21/28] added some more tests --- regression-tests/double/Answers | 42 +++++++++++++++++++ regression-tests/double/add_1.c | 6 +-- regression-tests/double/add_2.c | 6 +++ regression-tests/double/add_3.c | 5 +++ regression-tests/double/div_1.c | 6 +++ regression-tests/double/div_2.c | 6 +++ regression-tests/double/init_1.c | 6 +++ regression-tests/double/init_2.c | 5 +++ regression-tests/double/init_3.c | 6 +++ regression-tests/double/int_plus_float.c | 7 ++++ regression-tests/double/leq_1.c | 5 +++ regression-tests/double/loop_1.c | 13 ++++++ regression-tests/double/loop_2.c | 13 ++++++ regression-tests/double/mul_1.c | 6 +++ regression-tests/double/mul_2.c | 6 +++ regression-tests/double/{nan_1.c => nan.c} | 0 regression-tests/double/nan_create.c | 4 ++ regression-tests/double/nan_range.c | 5 +-- regression-tests/double/nondet_1.c | 6 +++ regression-tests/double/nondet_2.c | 5 +++ regression-tests/double/runtests | 25 +++++++++++ regression-tests/double/sub_1.c | 6 ++- regression-tests/double/sub_2.c | 6 +++ regression-tests/float/loop_1.c | 13 ++++++ regression-tests/float/loop_2.c | 13 ++++++ regression-tests/float/nondet_1.c | 5 +++ regression-tests/float/nondet_2.c | 5 +++ regression-tests/float/runtests | 16 ++++--- regression-tests/long_double/Answers | 42 +++++++++++++++++++ regression-tests/long_double/add_1.c | 10 ++--- regression-tests/long_double/add_2.c | 6 +++ regression-tests/long_double/add_3.c | 5 +++ regression-tests/long_double/div_1.c | 6 +++ regression-tests/long_double/div_2.c | 6 +++ regression-tests/long_double/init_1.c | 6 +++ regression-tests/long_double/init_2.c | 5 +++ regression-tests/long_double/init_3.c | 6 +++ regression-tests/long_double/int_plus_float.c | 7 ++++ regression-tests/long_double/leq_1.c | 5 +++ regression-tests/long_double/loop_1.c | 13 ++++++ regression-tests/long_double/loop_2.c | 13 ++++++ regression-tests/long_double/mul_1.c | 6 +++ regression-tests/long_double/mul_2.c | 6 +++ .../long_double/{nan_1.c => nan.c} | 2 +- regression-tests/long_double/nan_create.c | 4 ++ regression-tests/long_double/nan_range.c | 5 ++- regression-tests/long_double/nondet_1.c | 6 +++ regression-tests/long_double/nondet_2.c | 5 +++ regression-tests/long_double/runtests | 25 +++++++++++ regression-tests/long_double/sub_1.c | 7 ++++ regression-tests/long_double/sub_2.c | 6 +++ src/tricera/concurrency/CCReader.scala | 2 + 52 files changed, 428 insertions(+), 23 deletions(-) create mode 100644 regression-tests/double/Answers create mode 100644 regression-tests/double/add_2.c create mode 100644 regression-tests/double/add_3.c create mode 100644 regression-tests/double/div_1.c create mode 100644 regression-tests/double/div_2.c create mode 100644 regression-tests/double/init_1.c create mode 100644 regression-tests/double/init_2.c create mode 100644 regression-tests/double/init_3.c create mode 100644 regression-tests/double/int_plus_float.c create mode 100644 regression-tests/double/leq_1.c create mode 100644 regression-tests/double/loop_1.c create mode 100644 regression-tests/double/loop_2.c create mode 100644 regression-tests/double/mul_1.c create mode 100644 regression-tests/double/mul_2.c rename regression-tests/double/{nan_1.c => nan.c} (100%) create mode 100644 regression-tests/double/nan_create.c create mode 100644 regression-tests/double/nondet_1.c create mode 100644 regression-tests/double/nondet_2.c create mode 100755 regression-tests/double/runtests create mode 100644 regression-tests/double/sub_2.c create mode 100644 regression-tests/float/loop_1.c create mode 100644 regression-tests/float/loop_2.c create mode 100644 regression-tests/float/nondet_1.c create mode 100644 regression-tests/float/nondet_2.c create mode 100644 regression-tests/long_double/Answers create mode 100644 regression-tests/long_double/add_2.c create mode 100644 regression-tests/long_double/add_3.c create mode 100644 regression-tests/long_double/div_1.c create mode 100644 regression-tests/long_double/div_2.c create mode 100644 regression-tests/long_double/init_1.c create mode 100644 regression-tests/long_double/init_2.c create mode 100644 regression-tests/long_double/init_3.c create mode 100644 regression-tests/long_double/int_plus_float.c create mode 100644 regression-tests/long_double/leq_1.c create mode 100644 regression-tests/long_double/loop_1.c create mode 100644 regression-tests/long_double/loop_2.c create mode 100644 regression-tests/long_double/mul_1.c create mode 100644 regression-tests/long_double/mul_2.c rename regression-tests/long_double/{nan_1.c => nan.c} (73%) create mode 100644 regression-tests/long_double/nan_create.c create mode 100644 regression-tests/long_double/nondet_1.c create mode 100644 regression-tests/long_double/nondet_2.c create mode 100755 regression-tests/long_double/runtests create mode 100644 regression-tests/long_double/sub_1.c create mode 100644 regression-tests/long_double/sub_2.c diff --git a/regression-tests/double/Answers b/regression-tests/double/Answers new file mode 100644 index 00000000..0a38d072 --- /dev/null +++ b/regression-tests/double/Answers @@ -0,0 +1,42 @@ + +regression-tests/double/add_1.c +SAFE + +regression-tests/double/add_2.c +SAFE + +regression-tests/double/div_1.c +SAFE + +regression-tests/double/div_2.c +SAFE + +regression-tests/double/mul_1.c +SAFE + +regression-tests/double/mul_2.c +SAFE + +regression-tests/double/nan.c +UNSAFE + +regression-tests/double/nan_range.c +SAFE + +regression-tests/double/sub_1.c +SAFE + +regression-tests/double/sub_2.c +SAFE + +regression-tests/double/int_plus_double.c +SAFE + +regression-tests/double/init_1.c +SAFE + +regression-tests/double/init_2.c +SAFE + +regression-tests/double/init_3.c +UNSAFE diff --git a/regression-tests/double/add_1.c b/regression-tests/double/add_1.c index e48c3d2e..b7cf7a28 100644 --- a/regression-tests/double/add_1.c +++ b/regression-tests/double/add_1.c @@ -1,6 +1,6 @@ int main () { - double a = 1.0; - double b = 2.0; - assert(a+b == 3.0); + double a = 4.0f; + double b = 2.0f; + assert(a+b== 6.0f); return 0; } diff --git a/regression-tests/double/add_2.c b/regression-tests/double/add_2.c new file mode 100644 index 00000000..34c3dfba --- /dev/null +++ b/regression-tests/double/add_2.c @@ -0,0 +1,6 @@ +int main() { + double a = 3.0f; + double b = 0.5f; + assert(a+b == 3.5f); + return 0; +} diff --git a/regression-tests/double/add_3.c b/regression-tests/double/add_3.c new file mode 100644 index 00000000..d4aac078 --- /dev/null +++ b/regression-tests/double/add_3.c @@ -0,0 +1,5 @@ +int main() { + double a = 2.0f; + double b = a + 0.5f; + assert(a + 0.4f == b); +} diff --git a/regression-tests/double/div_1.c b/regression-tests/double/div_1.c new file mode 100644 index 00000000..ce5def7a --- /dev/null +++ b/regression-tests/double/div_1.c @@ -0,0 +1,6 @@ +int main () { + double a = 4.0f; + double b = 2.0f; + assert(a/b== 2.0f); + return 0; +} diff --git a/regression-tests/double/div_2.c b/regression-tests/double/div_2.c new file mode 100644 index 00000000..1a70c081 --- /dev/null +++ b/regression-tests/double/div_2.c @@ -0,0 +1,6 @@ +int main () { + double a = 4.0f; + double b = 0.5f; + assert(a/b== 8.0f); + return 0; +} diff --git a/regression-tests/double/init_1.c b/regression-tests/double/init_1.c new file mode 100644 index 00000000..e5e14412 --- /dev/null +++ b/regression-tests/double/init_1.c @@ -0,0 +1,6 @@ +int main() { + double a = 0.0f; + assert(a == 0.0f); + return 0; + +} diff --git a/regression-tests/double/init_2.c b/regression-tests/double/init_2.c new file mode 100644 index 00000000..02c6c43b --- /dev/null +++ b/regression-tests/double/init_2.c @@ -0,0 +1,5 @@ +int main() { + double a = 4.24242f; + assert(a == 4.24242f); + return 0; +} diff --git a/regression-tests/double/init_3.c b/regression-tests/double/init_3.c new file mode 100644 index 00000000..c19d2829 --- /dev/null +++ b/regression-tests/double/init_3.c @@ -0,0 +1,6 @@ +int main() { + double a = 4.24242f; + assert(a == 4.24241f); + return 0; + +} diff --git a/regression-tests/double/int_plus_float.c b/regression-tests/double/int_plus_float.c new file mode 100644 index 00000000..c0c55caa --- /dev/null +++ b/regression-tests/double/int_plus_float.c @@ -0,0 +1,7 @@ +int main () +{ + double a = 2.0f; + int b = 1; + assert(a+b == 3.0f); + return 0; +} diff --git a/regression-tests/double/leq_1.c b/regression-tests/double/leq_1.c new file mode 100644 index 00000000..ae31e084 --- /dev/null +++ b/regression-tests/double/leq_1.c @@ -0,0 +1,5 @@ +int main() { + double a = 2.3f; + double b = 2.25f;; + assert(b <= a); +} diff --git a/regression-tests/double/loop_1.c b/regression-tests/double/loop_1.c new file mode 100644 index 00000000..528a140c --- /dev/null +++ b/regression-tests/double/loop_1.c @@ -0,0 +1,13 @@ +int N = _; + +void main(void) { + int i = 0; + double x = 0.5; + double y = x; + while (i < N) { + x = x*2.0f; + y = x; + ++i; + } + assert(x==y); +} diff --git a/regression-tests/double/loop_2.c b/regression-tests/double/loop_2.c new file mode 100644 index 00000000..df7431dd --- /dev/null +++ b/regression-tests/double/loop_2.c @@ -0,0 +1,13 @@ +int N = _; + +void main(void) { + int i = 0; + double x = 0.5; + double y = x; + while (i < N) { + x = x*2.0f; + y = x; + ++i; + } + assert(x==y+1.0f); +} diff --git a/regression-tests/double/mul_1.c b/regression-tests/double/mul_1.c new file mode 100644 index 00000000..147f78cb --- /dev/null +++ b/regression-tests/double/mul_1.c @@ -0,0 +1,6 @@ +int main () { + double a = 4.0f; + double b = 2.0f; + assert(a*b== 8.0f); + return 0; +} diff --git a/regression-tests/double/mul_2.c b/regression-tests/double/mul_2.c new file mode 100644 index 00000000..bd545b5f --- /dev/null +++ b/regression-tests/double/mul_2.c @@ -0,0 +1,6 @@ +int main () { + double a = 4.0f; + double b = 0.5f; + assert(a*b== 2.0f); + return 0; +} diff --git a/regression-tests/double/nan_1.c b/regression-tests/double/nan.c similarity index 100% rename from regression-tests/double/nan_1.c rename to regression-tests/double/nan.c diff --git a/regression-tests/double/nan_create.c b/regression-tests/double/nan_create.c new file mode 100644 index 00000000..9440e44b --- /dev/null +++ b/regression-tests/double/nan_create.c @@ -0,0 +1,4 @@ +int main() { + double nan = 0/0; + assert(nan == 2); +} diff --git a/regression-tests/double/nan_range.c b/regression-tests/double/nan_range.c index 94d5200c..73184580 100644 --- a/regression-tests/double/nan_range.c +++ b/regression-tests/double/nan_range.c @@ -1,9 +1,8 @@ - int main() { - float x = _; + double x = _; - if (x >= -1e10 && x <= 1e10) { + if (x >= -0.00001f && x <= -0.00001f) { assert(x==x); } return 0; diff --git a/regression-tests/double/nondet_1.c b/regression-tests/double/nondet_1.c new file mode 100644 index 00000000..f67c1467 --- /dev/null +++ b/regression-tests/double/nondet_1.c @@ -0,0 +1,6 @@ +int main() { + double x = _; + double y = x + 1.0f; + assert(y>x); + +} diff --git a/regression-tests/double/nondet_2.c b/regression-tests/double/nondet_2.c new file mode 100644 index 00000000..5a0bc893 --- /dev/null +++ b/regression-tests/double/nondet_2.c @@ -0,0 +1,5 @@ +int main() { + double x = _; + double y = x + 1.0f; + assert(y&1 | grep -v 'at ' +done + diff --git a/regression-tests/double/sub_1.c b/regression-tests/double/sub_1.c index 58df8dcd..b72ece0a 100644 --- a/regression-tests/double/sub_1.c +++ b/regression-tests/double/sub_1.c @@ -1,5 +1,7 @@ int main() { + double a = 4.0f; + double b = 2.0f; + assert(a-b== 2.0f); + return 0; - - } diff --git a/regression-tests/double/sub_2.c b/regression-tests/double/sub_2.c new file mode 100644 index 00000000..ea0d86fc --- /dev/null +++ b/regression-tests/double/sub_2.c @@ -0,0 +1,6 @@ +int main() { + double a = 3.0f; + double b = 0.5f; + assert(a-b == 2.5f); + return 0; +} diff --git a/regression-tests/float/loop_1.c b/regression-tests/float/loop_1.c new file mode 100644 index 00000000..4f06ced2 --- /dev/null +++ b/regression-tests/float/loop_1.c @@ -0,0 +1,13 @@ +int N = _; + +void main(void) { + int i = 0; + float x = 0.5; + float y = x; + while (i < N) { + x = x*2.0f; + y = x; + ++i; + } + assert(x==y+1.0f); +} diff --git a/regression-tests/float/loop_2.c b/regression-tests/float/loop_2.c new file mode 100644 index 00000000..4f06ced2 --- /dev/null +++ b/regression-tests/float/loop_2.c @@ -0,0 +1,13 @@ +int N = _; + +void main(void) { + int i = 0; + float x = 0.5; + float y = x; + while (i < N) { + x = x*2.0f; + y = x; + ++i; + } + assert(x==y+1.0f); +} diff --git a/regression-tests/float/nondet_1.c b/regression-tests/float/nondet_1.c new file mode 100644 index 00000000..19a60425 --- /dev/null +++ b/regression-tests/float/nondet_1.c @@ -0,0 +1,5 @@ +int main() { + float x = _; + float y = x + 1.0f; + assert(y>x); +} diff --git a/regression-tests/float/nondet_2.c b/regression-tests/float/nondet_2.c new file mode 100644 index 00000000..6ee31b80 --- /dev/null +++ b/regression-tests/float/nondet_2.c @@ -0,0 +1,5 @@ +int main() { + float x = _; + float y = x + 1.0f; + assert(y= -1e10 && x <= 1e10) { + if (x >= -0.00001f && x <= -0.00001f) { assert(x==x); } return 0; } + diff --git a/regression-tests/long_double/nondet_1.c b/regression-tests/long_double/nondet_1.c new file mode 100644 index 00000000..f67c1467 --- /dev/null +++ b/regression-tests/long_double/nondet_1.c @@ -0,0 +1,6 @@ +int main() { + double x = _; + double y = x + 1.0f; + assert(y>x); + +} diff --git a/regression-tests/long_double/nondet_2.c b/regression-tests/long_double/nondet_2.c new file mode 100644 index 00000000..5a0bc893 --- /dev/null +++ b/regression-tests/long_double/nondet_2.c @@ -0,0 +1,5 @@ +int main() { + double x = _; + double y = x + 1.0f; + assert(y&1 | grep -v 'at ' +done + diff --git a/regression-tests/long_double/sub_1.c b/regression-tests/long_double/sub_1.c new file mode 100644 index 00000000..b72ece0a --- /dev/null +++ b/regression-tests/long_double/sub_1.c @@ -0,0 +1,7 @@ +int main() { + double a = 4.0f; + double b = 2.0f; + assert(a-b== 2.0f); + return 0; + +} diff --git a/regression-tests/long_double/sub_2.c b/regression-tests/long_double/sub_2.c new file mode 100644 index 00000000..ea0d86fc --- /dev/null +++ b/regression-tests/long_double/sub_2.c @@ -0,0 +1,6 @@ +int main() { + double a = 3.0f; + double b = 0.5f; + assert(a-b == 2.5f); + return 0; +} diff --git a/src/tricera/concurrency/CCReader.scala b/src/tricera/concurrency/CCReader.scala index 9df5d1cf..7135c7ce 100644 --- a/src/tricera/concurrency/CCReader.scala +++ b/src/tricera/concurrency/CCReader.scala @@ -155,8 +155,10 @@ object CCReader { import scala.util.control._ import scala.math._ + // todo: uses the same implementation as Doubles right now def longDoubleToFraction(fp: String): (String, String) = { val f: Double = fp.toDouble + println("Warning: wrong implementation for converting Long Doubles to Doubles") if (f.isNaN) { ("0", "0") } From 3809d87a888bdf257862390c762059556c11fbc8 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Tue, 23 May 2023 15:46:15 +0200 Subject: [PATCH 22/28] added more tests --- .attach_pid42527 | 0 .attach_pid67407 | 0 regression-tests/double/div_3.c | 7 + regression-tests/float/a.out | Bin 0 -> 17296 bytes .../float/simple_bsed_orig_code.c | 87 +++++++++++++ regression-tests/float/simple_bsed_test.c | 122 ++++++++++++++++++ regression-tests/float/simple_bsed_tricera.c | 122 ++++++++++++++++++ 7 files changed, 338 insertions(+) create mode 100644 .attach_pid42527 create mode 100644 .attach_pid67407 create mode 100644 regression-tests/double/div_3.c create mode 100755 regression-tests/float/a.out create mode 100644 regression-tests/float/simple_bsed_orig_code.c create mode 100644 regression-tests/float/simple_bsed_test.c create mode 100644 regression-tests/float/simple_bsed_tricera.c diff --git a/.attach_pid42527 b/.attach_pid42527 new file mode 100644 index 00000000..e69de29b diff --git a/.attach_pid67407 b/.attach_pid67407 new file mode 100644 index 00000000..e69de29b diff --git a/regression-tests/double/div_3.c b/regression-tests/double/div_3.c new file mode 100644 index 00000000..643da91d --- /dev/null +++ b/regression-tests/double/div_3.c @@ -0,0 +1,7 @@ +//SAFE (WILL BE UNSAFE DUE TO APPROXIMATIONS FROM FRACTION) +int main () { + double a = 4.0; + double b = 0.1; + assert(a/b== 40.0); + return 0; +} diff --git a/regression-tests/float/a.out b/regression-tests/float/a.out new file mode 100755 index 0000000000000000000000000000000000000000..91899d269bdda2039a568abaebe6703d70cfc3b3 GIT binary patch literal 17296 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 batt_max_output) { + batt_max_output = return_modMax; + } else { + batt_max_output = batt_max_output; + } + + //Update the min value + if (return_modMin < batt_min_output) { + batt_min_output = return_modMin; + } else { + batt_min_output = batt_min_output; + } +} + +/*@ + assigns return_modMax, return_modMin, return_modStatus, batt_min_output, + batt_max_output, batt_status_output; + ensures + ((\old(mod0_status) == 0 && \old(mod1_status) == 0) ==> batt_status_output == 0) && + ((\old(mod0_status) == 1 || \old(mod1_status) == 1) ==> batt_status_output == 1); +*/ +void batteryDiag(int dummy) +{ + //Initializing the battery values + batt_max_output = -2147483648; + batt_min_output = 2147483647; + batt_status_output = 0; + + //Run the diagnostics, one module at the time + moduleDiag(0); + moduleDiag(1); +} \ No newline at end of file diff --git a/regression-tests/float/simple_bsed_test.c b/regression-tests/float/simple_bsed_test.c new file mode 100644 index 00000000..3012e9b1 --- /dev/null +++ b/regression-tests/float/simple_bsed_test.c @@ -0,0 +1,122 @@ +//Global variables 'acting' as return variables +float return_modMin; +float return_modMax; +int return_modStatus; + +int mod0_status; +int mod1_status; + +float mod0_min; +float mod1_min; + +float mod0_max; +float mod1_max; + +float batt_min_output; +float batt_max_output; +int batt_status_output; + +/*@contract@*/ +void modStatus(int idx) { + if (idx == 0) { + return_modStatus = mod0_status; + } else { + return_modStatus = mod1_status; + } +} + +/*@contract@*/ +void modMin(int idx) { + if (idx == 0) { + return_modMin = mod0_min; + } else { + return_modMin = mod1_min; + } +} + +/*@contract@*/ +void modMax(int idx) { + if (idx == 0) { + return_modMax = mod0_max; + } else { + return_modMax = mod1_max; + } +} + +/*@contract@*/ +void moduleDiag(int idx) { + modMin(idx); + modMax(idx); + modStatus(idx); + + //Update the status + if (return_modStatus == 1) { + batt_status_output = 1; + } else { + batt_status_output = batt_status_output; + } + + //Update the max value + if (return_modMax > batt_max_output) { + batt_max_output = return_modMax; + } else { + batt_max_output = batt_max_output; + } + + //Update the min value + if (return_modMin < batt_min_output) { + batt_min_output = return_modMin; + } else { + batt_min_output = batt_min_output; + } +} + +void batteryDiag(int dummy) +{ + //Initializing the battery values + batt_max_output = 5.0f; + batt_min_output = -5.0f; + batt_status_output = 0; + + //Run the diagnostics, one module at the time + moduleDiag(0); + moduleDiag(1); +} +int extern non_det(); + +void main() +{ + //Non-det assignment of all global C variables + // return_modMin = 0.0f; + // return_modMax = 0.0f; + // return_modStatus = 0; + mod0_status = non_det(); + mod1_status = non_det(); + mod0_min = -1.0f; + mod1_min = -1.0f; + mod0_max = 2.0f; + mod1_max = 2.0f; + // batt_max_output = -200.0f; + //batt_min_output = 200.0f; + // batt_status_output = 0; + + //Declare the paramters of the function to be called + int dummy; + + //Initialization of logical old-variables + // int old_mod0_status; + // int old_mod1_status; + // int old_batt_status_output; + // assume(old_mod0_status == mod0_status); + // assume(old_mod1_status == mod1_status); + // assume(old_batt_status_output == batt_status_output); + + //Function call that the harness function verifies + batteryDiag(dummy); + + //The 'ensures'-clauses translated into asserts + // assert((!(((old_mod0_status == 0) && (old_mod1_status == 0)) && + // !(batt_status_output == 0)) && !(((old_mod0_status == 1) || + // (old_mod1_status == 1)) && !(batt_status_output == 1)))); + assert(batt_max_output==-5.0f); +} diff --git a/regression-tests/float/simple_bsed_tricera.c b/regression-tests/float/simple_bsed_tricera.c new file mode 100644 index 00000000..99605c26 --- /dev/null +++ b/regression-tests/float/simple_bsed_tricera.c @@ -0,0 +1,122 @@ +//Global variables 'acting' as return variables +int return_modMin; +int return_modMax; +int return_modStatus; + +int mod0_status; +int mod1_status; + +int mod0_min; +int mod1_min; + +int mod0_max; +int mod1_max; + +int batt_min_output; +int batt_max_output; +int batt_status_output; + +/*@contract@*/ +void modStatus(int idx) { + if (idx == 0) { + return_modStatus = mod0_status; + } else { + return_modStatus = mod1_status; + } +} + +/*@contract@*/ +void modMin(int idx) { + if (idx == 0) { + return_modMin = mod0_min; + } else { + return_modMin = mod1_min; + } +} + +/*@contract@*/ +void modMax(int idx) { + if (idx == 0) { + return_modMax = mod0_max; + } else { + return_modMax = mod1_max; + } +} + +/*@contract@*/ +void moduleDiag(int idx) { + modMin(idx); + modMax(idx); + modStatus(idx); + + //Update the status + if (return_modStatus == 1) { + batt_status_output = 1; + } else { + batt_status_output = batt_status_output; + } + + //Update the max value + if (return_modMax > batt_max_output) { + batt_max_output = return_modMax; + } else { + batt_max_output = batt_max_output; + } + + //Update the min value + if (return_modMin < batt_min_output) { + batt_min_output = return_modMin; + } else { + batt_min_output = batt_min_output; + } +} + +void batteryDiag(int dummy) +{ + //Initializing the battery values + batt_max_output = -2147483648; + batt_min_output = 2147483647; + batt_status_output = 0; + + //Run the diagnostics, one module at the time + moduleDiag(0); + moduleDiag(1); +} + +extern int non_det(); + +void main() +{ + //Non-det assignment of all global C variables + return_modMin = non_det(); + return_modMax = non_det(); + return_modStatus = non_det(); + mod0_status = non_det(); + mod1_status = non_det(); + mod0_min = non_det(); + mod1_min = non_det(); + mod0_max = non_det(); + mod1_max = non_det(); + batt_min_output = non_det(); + batt_max_output = non_det(); + batt_status_output = non_det(); + + //Declare the paramters of the function to be called + int dummy; + + //Initialization of logical old-variables + int old_mod0_status; + int old_mod1_status; + int old_batt_status_output; + assume(old_mod0_status == mod0_status); + assume(old_mod1_status == mod1_status); + assume(old_batt_status_output == batt_status_output); + + //Function call that the harness function verifies + batteryDiag(dummy); + + //The 'ensures'-clauses translated into asserts + assert((!(((old_mod0_status == 0) && (old_mod1_status == 0)) && + !(batt_status_output == 0)) && !(((old_mod0_status == 1) || + (old_mod1_status == 1)) && !(batt_status_output == 1)))); +} From 0e9f1f78f18aa9eb5d01cc59c0d8b60763d8cf25 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Thu, 15 Jun 2023 10:04:31 +0200 Subject: [PATCH 23/28] branch for the presentation --- .attach_pid44791 | 0 .attach_pid47888 | 0 .attach_pid48383 | 0 .attach_pid75264 | 0 exjobb_presentation/1_simple.c | 7 +++++++ exjobb_presentation/2_simple.c | 7 +++++++ exjobb_presentation/3_float.c | 5 +++++ exjobb_presentation/4_double.c | 5 +++++ exjobb_presentation/5_longdouble.c | 5 +++++ exjobb_presentation/6_loop.c | 11 +++++++++++ exjobb_presentation/7_loop_unsafe.c | 11 +++++++++++ regression-tests/float/roudning_error.c | 5 +++++ regression-tests/float/rounding_error.c | 5 +++++ 13 files changed, 61 insertions(+) create mode 100644 .attach_pid44791 create mode 100644 .attach_pid47888 create mode 100644 .attach_pid48383 create mode 100644 .attach_pid75264 create mode 100644 exjobb_presentation/1_simple.c create mode 100644 exjobb_presentation/2_simple.c create mode 100644 exjobb_presentation/3_float.c create mode 100644 exjobb_presentation/4_double.c create mode 100644 exjobb_presentation/5_longdouble.c create mode 100644 exjobb_presentation/6_loop.c create mode 100644 exjobb_presentation/7_loop_unsafe.c create mode 100644 regression-tests/float/roudning_error.c create mode 100644 regression-tests/float/rounding_error.c diff --git a/.attach_pid44791 b/.attach_pid44791 new file mode 100644 index 00000000..e69de29b diff --git a/.attach_pid47888 b/.attach_pid47888 new file mode 100644 index 00000000..e69de29b diff --git a/.attach_pid48383 b/.attach_pid48383 new file mode 100644 index 00000000..e69de29b diff --git a/.attach_pid75264 b/.attach_pid75264 new file mode 100644 index 00000000..e69de29b diff --git a/exjobb_presentation/1_simple.c b/exjobb_presentation/1_simple.c new file mode 100644 index 00000000..6429c172 --- /dev/null +++ b/exjobb_presentation/1_simple.c @@ -0,0 +1,7 @@ +int main() { + int foo = 3; + if(foo <= 3) { + foo = foo + 1; + } + assert(foo == 4); +} diff --git a/exjobb_presentation/2_simple.c b/exjobb_presentation/2_simple.c new file mode 100644 index 00000000..78a68589 --- /dev/null +++ b/exjobb_presentation/2_simple.c @@ -0,0 +1,7 @@ +int main() { + int foo = 3; + if(foo < 3) { + foo = foo + 1; + } + assert(foo == 4); +} diff --git a/exjobb_presentation/3_float.c b/exjobb_presentation/3_float.c new file mode 100644 index 00000000..704bcc6f --- /dev/null +++ b/exjobb_presentation/3_float.c @@ -0,0 +1,5 @@ +int main() { + float a = 0.75f; + float b = 1.5f; + assert(a+b == 2.25f); +} diff --git a/exjobb_presentation/4_double.c b/exjobb_presentation/4_double.c new file mode 100644 index 00000000..bb91e14a --- /dev/null +++ b/exjobb_presentation/4_double.c @@ -0,0 +1,5 @@ +int main() { + double a = 0.75; + double b = 1.5; + assert(a+b == 2.25); +} diff --git a/exjobb_presentation/5_longdouble.c b/exjobb_presentation/5_longdouble.c new file mode 100644 index 00000000..364ecb86 --- /dev/null +++ b/exjobb_presentation/5_longdouble.c @@ -0,0 +1,5 @@ +int main() { + long double a = 0.75l; + long double b = 1.5l; + assert(a+b == 2.25l); +} diff --git a/exjobb_presentation/6_loop.c b/exjobb_presentation/6_loop.c new file mode 100644 index 00000000..d24d1342 --- /dev/null +++ b/exjobb_presentation/6_loop.c @@ -0,0 +1,11 @@ +void main() { + int i = 0; + float x = 0.5f; + float y = x; + while (x < 3000.0f) { + x = x*2.0f; + y = x; + ++i; + } + assert(x==y); +} diff --git a/exjobb_presentation/7_loop_unsafe.c b/exjobb_presentation/7_loop_unsafe.c new file mode 100644 index 00000000..7ee984c6 --- /dev/null +++ b/exjobb_presentation/7_loop_unsafe.c @@ -0,0 +1,11 @@ +void main() { + int i = 0; + float x = 0.5f; + float y = x; + while (x < 3000.0f) { + x = x*2.0f; + ++i; + } + assert(x==y); +} + diff --git a/regression-tests/float/roudning_error.c b/regression-tests/float/roudning_error.c new file mode 100644 index 00000000..494127c0 --- /dev/null +++ b/regression-tests/float/roudning_error.c @@ -0,0 +1,5 @@ +int main() { + float f; + for(f = 0.0f; f != 0.3f; f += 0.1f); + assert(f == 0.3f); +} diff --git a/regression-tests/float/rounding_error.c b/regression-tests/float/rounding_error.c new file mode 100644 index 00000000..494127c0 --- /dev/null +++ b/regression-tests/float/rounding_error.c @@ -0,0 +1,5 @@ +int main() { + float f; + for(f = 0.0f; f != 0.3f; f += 0.1f); + assert(f == 0.3f); +} From e044b6629e11f9575c23bbfda7f377b858311a61 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Thu, 15 Jun 2023 15:51:00 +0200 Subject: [PATCH 24/28] final changes --- .attach_pid42527 | 0 .attach_pid44791 | 0 .attach_pid47888 | 0 .attach_pid48383 | 0 .attach_pid67407 | 0 .attach_pid75264 | 0 exjobb_presentation/1_simple.c | 7 - exjobb_presentation/2_simple.c | 7 - exjobb_presentation/3_float.c | 5 - exjobb_presentation/4_double.c | 5 - exjobb_presentation/5_longdouble.c | 5 - exjobb_presentation/6_loop.c | 11 -- exjobb_presentation/7_loop_unsafe.c | 11 -- regression-tests/double/Answers | 33 ++-- regression-tests/double/add_1.c | 7 +- regression-tests/double/add_2.c | 7 +- regression-tests/double/add_3.c | 7 +- regression-tests/double/div_1.c | 7 +- regression-tests/double/div_2.c | 7 +- regression-tests/double/div_3.c | 4 +- regression-tests/double/init_1.c | 5 +- regression-tests/double/init_2.c | 5 +- regression-tests/double/init_3.c | 5 +- regression-tests/double/int_plus_float.c | 8 +- regression-tests/double/leq_1.c | 5 +- regression-tests/double/loop_1.c | 7 +- regression-tests/double/loop_2.c | 8 +- regression-tests/double/mul_1.c | 7 +- regression-tests/double/mul_2.c | 6 +- regression-tests/double/nan.c | 1 + regression-tests/double/nan_create.c | 1 + regression-tests/double/nan_range.c | 6 +- regression-tests/double/nondet_1.c | 3 +- regression-tests/double/nondet_2.c | 3 +- regression-tests/double/runtests | 14 +- regression-tests/double/sub_1.c | 7 +- regression-tests/double/sub_2.c | 7 +- regression-tests/float/Answers | 30 ++- regression-tests/float/a.out | Bin 17296 -> 0 bytes regression-tests/float/add_1.c | 6 +- regression-tests/float/div_1.c | 5 +- regression-tests/float/loop_1.c | 12 +- regression-tests/float/loop_2.c | 9 +- regression-tests/float/mul_2.c | 2 +- regression-tests/float/nondet_1.c | 2 +- regression-tests/float/roudning_error.c | 5 - regression-tests/float/rounding_error.c | 5 +- regression-tests/float/runtests | 11 +- .../float/simple_bsed_orig_code.c | 2 +- regression-tests/float/simple_bsed_test.c | 12 +- regression-tests/float/simple_bsed_tricera.c | 13 +- regression-tests/float/sub_2.c | 2 +- regression-tests/long_double/add_1.c | 6 +- regression-tests/long_double/add_2.c | 6 +- regression-tests/long_double/add_3.c | 6 +- regression-tests/long_double/div_1.c | 6 +- regression-tests/long_double/div_2.c | 6 +- regression-tests/long_double/init_1.c | 4 +- regression-tests/long_double/init_2.c | 4 +- regression-tests/long_double/init_3.c | 4 +- regression-tests/long_double/int_plus_float.c | 4 +- regression-tests/long_double/leq_1.c | 4 +- regression-tests/long_double/loop_1.c | 10 +- regression-tests/long_double/loop_2.c | 11 +- regression-tests/long_double/mul_1.c | 6 +- regression-tests/long_double/mul_2.c | 6 +- regression-tests/long_double/nondet_1.c | 2 +- regression-tests/long_double/nondet_2.c | 2 +- regression-tests/long_double/runtests | 28 +-- regression-tests/long_double/sub_1.c | 7 +- regression-tests/long_double/sub_2.c | 6 +- src/tricera/concurrency/CCReader.scala | 15 ++ .../ccreader/CCBinaryExpressions.scala | 171 ++++++++++++------ .../concurrency/float2fractionTest.scala | 3 + 74 files changed, 341 insertions(+), 313 deletions(-) delete mode 100644 .attach_pid42527 delete mode 100644 .attach_pid44791 delete mode 100644 .attach_pid47888 delete mode 100644 .attach_pid48383 delete mode 100644 .attach_pid67407 delete mode 100644 .attach_pid75264 delete mode 100644 exjobb_presentation/1_simple.c delete mode 100644 exjobb_presentation/2_simple.c delete mode 100644 exjobb_presentation/3_float.c delete mode 100644 exjobb_presentation/4_double.c delete mode 100644 exjobb_presentation/5_longdouble.c delete mode 100644 exjobb_presentation/6_loop.c delete mode 100644 exjobb_presentation/7_loop_unsafe.c delete mode 100755 regression-tests/float/a.out delete mode 100644 regression-tests/float/roudning_error.c diff --git a/.attach_pid42527 b/.attach_pid42527 deleted file mode 100644 index e69de29b..00000000 diff --git a/.attach_pid44791 b/.attach_pid44791 deleted file mode 100644 index e69de29b..00000000 diff --git a/.attach_pid47888 b/.attach_pid47888 deleted file mode 100644 index e69de29b..00000000 diff --git a/.attach_pid48383 b/.attach_pid48383 deleted file mode 100644 index e69de29b..00000000 diff --git a/.attach_pid67407 b/.attach_pid67407 deleted file mode 100644 index e69de29b..00000000 diff --git a/.attach_pid75264 b/.attach_pid75264 deleted file mode 100644 index e69de29b..00000000 diff --git a/exjobb_presentation/1_simple.c b/exjobb_presentation/1_simple.c deleted file mode 100644 index 6429c172..00000000 --- a/exjobb_presentation/1_simple.c +++ /dev/null @@ -1,7 +0,0 @@ -int main() { - int foo = 3; - if(foo <= 3) { - foo = foo + 1; - } - assert(foo == 4); -} diff --git a/exjobb_presentation/2_simple.c b/exjobb_presentation/2_simple.c deleted file mode 100644 index 78a68589..00000000 --- a/exjobb_presentation/2_simple.c +++ /dev/null @@ -1,7 +0,0 @@ -int main() { - int foo = 3; - if(foo < 3) { - foo = foo + 1; - } - assert(foo == 4); -} diff --git a/exjobb_presentation/3_float.c b/exjobb_presentation/3_float.c deleted file mode 100644 index 704bcc6f..00000000 --- a/exjobb_presentation/3_float.c +++ /dev/null @@ -1,5 +0,0 @@ -int main() { - float a = 0.75f; - float b = 1.5f; - assert(a+b == 2.25f); -} diff --git a/exjobb_presentation/4_double.c b/exjobb_presentation/4_double.c deleted file mode 100644 index bb91e14a..00000000 --- a/exjobb_presentation/4_double.c +++ /dev/null @@ -1,5 +0,0 @@ -int main() { - double a = 0.75; - double b = 1.5; - assert(a+b == 2.25); -} diff --git a/exjobb_presentation/5_longdouble.c b/exjobb_presentation/5_longdouble.c deleted file mode 100644 index 364ecb86..00000000 --- a/exjobb_presentation/5_longdouble.c +++ /dev/null @@ -1,5 +0,0 @@ -int main() { - long double a = 0.75l; - long double b = 1.5l; - assert(a+b == 2.25l); -} diff --git a/exjobb_presentation/6_loop.c b/exjobb_presentation/6_loop.c deleted file mode 100644 index d24d1342..00000000 --- a/exjobb_presentation/6_loop.c +++ /dev/null @@ -1,11 +0,0 @@ -void main() { - int i = 0; - float x = 0.5f; - float y = x; - while (x < 3000.0f) { - x = x*2.0f; - y = x; - ++i; - } - assert(x==y); -} diff --git a/exjobb_presentation/7_loop_unsafe.c b/exjobb_presentation/7_loop_unsafe.c deleted file mode 100644 index 7ee984c6..00000000 --- a/exjobb_presentation/7_loop_unsafe.c +++ /dev/null @@ -1,11 +0,0 @@ -void main() { - int i = 0; - float x = 0.5f; - float y = x; - while (x < 3000.0f) { - x = x*2.0f; - ++i; - } - assert(x==y); -} - diff --git a/regression-tests/double/Answers b/regression-tests/double/Answers index 0a38d072..fb9cda7e 100644 --- a/regression-tests/double/Answers +++ b/regression-tests/double/Answers @@ -1,42 +1,41 @@ - regression-tests/double/add_1.c SAFE regression-tests/double/add_2.c -SAFE +UNSAFE + +regression-tests/double/add_3.c +UNSAFE regression-tests/double/div_1.c SAFE regression-tests/double/div_2.c -SAFE +UNSAFE -regression-tests/double/mul_1.c +regression-tests/double/div_3.c SAFE -regression-tests/double/mul_2.c +regression-tests/double/init_1.c SAFE -regression-tests/double/nan.c -UNSAFE - -regression-tests/double/nan_range.c +regression-tests/double/init_2.c SAFE -regression-tests/double/sub_1.c +regression-tests/double/mul_1.c SAFE -regression-tests/double/sub_2.c -SAFE +regression-tests/double/mul_2.c +UNSAFE -regression-tests/double/int_plus_double.c +regression-tests/double/loop_1.c SAFE -regression-tests/double/init_1.c -SAFE +regression-tests/double/loop_2.c +UNSAFE -regression-tests/double/init_2.c +regression-tests/double/sub_1.c SAFE -regression-tests/double/init_3.c +regression-tests/double/sub_2.c UNSAFE diff --git a/regression-tests/double/add_1.c b/regression-tests/double/add_1.c index b7cf7a28..f2578fa9 100644 --- a/regression-tests/double/add_1.c +++ b/regression-tests/double/add_1.c @@ -1,6 +1,7 @@ +// SAFE int main () { - double a = 4.0f; - double b = 2.0f; - assert(a+b== 6.0f); + double a = 0.22; + double b = 0.1; + assert(a+b== 0.32); return 0; } diff --git a/regression-tests/double/add_2.c b/regression-tests/double/add_2.c index 34c3dfba..0cd9add3 100644 --- a/regression-tests/double/add_2.c +++ b/regression-tests/double/add_2.c @@ -1,6 +1,7 @@ +//UNSAFE int main() { - double a = 3.0f; - double b = 0.5f; - assert(a+b == 3.5f); + double a = 3.0; + double b = 0.5; + assert(a+b == 3.501); return 0; } diff --git a/regression-tests/double/add_3.c b/regression-tests/double/add_3.c index d4aac078..0013619e 100644 --- a/regression-tests/double/add_3.c +++ b/regression-tests/double/add_3.c @@ -1,5 +1,6 @@ +//UNSAFE int main() { - double a = 2.0f; - double b = a + 0.5f; - assert(a + 0.4f == b); + double a = 2.0; + double b = a + 0.5; + assert(a + 0.4 == b); } diff --git a/regression-tests/double/div_1.c b/regression-tests/double/div_1.c index ce5def7a..286e97a3 100644 --- a/regression-tests/double/div_1.c +++ b/regression-tests/double/div_1.c @@ -1,6 +1,7 @@ +//SAFE int main () { - double a = 4.0f; - double b = 2.0f; - assert(a/b== 2.0f); + double a = 4.0; + double b = 0.5; + assert(a/b== 8.0); return 0; } diff --git a/regression-tests/double/div_2.c b/regression-tests/double/div_2.c index 1a70c081..e973b1c4 100644 --- a/regression-tests/double/div_2.c +++ b/regression-tests/double/div_2.c @@ -1,6 +1,7 @@ +//UNSAFE int main () { - double a = 4.0f; - double b = 0.5f; - assert(a/b== 8.0f); + double a = 4.0; + double b = 0.5; + assert(a/b== 8.01); return 0; } diff --git a/regression-tests/double/div_3.c b/regression-tests/double/div_3.c index 643da91d..6e379e2b 100644 --- a/regression-tests/double/div_3.c +++ b/regression-tests/double/div_3.c @@ -1,7 +1,7 @@ -//SAFE (WILL BE UNSAFE DUE TO APPROXIMATIONS FROM FRACTION) int main () { double a = 4.0; double b = 0.1; - assert(a/b== 40.0); + assert(a/b <= 40.00001); + assert(a/b >= 39.99999); return 0; } diff --git a/regression-tests/double/init_1.c b/regression-tests/double/init_1.c index e5e14412..e13dfbf3 100644 --- a/regression-tests/double/init_1.c +++ b/regression-tests/double/init_1.c @@ -1,6 +1,7 @@ +//SAFE int main() { - double a = 0.0f; - assert(a == 0.0f); + double a = 0.0; + assert(a == 0.0); return 0; } diff --git a/regression-tests/double/init_2.c b/regression-tests/double/init_2.c index 02c6c43b..0c2c56d3 100644 --- a/regression-tests/double/init_2.c +++ b/regression-tests/double/init_2.c @@ -1,5 +1,6 @@ +//SAFE int main() { - double a = 4.24242f; - assert(a == 4.24242f); + double a = 4.24242; + assert(a == 4.24242); return 0; } diff --git a/regression-tests/double/init_3.c b/regression-tests/double/init_3.c index c19d2829..2f92a113 100644 --- a/regression-tests/double/init_3.c +++ b/regression-tests/double/init_3.c @@ -1,6 +1,7 @@ +//UNSAFE int main() { - double a = 4.24242f; - assert(a == 4.24241f); + double a = 4.24242; + assert(a == 4.24241); return 0; } diff --git a/regression-tests/double/int_plus_float.c b/regression-tests/double/int_plus_float.c index c0c55caa..a187b1ee 100644 --- a/regression-tests/double/int_plus_float.c +++ b/regression-tests/double/int_plus_float.c @@ -1,7 +1,7 @@ -int main () -{ - double a = 2.0f; +//SAFE +int main () { + double a = 2.0; int b = 1; - assert(a+b == 3.0f); + assert(a+b == 3.0); return 0; } diff --git a/regression-tests/double/leq_1.c b/regression-tests/double/leq_1.c index ae31e084..ebc00916 100644 --- a/regression-tests/double/leq_1.c +++ b/regression-tests/double/leq_1.c @@ -1,5 +1,6 @@ +//SAFE int main() { - double a = 2.3f; - double b = 2.25f;; + double a = 2.3; + double b = 2.25;; assert(b <= a); } diff --git a/regression-tests/double/loop_1.c b/regression-tests/double/loop_1.c index 528a140c..58480f19 100644 --- a/regression-tests/double/loop_1.c +++ b/regression-tests/double/loop_1.c @@ -1,11 +1,10 @@ -int N = _; - +//SAFE void main(void) { int i = 0; double x = 0.5; double y = x; - while (i < N) { - x = x*2.0f; + while (x < 3000.0) { + x = x*2.0; y = x; ++i; } diff --git a/regression-tests/double/loop_2.c b/regression-tests/double/loop_2.c index df7431dd..b00f7506 100644 --- a/regression-tests/double/loop_2.c +++ b/regression-tests/double/loop_2.c @@ -1,3 +1,4 @@ +//UNSAFE int N = _; void main(void) { @@ -5,9 +6,10 @@ void main(void) { double x = 0.5; double y = x; while (i < N) { - x = x*2.0f; - y = x; + if(x == y) { + x = x+2.25; + } ++i; } - assert(x==y+1.0f); + assert(x==y); } diff --git a/regression-tests/double/mul_1.c b/regression-tests/double/mul_1.c index 147f78cb..172cc3b8 100644 --- a/regression-tests/double/mul_1.c +++ b/regression-tests/double/mul_1.c @@ -1,6 +1,7 @@ +//SAFE int main () { - double a = 4.0f; - double b = 2.0f; - assert(a*b== 8.0f); + double a = 0.5; + double b = 0.5; + assert(a*b== 0.25); return 0; } diff --git a/regression-tests/double/mul_2.c b/regression-tests/double/mul_2.c index bd545b5f..ce17e7e1 100644 --- a/regression-tests/double/mul_2.c +++ b/regression-tests/double/mul_2.c @@ -1,6 +1,6 @@ int main () { - double a = 4.0f; - double b = 0.5f; - assert(a*b== 2.0f); + double a = 0.5; + double b = 0.5; + assert(a*b== 0.251); return 0; } diff --git a/regression-tests/double/nan.c b/regression-tests/double/nan.c index 376357f8..2f08ec85 100644 --- a/regression-tests/double/nan.c +++ b/regression-tests/double/nan.c @@ -1,3 +1,4 @@ +//UNSAFE IF NAN IS INCLUDED OTHERWISE SAFE int main() { double x = _; diff --git a/regression-tests/double/nan_create.c b/regression-tests/double/nan_create.c index 9440e44b..a7bb5969 100644 --- a/regression-tests/double/nan_create.c +++ b/regression-tests/double/nan_create.c @@ -1,3 +1,4 @@ +//UNSAFE int main() { double nan = 0/0; assert(nan == 2); diff --git a/regression-tests/double/nan_range.c b/regression-tests/double/nan_range.c index 73184580..fac54bed 100644 --- a/regression-tests/double/nan_range.c +++ b/regression-tests/double/nan_range.c @@ -1,8 +1,8 @@ -int main() -{ +// SAFE +int main() { double x = _; - if (x >= -0.00001f && x <= -0.00001f) { + if (x >= -0.00001 && x <= -0.00001) { assert(x==x); } return 0; diff --git a/regression-tests/double/nondet_1.c b/regression-tests/double/nondet_1.c index f67c1467..ace4be01 100644 --- a/regression-tests/double/nondet_1.c +++ b/regression-tests/double/nondet_1.c @@ -1,6 +1,7 @@ +// SAFE int main() { double x = _; - double y = x + 1.0f; + double y = x + 1.0; assert(y>x); } diff --git a/regression-tests/double/nondet_2.c b/regression-tests/double/nondet_2.c index 5a0bc893..f3a5e2f3 100644 --- a/regression-tests/double/nondet_2.c +++ b/regression-tests/double/nondet_2.c @@ -1,5 +1,6 @@ +// UNSAFE int main() { double x = _; - double y = x + 1.0f; + double y = x + 1.0; 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 39.99999f); return 0; } diff --git a/regression-tests/float/loop_1.c b/regression-tests/float/loop_1.c index 4f06ced2..95052c65 100644 --- a/regression-tests/float/loop_1.c +++ b/regression-tests/float/loop_1.c @@ -1,13 +1,11 @@ -int N = _; - -void main(void) { +void main() { int i = 0; - float x = 0.5; + float x = 0.5f; float y = x; - while (i < N) { + while (x < 3000.0f) { x = x*2.0f; y = x; ++i; } - assert(x==y+1.0f); -} + assert(x==y); +} \ No newline at end of file diff --git a/regression-tests/float/loop_2.c b/regression-tests/float/loop_2.c index 4f06ced2..eb4edca3 100644 --- a/regression-tests/float/loop_2.c +++ b/regression-tests/float/loop_2.c @@ -2,12 +2,13 @@ int N = _; void main(void) { int i = 0; - float x = 0.5; + float x = 0.5f; float y = x; while (i < N) { - x = x*2.0f; - y = x; + if(x == y) { + x = x+2.25f; + } ++i; } - assert(x==y+1.0f); + assert(x==y); } diff --git a/regression-tests/float/mul_2.c b/regression-tests/float/mul_2.c index fadb1432..9e07d77d 100644 --- a/regression-tests/float/mul_2.c +++ b/regression-tests/float/mul_2.c @@ -1,6 +1,6 @@ int main () { float a = 4.0f; float b = 0.5f; - assert(a*b== 2.0f); + assert(a*b== 2.001f); return 0; } diff --git a/regression-tests/float/nondet_1.c b/regression-tests/float/nondet_1.c index 19a60425..2b08d474 100644 --- a/regression-tests/float/nondet_1.c +++ b/regression-tests/float/nondet_1.c @@ -1,5 +1,5 @@ int main() { float x = _; float y = x + 1.0f; - assert(y>x); + assert(y>=x); } diff --git a/regression-tests/float/roudning_error.c b/regression-tests/float/roudning_error.c deleted file mode 100644 index 494127c0..00000000 --- a/regression-tests/float/roudning_error.c +++ /dev/null @@ -1,5 +0,0 @@ -int main() { - float f; - for(f = 0.0f; f != 0.3f; f += 0.1f); - assert(f == 0.3f); -} diff --git a/regression-tests/float/rounding_error.c b/regression-tests/float/rounding_error.c index 494127c0..cfff83dc 100644 --- a/regression-tests/float/rounding_error.c +++ b/regression-tests/float/rounding_error.c @@ -1,5 +1,6 @@ int main() { - float f; - for(f = 0.0f; f != 0.3f; f += 0.1f); + float f = 0.0f; + for(int i = 0; f == 0.3f;i++) { + } assert(f == 0.3f); } diff --git a/regression-tests/float/runtests b/regression-tests/float/runtests index 78234637..c53f4e71 100755 --- a/regression-tests/float/runtests +++ b/regression-tests/float/runtests @@ -7,17 +7,12 @@ TESTS="regression-tests/float/add_1.c \ regression-tests/float/add_3.c \ regression-tests/float/div_1.c \ regression-tests/float/div_2.c \ - regression-tests/float/div_2.c \ regression-tests/float/init_1.c \ regression-tests/float/init_2.c \ - regression-tests/float/int_plus_float.c \ - regression-tests/float/leq_1.c \ + regression-tests/float/loop_1.c \ + regression-tests/float/loop_2.c \ + regression-tests/float/mul_1.c \ regression-tests/float/mul_2.c \ - regression-tests/float/nan.c \ - regression-tests/float/nan_create.c \ - regression-tests/float/nan_range.c \ - regression-tests/float/nondet_1.c \ - regression-tests/float/nondet_2.c \ regression-tests/float/sub_1.c \ regression-tests/float/sub_2.c " diff --git a/regression-tests/float/simple_bsed_orig_code.c b/regression-tests/float/simple_bsed_orig_code.c index bc1551ac..aac6f486 100644 --- a/regression-tests/float/simple_bsed_orig_code.c +++ b/regression-tests/float/simple_bsed_orig_code.c @@ -84,4 +84,4 @@ void batteryDiag(int dummy) //Run the diagnostics, one module at the time moduleDiag(0); moduleDiag(1); -} \ No newline at end of file +} diff --git a/regression-tests/float/simple_bsed_test.c b/regression-tests/float/simple_bsed_test.c index 3012e9b1..1340863c 100644 --- a/regression-tests/float/simple_bsed_test.c +++ b/regression-tests/float/simple_bsed_test.c @@ -1,3 +1,4 @@ +#include //Global variables 'acting' as return variables float return_modMin; float return_modMax; @@ -84,14 +85,14 @@ void batteryDiag(int dummy) } int extern non_det(); -void main() +int main() { //Non-det assignment of all global C variables // return_modMin = 0.0f; // return_modMax = 0.0f; // return_modStatus = 0; - mod0_status = non_det(); - mod1_status = non_det(); + mod0_status = 0; + mod1_status = 1; mod0_min = -1.0f; mod1_min = -1.0f; mod0_max = 2.0f; @@ -101,7 +102,7 @@ void main() // batt_status_output = 0; //Declare the paramters of the function to be called - int dummy; + int dummy = 0; //Initialization of logical old-variables // int old_mod0_status; @@ -118,5 +119,6 @@ void main() // assert((!(((old_mod0_status == 0) && (old_mod1_status == 0)) && // !(batt_status_output == 0)) && !(((old_mod0_status == 1) || // (old_mod1_status == 1)) && !(batt_status_output == 1)))); - assert(batt_max_output==-5.0f); + printf("%f", batt_max_output); + return 0; } diff --git a/regression-tests/float/simple_bsed_tricera.c b/regression-tests/float/simple_bsed_tricera.c index 99605c26..fe2373d1 100644 --- a/regression-tests/float/simple_bsed_tricera.c +++ b/regression-tests/float/simple_bsed_tricera.c @@ -16,7 +16,6 @@ int batt_min_output; int batt_max_output; int batt_status_output; -/*@contract@*/ void modStatus(int idx) { if (idx == 0) { return_modStatus = mod0_status; @@ -25,7 +24,6 @@ void modStatus(int idx) { } } -/*@contract@*/ void modMin(int idx) { if (idx == 0) { return_modMin = mod0_min; @@ -34,7 +32,6 @@ void modMin(int idx) { } } -/*@contract@*/ void modMax(int idx) { if (idx == 0) { return_modMax = mod0_max; @@ -43,7 +40,6 @@ void modMax(int idx) { } } -/*@contract@*/ void moduleDiag(int idx) { modMin(idx); modMax(idx); @@ -74,8 +70,8 @@ void moduleDiag(int idx) { void batteryDiag(int dummy) { //Initializing the battery values - batt_max_output = -2147483648; - batt_min_output = 2147483647; + batt_max_output = -30000000000.5f; + batt_min_output = 30000000000.5f; batt_status_output = 0; //Run the diagnostics, one module at the time @@ -83,7 +79,7 @@ void batteryDiag(int dummy) moduleDiag(1); } -extern int non_det(); +int extern non_det(); void main() { @@ -97,9 +93,6 @@ void main() mod1_min = non_det(); mod0_max = non_det(); mod1_max = non_det(); - batt_min_output = non_det(); - batt_max_output = non_det(); - batt_status_output = non_det(); //Declare the paramters of the function to be called int dummy; diff --git a/regression-tests/float/sub_2.c b/regression-tests/float/sub_2.c index c51751f1..03d9d6b7 100644 --- a/regression-tests/float/sub_2.c +++ b/regression-tests/float/sub_2.c @@ -1,6 +1,6 @@ int main() { float a = 3.0f; float b = 0.5f; - assert(a-b == 2.5f); + assert(a-b == 2.501f); return 0; } diff --git a/regression-tests/long_double/add_1.c b/regression-tests/long_double/add_1.c index b7cf7a28..282155ec 100644 --- a/regression-tests/long_double/add_1.c +++ b/regression-tests/long_double/add_1.c @@ -1,6 +1,6 @@ int main () { - double a = 4.0f; - double b = 2.0f; - assert(a+b== 6.0f); + long double a = 4.0l; + long double b = 2.0l; + assert(a+b== 6.0l); return 0; } diff --git a/regression-tests/long_double/add_2.c b/regression-tests/long_double/add_2.c index 34c3dfba..02b2cd8d 100644 --- a/regression-tests/long_double/add_2.c +++ b/regression-tests/long_double/add_2.c @@ -1,6 +1,6 @@ int main() { - double a = 3.0f; - double b = 0.5f; - assert(a+b == 3.5f); + long double a = 3.0l; + long double b = 0.5l; + assert(a+b == 3.5l); return 0; } diff --git a/regression-tests/long_double/add_3.c b/regression-tests/long_double/add_3.c index d4aac078..c8c6fe24 100644 --- a/regression-tests/long_double/add_3.c +++ b/regression-tests/long_double/add_3.c @@ -1,5 +1,5 @@ int main() { - double a = 2.0f; - double b = a + 0.5f; - assert(a + 0.4f == b); + long double a = 2.0l; + long double b = a + 0.5l; + assert(a + 0.4l == b); } diff --git a/regression-tests/long_double/div_1.c b/regression-tests/long_double/div_1.c index ce5def7a..00469762 100644 --- a/regression-tests/long_double/div_1.c +++ b/regression-tests/long_double/div_1.c @@ -1,6 +1,6 @@ int main () { - double a = 4.0f; - double b = 2.0f; - assert(a/b== 2.0f); + long double a = 4.0l; + long double b = 2.0l; + assert(a/b== 2.0l); return 0; } diff --git a/regression-tests/long_double/div_2.c b/regression-tests/long_double/div_2.c index 1a70c081..e1a13a19 100644 --- a/regression-tests/long_double/div_2.c +++ b/regression-tests/long_double/div_2.c @@ -1,6 +1,6 @@ int main () { - double a = 4.0f; - double b = 0.5f; - assert(a/b== 8.0f); + long double a = 4.0l; + long double b = 0.5l; + assert(a/b== 8.01l); return 0; } diff --git a/regression-tests/long_double/init_1.c b/regression-tests/long_double/init_1.c index e5e14412..b5de3f06 100644 --- a/regression-tests/long_double/init_1.c +++ b/regression-tests/long_double/init_1.c @@ -1,6 +1,6 @@ int main() { - double a = 0.0f; - assert(a == 0.0f); + long double a = 0.0l; + assert(a == 0.0l); return 0; } diff --git a/regression-tests/long_double/init_2.c b/regression-tests/long_double/init_2.c index 02c6c43b..50a2d788 100644 --- a/regression-tests/long_double/init_2.c +++ b/regression-tests/long_double/init_2.c @@ -1,5 +1,5 @@ int main() { - double a = 4.24242f; - assert(a == 4.24242f); + long double a = 4.24242l; + assert(a == 4.24242l); return 0; } diff --git a/regression-tests/long_double/init_3.c b/regression-tests/long_double/init_3.c index c19d2829..6be926fc 100644 --- a/regression-tests/long_double/init_3.c +++ b/regression-tests/long_double/init_3.c @@ -1,6 +1,6 @@ int main() { - double a = 4.24242f; - assert(a == 4.24241f); + long double a = 4.24242l; + assert(a == 4.24241l); return 0; } diff --git a/regression-tests/long_double/int_plus_float.c b/regression-tests/long_double/int_plus_float.c index c0c55caa..2fcbf907 100644 --- a/regression-tests/long_double/int_plus_float.c +++ b/regression-tests/long_double/int_plus_float.c @@ -1,7 +1,7 @@ int main () { - double a = 2.0f; + long double a = 2.0l; int b = 1; - assert(a+b == 3.0f); + assert(a+b == 3.0l); return 0; } diff --git a/regression-tests/long_double/leq_1.c b/regression-tests/long_double/leq_1.c index ae31e084..67d8cb93 100644 --- a/regression-tests/long_double/leq_1.c +++ b/regression-tests/long_double/leq_1.c @@ -1,5 +1,5 @@ int main() { - double a = 2.3f; - double b = 2.25f;; + long double a = 2.3l; + long double b = 2.25l;; assert(b <= a); } diff --git a/regression-tests/long_double/loop_1.c b/regression-tests/long_double/loop_1.c index 528a140c..e592915e 100644 --- a/regression-tests/long_double/loop_1.c +++ b/regression-tests/long_double/loop_1.c @@ -1,11 +1,9 @@ -int N = _; - void main(void) { int i = 0; - double x = 0.5; - double y = x; - while (i < N) { - x = x*2.0f; + long double x = 0.5l; + long double y = x; + while (x < 3000.0l) { + x = x*2.0l; y = x; ++i; } diff --git a/regression-tests/long_double/loop_2.c b/regression-tests/long_double/loop_2.c index df7431dd..aec3f6f5 100644 --- a/regression-tests/long_double/loop_2.c +++ b/regression-tests/long_double/loop_2.c @@ -2,12 +2,13 @@ int N = _; void main(void) { int i = 0; - double x = 0.5; - double y = x; + long double x = 0.5l; + long double y = x; while (i < N) { - x = x*2.0f; - y = x; + if(x == y) { + x = x+2.25l; + } ++i; } - assert(x==y+1.0f); + assert(x==y); } diff --git a/regression-tests/long_double/mul_1.c b/regression-tests/long_double/mul_1.c index 147f78cb..1a93c1ac 100644 --- a/regression-tests/long_double/mul_1.c +++ b/regression-tests/long_double/mul_1.c @@ -1,6 +1,6 @@ int main () { - double a = 4.0f; - double b = 2.0f; - assert(a*b== 8.0f); + long double a = 4.0l; + long double b = 2.0l; + assert(a*b== 8.0l); return 0; } diff --git a/regression-tests/long_double/mul_2.c b/regression-tests/long_double/mul_2.c index bd545b5f..49d1284b 100644 --- a/regression-tests/long_double/mul_2.c +++ b/regression-tests/long_double/mul_2.c @@ -1,6 +1,6 @@ int main () { - double a = 4.0f; - double b = 0.5f; - assert(a*b== 2.0f); + long double a = 4.0l; + long double b = 0.5l; + assert(a*b== 2.01l); return 0; } diff --git a/regression-tests/long_double/nondet_1.c b/regression-tests/long_double/nondet_1.c index f67c1467..7dbca4f8 100644 --- a/regression-tests/long_double/nondet_1.c +++ b/regression-tests/long_double/nondet_1.c @@ -1,6 +1,6 @@ int main() { double x = _; - double y = x + 1.0f; + double y = x + 1.0l; assert(y>x); } diff --git a/regression-tests/long_double/nondet_2.c b/regression-tests/long_double/nondet_2.c index 5a0bc893..e4c3c1a7 100644 --- a/regression-tests/long_double/nondet_2.c +++ b/regression-tests/long_double/nondet_2.c @@ -1,5 +1,5 @@ int main() { double x = _; - double y = x + 1.0f; + double y = x + 1.0l; assert(y FloatADT.floatCtor(Rationals.plus( FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) + + /* Semantics for addition when using the ADT + IExpression.ite(FloatADT.isFloat(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm), + FloatADT.floatCtor(Rationals.plus( + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))), + + IExpression.ite((FloatADT.isPlusinf(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm)) + ||| (FloatADT.isFloat(lhs.toTerm) &&& FloatADT.isPlusinf(rhs.toTerm)) + ||| (FloatADT.isPlusinf(lhs.toTerm) &&& FloatADT.isPlusinf(rhs.toTerm)), + FloatADT.plusInf, + + IExpression.ite((FloatADT.isNeginf(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm)) + ||| (FloatADT.isFloat(lhs.toTerm) &&& FloatADT.isNeginf(rhs.toTerm)) + ||| (FloatADT.isNeginf(lhs.toTerm) &&& FloatADT.isNeginf(rhs.toTerm)), + FloatADT.negInf, FloatADT.nan))) + */ + case _ => throw new Exception("Unmatched types") } @@ -249,68 +265,115 @@ object CCBinaryExpressions { case (CCFloat, CCFloat) => FloatADT.floatCtor(Rationals.minus( FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) - case _ => - throw new Exception("Unmatched types") - } + /* Semantics for subtraction using the ADT + IExpression.ite(FloatADT.isFloat(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm), + FloatADT.floatCtor(Rationals.minus( + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))), - override def getDoubleRes = (lhs.typ, rhs.typ) match { - case (CCDouble, CCDouble) => - DoubleADT.doubleCtor(Rationals.minus( - DoubleADT.getData(lhs.toTerm), DoubleADT.getData(rhs.toTerm))) - case _ => - throw new Exception("Unmatched types") - } + IExpression.ite((FloatADT.isPlusinf(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm)) + ||| (FloatADT.isFloat(lhs.toTerm) &&& FloatADT.isNeginf(rhs.toTerm)), + FloatADT.plusInf, + + IExpression.ite((FloatADT.isNeginf(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm)) + ||| (FloatADT.isFloat(lhs.toTerm) &&& FloatADT.isPlusinf(rhs.toTerm)) + ||| (FloatADT.isNeginf(lhs.toTerm) &&& FloatADT.isPlusinf(rhs.toTerm)), + FloatADT.negInf, FloatADT.nan))) + */ + + case _ => + throw new Exception("Unmatched types") - override def getLongDoubleRes = (lhs.typ, rhs.typ) match { - case (CCLongDouble, CCLongDouble) => - LongDoubleADT.longDoubleCtor(Rationals.minus( - LongDoubleADT.getData(lhs.toTerm), LongDoubleADT.getData(rhs.toTerm))) - case _ => - throw new Exception("Unmatched types") - } } - case class Times(_lhs: CCExpr, _rhs: CCExpr) - extends BinaryOperation(_lhs, _rhs) { - override def getIntRes = { - throwErrorIfPointerArithmetic(lhs, rhs) - ap.theories.nia.GroebnerMultiplication.mult(lhs.toTerm, rhs.toTerm) - } - override def getFloatRes = (lhs.typ, rhs.typ) match { - case (CCFloat, CCFloat) => - FloatADT.floatCtor(Rationals.mul( - FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) - case _ => - throw new Exception("Unmatched types") - } - override def getDoubleRes = (lhs.typ, rhs.typ) match { - case (CCDouble, CCDouble) => - DoubleADT.doubleCtor(Rationals.mul( - DoubleADT.getData(lhs.toTerm), DoubleADT.getData(rhs.toTerm))) - case _ => - throw new Exception("Unmatched types") - } + override def getDoubleRes = (lhs.typ, rhs.typ) match { + case (CCDouble, CCDouble) => + DoubleADT.doubleCtor(Rationals.minus( + DoubleADT.getData(lhs.toTerm), DoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } - override def getLongDoubleRes = (lhs.typ, rhs.typ) match { - case (CCLongDouble, CCLongDouble) => - LongDoubleADT.longDoubleCtor(Rationals.mul( - LongDoubleADT.getData(lhs.toTerm), LongDoubleADT.getData(rhs.toTerm))) - case _ => - throw new Exception("Unmatched types") - } + override def getLongDoubleRes = (lhs.typ, rhs.typ) match { + case (CCLongDouble, CCLongDouble) => + LongDoubleADT.longDoubleCtor(Rationals.minus( + LongDoubleADT.getData(lhs.toTerm), LongDoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") } + } - case class Div(_lhs: CCExpr, _rhs: CCExpr) - extends BinaryOperation(_lhs, _rhs) { - override def getIntRes = { - throwErrorIfPointerArithmetic(lhs, rhs) - ap.theories.nia.GroebnerMultiplication.tDiv(lhs.toTerm, rhs.toTerm) - } - override def getFloatRes = (lhs.typ, rhs.typ) match { - case (CCFloat, CCFloat) => + case class Times(_lhs: CCExpr, _rhs: CCExpr) + extends BinaryOperation(_lhs, _rhs) { + override def getIntRes = { + throwErrorIfPointerArithmetic(lhs, rhs) + ap.theories.nia.GroebnerMultiplication.mult(lhs.toTerm, rhs.toTerm) + } + override def getFloatRes = (lhs.typ, rhs.typ) match { + case (CCFloat, CCFloat) => + FloatADT.floatCtor(Rationals.mul( + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) + + /* Semantics for multiplication using the ADT + IExpression.ite(FloatADT.isFloat(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm), + FloatADT.floatCtor(Rationals.mul( + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))), + + IExpression.ite((FloatADT.isPlusinf(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm)) + ||| (FloatADT.isFloat(lhs.toTerm) &&& FloatADT.isPlusinf(rhs.toTerm)) + ||| (FloatADT.isPlusinf(lhs.toTerm) &&& FloatADT.isPlusinf(rhs.toTerm)) + ||| (FloatADT.isNeginf(lhs.toTerm) &&& FloatADT.isNeginf(rhs.toTerm)), + FloatADT.plusInf, + + IExpression.ite((FloatADT.isNeginf(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm)) + ||| (FloatADT.isFloat(lhs.toTerm) &&& FloatADT.isNeginf(rhs.toTerm)) + ||| (FloatADT.isNeginf(lhs.toTerm) &&& FloatADT.isPlusinf(rhs.toTerm)) + ||| (FloatADT.isPlusinf(lhs.toTerm) &&& FloatADT.isNeginf(rhs.toTerm)), + FloatADT.negInf, FloatADT.nan))) + */ + + case _ => + throw new Exception("Unmatched types") + } + override def getDoubleRes = (lhs.typ, rhs.typ) match { + case (CCDouble, CCDouble) => + DoubleADT.doubleCtor(Rationals.mul( + DoubleADT.getData(lhs.toTerm), DoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } + + override def getLongDoubleRes = (lhs.typ, rhs.typ) match { + case (CCLongDouble, CCLongDouble) => + LongDoubleADT.longDoubleCtor(Rationals.mul( + LongDoubleADT.getData(lhs.toTerm), LongDoubleADT.getData(rhs.toTerm))) + case _ => + throw new Exception("Unmatched types") + } + } + + case class Div(_lhs: CCExpr, _rhs: CCExpr) + extends BinaryOperation(_lhs, _rhs) { + override def getIntRes = { + throwErrorIfPointerArithmetic(lhs, rhs) + ap.theories.nia.GroebnerMultiplication.tDiv(lhs.toTerm, rhs.toTerm) + } + override def getFloatRes = (lhs.typ, rhs.typ) match { + case (CCFloat, CCFloat) => + FloatADT.floatCtor(Rationals.div( + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) + + /* Semantics for division using the ADT + IExpression.ite(FloatADT.isFloat(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm), FloatADT.floatCtor(Rationals.div( - FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))) + FloatADT.getData(lhs.toTerm), FloatADT.getData(rhs.toTerm))), + + IExpression.ite((FloatADT.isPlusinf(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm)), + FloatADT.plusInf, + + IExpression.ite((FloatADT.isNeginf(lhs.toTerm) &&& FloatADT.isFloat(rhs.toTerm)), + FloatADT.negInf, FloatADT.nan))) + */ case _ => throw new Exception("Unmatched types") } diff --git a/unit-tests/tricera/concurrency/float2fractionTest.scala b/unit-tests/tricera/concurrency/float2fractionTest.scala index bb49104b..7302f473 100644 --- a/unit-tests/tricera/concurrency/float2fractionTest.scala +++ b/unit-tests/tricera/concurrency/float2fractionTest.scala @@ -84,5 +84,8 @@ class FractionTest extends AnyFlatSpec { foo = floatToFraction("-2.35098856151e-38") assert(foo == ("-16777215", "713623846352979940529142984724747568191373312")) + foo = floatToFraction("0.0f") + assert(foo == ("0", "1")) + println("ALL TESTS PASSED") } From 66f7d67d4299bc5891c611b21ffa8b009093cc0c Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Fri, 8 Sep 2023 17:10:04 +0200 Subject: [PATCH 25/28] final commit --- .attach_pid35637 | 0 .attach_pid36050 | 0 .attach_pid36174 | 0 .attach_pid36588 | 0 .attach_pid36675 | 0 .attach_pid38045 | 0 regression-tests/float/industrial_tricera.c | 0 .../float/industrial_tricera_simple.c | 88 +++++++++++++++++++ regression-tests/float/leq_2.c | 8 ++ 9 files changed, 96 insertions(+) create mode 100644 .attach_pid35637 create mode 100644 .attach_pid36050 create mode 100644 .attach_pid36174 create mode 100644 .attach_pid36588 create mode 100644 .attach_pid36675 create mode 100644 .attach_pid38045 create mode 100644 regression-tests/float/industrial_tricera.c create mode 100644 regression-tests/float/industrial_tricera_simple.c create mode 100644 regression-tests/float/leq_2.c diff --git a/.attach_pid35637 b/.attach_pid35637 new file mode 100644 index 00000000..e69de29b diff --git a/.attach_pid36050 b/.attach_pid36050 new file mode 100644 index 00000000..e69de29b diff --git a/.attach_pid36174 b/.attach_pid36174 new file mode 100644 index 00000000..e69de29b diff --git a/.attach_pid36588 b/.attach_pid36588 new file mode 100644 index 00000000..e69de29b diff --git a/.attach_pid36675 b/.attach_pid36675 new file mode 100644 index 00000000..e69de29b diff --git a/.attach_pid38045 b/.attach_pid38045 new file mode 100644 index 00000000..e69de29b diff --git a/regression-tests/float/industrial_tricera.c b/regression-tests/float/industrial_tricera.c new file mode 100644 index 00000000..e69de29b diff --git a/regression-tests/float/industrial_tricera_simple.c b/regression-tests/float/industrial_tricera_simple.c new file mode 100644 index 00000000..5c68d3aa --- /dev/null +++ b/regression-tests/float/industrial_tricera_simple.c @@ -0,0 +1,88 @@ +//Global variables 'acting' as return variables +float return_modMin; +float return_modMax; + +int return_modStatus; + +float mod0_status; + +float mod0_min; + +float mod0_max; + +float batt_min_output; +float batt_max_output; +int batt_status_output; + +void modStatus() { + return_modStatus = mod0_status; +} + +void modMin() { + return_modMin = mod0_min; +} + +void modMax() { + return_modMax = mod0_max; +} + +void moduleDiag(int idx) { + modMin(); + modMax(); + modStatus(); + + //Update the status + if (return_modStatus == 1) { + batt_status_output = 1; + } else { + batt_status_output = batt_status_output; + } + + //Update the max value + if (return_modMax > batt_max_output) { + batt_max_output = return_modMax; + } else { + batt_max_output = batt_max_output; + } + + //Update the min value + if (return_modMin < batt_min_output) { + batt_min_output = return_modMin; + } else { + batt_min_output = batt_min_output; + } +} + +void batteryDiag() +{ + //Initializing the battery values + batt_max_output = 3000.25f; + batt_min_output = -3000.25f; + batt_status_output = 0; + + //Run the diagnostics, one module at the time + moduleDiag(0); +} + + +void main() +{ + //Non-det assignment of all global C variables + return_modMin = 0.0f; + return_modMax = 0.0f; + return_modStatus = 0; + mod0_status = 0; + mod0_min = 0.0f; + mod0_max = 0.0f; + + //Declare the paramters of the function to be called + + //Function call that the harness function verifies + batteryDiag(); + + //The 'ensures'-clauses translated into asserts + //assert((!(((old_mod0_status == 0) && (old_mod1_status == 0)) && + //!(batt_status_output == 0)) && !(((old_mod0_status == 1) || + //(old_mod1_status == 1)) && !(batt_status_output == 1)))); + assert(batt_max_output <= 3000.25f); +} diff --git a/regression-tests/float/leq_2.c b/regression-tests/float/leq_2.c new file mode 100644 index 00000000..52f41fe4 --- /dev/null +++ b/regression-tests/float/leq_2.c @@ -0,0 +1,8 @@ +int main() { + float a = -32.23f; + float b = -54.425f; + assert(a < b); + +} + + From 28aa662120688b92a0f00f1ad6d0751d4f7302d4 Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Wed, 18 Oct 2023 14:50:04 +0200 Subject: [PATCH 26/28] fixed tests --- regression-tests/double/Answers | 29 ++++++++++----------- regression-tests/double/runtests | 30 +++++++++++----------- regression-tests/float/Answers | 27 ++++++++++---------- regression-tests/float/example.c | 10 ++++++++ regression-tests/float/runtests | 28 ++++++++++----------- regression-tests/long_double/Answers | 36 +++++++++++++-------------- regression-tests/long_double/div_2.c | 2 +- regression-tests/long_double/runtests | 30 +++++++++++----------- regression-tests/runalldirs | 3 +++ 9 files changed, 105 insertions(+), 90 deletions(-) create mode 100644 regression-tests/float/example.c diff --git a/regression-tests/double/Answers b/regression-tests/double/Answers index fb9cda7e..fd94215d 100644 --- a/regression-tests/double/Answers +++ b/regression-tests/double/Answers @@ -1,41 +1,42 @@ -regression-tests/double/add_1.c + +add_1.c SAFE -regression-tests/double/add_2.c +add_2.c UNSAFE -regression-tests/double/add_3.c +add_3.c UNSAFE -regression-tests/double/div_1.c +div_1.c SAFE -regression-tests/double/div_2.c +div_2.c UNSAFE -regression-tests/double/div_3.c +div_3.c SAFE -regression-tests/double/init_1.c +init_1.c SAFE -regression-tests/double/init_2.c +init_2.c SAFE -regression-tests/double/mul_1.c +mul_1.c SAFE -regression-tests/double/mul_2.c +mul_2.c UNSAFE -regression-tests/double/loop_1.c +loop_1.c SAFE -regression-tests/double/loop_2.c +loop_2.c UNSAFE -regression-tests/double/sub_1.c +sub_1.c SAFE -regression-tests/double/sub_2.c +sub_2.c UNSAFE diff --git a/regression-tests/double/runtests b/regression-tests/double/runtests index ac3fe66f..266ed438 100755 --- a/regression-tests/double/runtests +++ b/regression-tests/double/runtests @@ -1,21 +1,21 @@ #!/bin/sh -LAZABS=./tri +LAZABS=../../tri -TESTS="regression-tests/double/add_1.c \ - regression-tests/double/add_2.c \ - regression-tests/double/add_3.c \ - regression-tests/double/div_1.c \ - regression-tests/double/div_2.c \ - regression-tests/double/div_3.c \ - regression-tests/double/init_1.c \ - regression-tests/double/init_2.c \ - regression-tests/double/mul_1.c \ - regression-tests/double/mul_2.c \ - regression-tests/double/loop_1.c \ - regression-tests/double/loop_2.c \ - regression-tests/double/sub_1.c \ - regression-tests/double/sub_2.c " +TESTS="add_1.c \ + add_2.c \ + add_3.c \ + div_1.c \ + div_2.c \ + div_3.c \ + init_1.c \ + init_2.c \ + mul_1.c \ + mul_2.c \ + loop_1.c \ + loop_2.c \ + sub_1.c \ + sub_2.c " for name in $TESTS; do echo diff --git a/regression-tests/float/Answers b/regression-tests/float/Answers index 4f68ebf2..1aafa6b6 100644 --- a/regression-tests/float/Answers +++ b/regression-tests/float/Answers @@ -1,38 +1,39 @@ -regression-tests/float/add_1.c + +add_1.c SAFE -regression-tests/float/add_2.c +add_2.c SAFE -regression-tests/float/add_3.c +add_3.c UNSAFE -regression-tests/float/div_1.c +div_1.c SAFE -regression-tests/float/div_2.c +div_2.c SAFE -regression-tests/float/init_1.c +init_1.c SAFE -regression-tests/float/init_2.c +init_2.c SAFE -regression-tests/float/loop_1.c +loop_1.c SAFE -regression-tests/float/loop_2.c +loop_2.c UNSAFE -regression-tests/float/mul_1.c +mul_1.c SAFE -regression-tests/float/mul_2.c +mul_2.c UNSAFE -regression-tests/float/sub_1.c +sub_1.c SAFE -regression-tests/float/sub_2.c +sub_2.c UNSAFE diff --git a/regression-tests/float/example.c b/regression-tests/float/example.c new file mode 100644 index 00000000..062f5bf5 --- /dev/null +++ b/regression-tests/float/example.c @@ -0,0 +1,10 @@ +int main() { + int x = 0; + int y = 3; + while(x <= 2) { + x++; + y = x; + } + assert(x==y); +} + diff --git a/regression-tests/float/runtests b/regression-tests/float/runtests index c53f4e71..f5bdf376 100755 --- a/regression-tests/float/runtests +++ b/regression-tests/float/runtests @@ -1,20 +1,20 @@ #!/bin/sh -LAZABS=./tri +LAZABS=../../tri -TESTS="regression-tests/float/add_1.c \ - regression-tests/float/add_2.c \ - regression-tests/float/add_3.c \ - regression-tests/float/div_1.c \ - regression-tests/float/div_2.c \ - regression-tests/float/init_1.c \ - regression-tests/float/init_2.c \ - regression-tests/float/loop_1.c \ - regression-tests/float/loop_2.c \ - regression-tests/float/mul_1.c \ - regression-tests/float/mul_2.c \ - regression-tests/float/sub_1.c \ - regression-tests/float/sub_2.c " +TESTS="add_1.c \ + add_2.c \ + add_3.c \ + div_1.c \ + div_2.c \ + init_1.c \ + init_2.c \ + loop_1.c \ + loop_2.c \ + mul_1.c \ + mul_2.c \ + sub_1.c \ + sub_2.c " for name in $TESTS; do echo diff --git a/regression-tests/long_double/Answers b/regression-tests/long_double/Answers index 0a38d072..558203ff 100644 --- a/regression-tests/long_double/Answers +++ b/regression-tests/long_double/Answers @@ -1,42 +1,42 @@ -regression-tests/double/add_1.c +add_1.c SAFE -regression-tests/double/add_2.c +add_2.c SAFE -regression-tests/double/div_1.c -SAFE +add_3.c +UNSAFE -regression-tests/double/div_2.c +div_1.c SAFE -regression-tests/double/mul_1.c -SAFE +div_2.c +UNSAFE -regression-tests/double/mul_2.c +mul_1.c SAFE -regression-tests/double/nan.c +mul_2.c UNSAFE -regression-tests/double/nan_range.c +loop_1.c SAFE -regression-tests/double/sub_1.c -SAFE +loop_2.c +UNSAFE -regression-tests/double/sub_2.c +sub_1.c SAFE -regression-tests/double/int_plus_double.c -SAFE +sub_2.c +UNSAFE -regression-tests/double/init_1.c +init_1.c SAFE -regression-tests/double/init_2.c +init_2.c SAFE -regression-tests/double/init_3.c +init_3.c UNSAFE diff --git a/regression-tests/long_double/div_2.c b/regression-tests/long_double/div_2.c index e1a13a19..af8d9bc1 100644 --- a/regression-tests/long_double/div_2.c +++ b/regression-tests/long_double/div_2.c @@ -1,6 +1,6 @@ int main () { long double a = 4.0l; long double b = 0.5l; - assert(a/b== 8.01l); + assert(a/b== 9.0l); return 0; } diff --git a/regression-tests/long_double/runtests b/regression-tests/long_double/runtests index d3aa470a..8e76caf8 100755 --- a/regression-tests/long_double/runtests +++ b/regression-tests/long_double/runtests @@ -1,21 +1,21 @@ #!/bin/sh -LAZABS=./tri +LAZABS=../../tri -TESTS="regression-tests/long_double/add_1.c \ - regression-tests/long_double/add_2.c \ - regression-tests/long_double/add_3.c \ - regression-tests/long_double/div_1.c \ - regression-tests/long_double/div_2.c \ - regression-tests/long_double/mul_1.c \ - regression-tests/long_double/mul_2.c \ - regression-tests/long_double/loop_1.c \ - regression-tests/long_double/loop_2.c \ - regression-tests/long_double/sub_1.c \ - regression-tests/long_double/sub_2.c \ - regression-tests/long_double/init_1.c \ - regression-tests/long_double/init_2.c \ - regression-tests/long_double/init_3.c" +TESTS="add_1.c \ + add_2.c \ + add_3.c \ + div_1.c \ + div_2.c \ + mul_1.c \ + mul_2.c \ + loop_1.c \ + loop_2.c \ + sub_1.c \ + sub_2.c \ + init_1.c \ + init_2.c \ + init_3.c" for name in $TESTS; do echo diff --git a/regression-tests/runalldirs b/regression-tests/runalldirs index b8f02b7a..8fed6b26 100755 --- a/regression-tests/runalldirs +++ b/regression-tests/runalldirs @@ -17,4 +17,7 @@ set -e ./rundir math-arrays "" -assert -dev -t:60 ./rundir quantifiers "" -assert -dev -t:60 ./rundir interpreted-predicates "" -assert -dev -t:60 +./rundir float "" -assert -dev -t:60 +./rundir double "" -assert -dev -t:60 +./rundir long_double "" -assert -dev -t:60 #./rundir ParametricEncoder "" From 42d471b815f8f520f303e82547b9d050c6ddb47d Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Wed, 18 Oct 2023 15:55:14 +0200 Subject: [PATCH 27/28] all tests pass --- src/tricera/Main.scala | 33 +++++++++++++++------------------ 1 file changed, 15 insertions(+), 18 deletions(-) diff --git a/src/tricera/Main.scala b/src/tricera/Main.scala index 399ea3fa..7e21e574 100644 --- a/src/tricera/Main.scala +++ b/src/tricera/Main.scala @@ -34,6 +34,7 @@ import hornconcurrency.ParametricEncoder import java.io.{FileOutputStream, PrintStream} import lazabs.horn.bottomup.HornClauses.Clause +import lazabs.horn.bottomup.Util.DagNode import tricera.concurrency.{CCReader, TriCeraPreprocessor} import lazabs.prover._ import tricera.Util.SourceInfo @@ -135,14 +136,18 @@ class Main (args: Array[String]) { val cppFileName = if (cPreprocessor) { val preprocessedFile = File.createTempFile("tri-", ".i") System.setOut(new PrintStream(new FileOutputStream(preprocessedFile))) - val cmdLine = Seq("cpp", fileName, "-E", "-P", "-CC") - try Process(cmdLine) ! + val cmdLine = "cpp " + fileName + " -E -P -CC" + try { + cmdLine ! + } catch { case _: Throwable => - throw new Main.MainException("The C preprocessor could not" + - " be executed (option -cpp). This might be due cpp not being " + - "installed in the system.\n" + "Attempted command: " + - cmdLine.mkString(" ")) + throw new Main.MainException("The preprocessor could not" + + " be executed. This might be due to TriCera preprocessor binary " + + "not being in the current directory. Alternatively, use the " + + "-noPP switch to disable the preprocessor.\n" + + "Preprocessor command: " + cmdLine + ) } preprocessedFile.deleteOnExit() preprocessedFile.getAbsolutePath @@ -387,19 +392,11 @@ class Main (args: Array[String]) { val verificationLoop = try { Console.withOut(outStream) { - new hornconcurrency.VerificationLoop( - system = smallSystem, - initialInvariants = null, - printIntermediateClauseSets = printIntermediateClauseSets, - fileName = fileName + ".smt2", - expectedStatus = expectedStatus, - log = needFullSolution, + new hornconcurrency.VerificationLoop(smallSystem, null, + printIntermediateClauseSets, fileName + ".smt2", + expectedStatus = expectedStatus, log = needFullSolution, templateBasedInterpolation = templateBasedInterpolation, - templateBasedInterpolationTimeout = templateBasedInterpolationTimeout, - symbolicExecutionEngine = symexEngine, - symbolicExecutionDepth = symexMaxDepth, - logSymbolicExecution = log - ) + templateBasedInterpolationTimeout = templateBasedInterpolationTimeout) } } catch { case TimeoutException => { From 057cdba235363a7fd170ee4463feeb7334e9aefe Mon Sep 17 00:00:00 2001 From: dannem1337 Date: Thu, 26 Oct 2023 19:21:54 +0200 Subject: [PATCH 28/28] changes according to review --- .attach_pid35637 | 0 .attach_pid36050 | 0 .attach_pid36174 | 0 .attach_pid36588 | 0 .attach_pid36675 | 0 .attach_pid38045 | 0 .gitignore | 1 + acsl-parser/acsl-parser.jar | Bin 204621 -> 206131 bytes regression-tests/float/industrial_tricera.c | 0 src/tricera/concurrency/CCReader.scala | 339 +----------------- src/tricera/concurrency/Floating-Point.scala | 337 +++++++++++++++++ .../ccreader/CCBinaryExpressions.scala | 3 + src/tricera/concurrency/ccreader/CCType.scala | 4 +- .../concurrency/CCReaderCollectVarDecls.scala | 4 +- .../concurrency/float2fractionTest.scala | 2 +- 15 files changed, 352 insertions(+), 338 deletions(-) delete mode 100644 .attach_pid35637 delete mode 100644 .attach_pid36050 delete mode 100644 .attach_pid36174 delete mode 100644 .attach_pid36588 delete mode 100644 .attach_pid36675 delete mode 100644 .attach_pid38045 delete mode 100644 regression-tests/float/industrial_tricera.c create mode 100644 src/tricera/concurrency/Floating-Point.scala diff --git a/.attach_pid35637 b/.attach_pid35637 deleted file mode 100644 index e69de29b..00000000 diff --git a/.attach_pid36050 b/.attach_pid36050 deleted file mode 100644 index e69de29b..00000000 diff --git a/.attach_pid36174 b/.attach_pid36174 deleted file mode 100644 index e69de29b..00000000 diff --git a/.attach_pid36588 b/.attach_pid36588 deleted file mode 100644 index e69de29b..00000000 diff --git a/.attach_pid36675 b/.attach_pid36675 deleted file mode 100644 index e69de29b..00000000 diff --git a/.attach_pid38045 b/.attach_pid38045 deleted file mode 100644 index e69de29b..00000000 diff --git a/.gitignore b/.gitignore index c2b3656d..c219f17d 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,4 @@ preprocessor/build tri-pp *.swp *.swo +.attach_pid* diff --git a/acsl-parser/acsl-parser.jar b/acsl-parser/acsl-parser.jar index 825570fbe46a4ef0bdb86198370da31558f84655..f25157d5fc2c9b833117bbfe44e1a2cfc505af37 100644 GIT binary patch literal 206131 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�Ni%2UUU~E?R~I)kHR6 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