[Tizen] Enable Linq expressions interpreter instead of compiler for tests
authorGleb Balykov <g.balykov@samsung.com>
Mon, 29 Nov 2021 19:12:10 +0000 (22:12 +0300)
committerGleb Balykov <g.balykov@samsung.com>
Tue, 27 Sep 2022 12:50:22 +0000 (15:50 +0300)
commit3c9b3276e382b7ddf4fc5cf4e0a278ac5a4bf5ec
treec9291985f9fb57e937fe493bc1d2a759e1ed3a9c
parent57e9eb3c65ac6fa7cf3cb5bb88b4177ff061ad50
[Tizen] Enable Linq expressions interpreter instead of compiler for tests

Limitations of linq expressions interpreter:
- can't get IL for interpreted linq expressions (see `VerifyIL` on how to get IL code), because it either won't match, or exception will happen because method is not dynamic; besides, there's actually no IL for interpreted expression, interpreter has its own internal representation
- target of Delegate returned by interpreter can't be casted to Closure (see VerifyEmitConstantsToIL<T> in CompilerTests.cs)
- aliased byref parameters are not supported with interpreted linq expressions (https://github.com/dotnet/runtime/issues/19286)
- interpreting TryExpression that is inside the Filter expression of a CatchBlock of another TryExpression works in interpreter, but throws in compiler (https://github.com/dotnet/runtime/issues/20083)
- analysis of Quote expression is a bit different for interpreter (see AssertIsBox<T> in UnaryQuoteTests.cs)
- with disabled FEATURE_DLG_INVOKE and FEATURE_FAST_CREATE if TypeMissing is used in linq expression, then exception is thrown (https://github.com/dotnet/runtime/issues/15553), this is fixed if these features are enabled
src/libraries/Microsoft.CSharp/tests/DefaultParameterTests.cs
src/libraries/System.Linq.Expressions/tests/BinaryOperators/Coalesce/BinaryCoalesceTests.cs
src/libraries/System.Linq.Expressions/tests/CompilerTests.cs
src/libraries/System.Linq.Expressions/tests/ExceptionHandling/ExceptionHandlingExpressions.cs
src/libraries/System.Linq.Expressions/tests/HelperTypes.cs
src/libraries/System.Linq.Expressions/tests/Lambda/LambdaTests.cs
src/libraries/System.Linq.Expressions/tests/New/NewWithByRefParameterTests.cs
src/libraries/System.Linq.Expressions/tests/StackSpillerTests.cs
src/libraries/System.Linq.Expressions/tests/Unary/UnaryArithmeticNegateCheckedNullableTests.cs
src/libraries/System.Linq.Expressions/tests/Unary/UnaryArithmeticNegateCheckedTests.cs
src/libraries/System.Linq.Expressions/tests/Unary/UnaryQuoteTests.cs