Vitaly
fe047f9b47
[JS BE] mutes tests for JS_IR_ES6, which muted for JS_IR
2020-05-27 00:32:56 +03:00
Mark Punzalan
b74652aa5b
[FIR] Use ieee754equals for floating-point equality operations
2020-04-23 11:50:54 +03:00
Mark Punzalan
d4cbfcb79e
[FIR] Promote numeric types during comparisons
...
Added support for comparing platform types. Extracted logic to convert
operator expressions to OperatorExpressionGenerator.
2020-04-14 11:51:30 +03:00
Jinseong Jeon
c370b86141
IR: consolidate generation of synthetic members for data class
2020-04-13 17:30:05 +03:00
Mikhail Glukhikh
ed6c9e67a1
FIR2IR: convert qualifiers to companion objects, if any
2020-03-10 15:19:34 +03:00
Mikhail Glukhikh
d5fbd93fe6
Unmute additional FIR black box tests
...
This was result of comparison commits together (?) with override commits
2020-02-28 15:29:03 +03:00
Denis Zharkov
8fca343ef0
FIR: Support FirComparisonOperator in Fir2Ir
...
^KT-31163 Fixed
2020-02-27 18:21:34 +03:00
Mads Ager
e8a640851a
FIR: Change the Fir2Ir handling of smart casts.
...
Generate the expression with the original type and then insert
an implicit conversion. That matches the behavior of psi2ir
better and therefore avoids breaking backend assumptions.
In particular, IrGetValue expects the type of the underlying
symbol and the type of the IrGetValue to be the same.
2020-01-31 09:31:52 +01:00
Mark Punzalan
692a83f7bb
[FIR] Add FirCheckNotNullCall converted to CHECK_NOT_NULL intrinsic
...
function call.
2019-12-11 16:54:15 +03:00
Dmitriy Novozhilov
b76c984b26
[FIR] Support IntegerLiteralTypes
2019-12-09 17:24:26 +03:00
Mikhail Glukhikh
9c9cf2086d
Unmute recently fixed FIR black box tests
2019-11-19 11:00:10 +03:00
Mark Punzalan
9df2f69f09
[FIR] Disable failing blackbox codegen tests for FIR.
2019-11-19 11:00:09 +03:00
Kristoffer Andersen
8561f08f06
[JVM_IR] Reintroduce non-IEEE comparisons
...
- Ieee754Equality and PrimitiveComparisons intrinsics
respects absence of -Xproper-ieee754-comparisons, unmuted tests to
show.
2019-11-08 12:58:31 +01:00
Alexander Udalov
c3729c8189
Reorganize codegen tests for old language versions
...
Put all files under a single "oldLanguageVersions" directory under test
data of each test
2019-11-07 18:49:27 +01:00
Kristoffer Andersen
8af3b3e51e
[Backend] Reorganize version 1.0 codegen tests
...
- Extract all backend codegen tests that specifically target behaviour
in to-be-deprecated functionality from language versions < 1.3"
- Remove those tests from the JVM IR test suite.
2019-10-24 16:51:19 +02:00
Ting-Yuan Huang
9fc869397d
IrBuiltins: refactoring for equality checks
...
Previously,
* Equals performs IEEE 754 equality check for floating points and
byte-to-byte checks for other types, including references.
* Ieee754Equals performs IEEE 754 for primitive types
* TotalOrderEquals performs total order equals to all types, including
floating points.
Now it is simplified,
* Equals performs total order checks for all types.
* Ieee754Equals performs IEEE 754 for primitive types.
* (TotalOrderEquals is removed.)
2019-04-02 13:16:31 +02:00
Ting-Yuan Huang
4ff2825de0
Fix an assertion for type parameters
2019-03-26 10:44:06 +03:00
Svyatoslav Kuzmich
0504635254
Remove -ProperIeee754Comparisons test directive duplicate
2019-03-25 15:55:06 +03:00
Svyatoslav Kuzmich
70ef0e9431
Add '-ProperIeee754Comparisons' to some tests and disable them in JS_IR
2019-03-25 12:57:26 +03:00
Dmitry N. Petrov
c2a0e73a79
Merge pull request #2207 from ting-yuan/ieee754improper
...
Label improper IEEE 754 tests.
2019-03-25 12:10:59 +03:00
Ting-Yuan Huang
caccb79324
Label improper IEEE 754 tests.
...
Those tests don't expect ProperIeee754Comparisons.
See KT-22723 for details.
2019-03-22 11:07:35 -07:00
Svyatoslav Kuzmich
8429734a67
[JS IR BE] Disable -ProperIeee754Comparisons tests
2019-03-22 13:49:37 +03:00
Roman Artemev
2ccd093099
Update test data
2019-03-04 23:24:18 +03:00
Mikhail Zarechenskiy
bcc720f1db
[NI] Run arguments checker before outer call checker
...
This is needed because arguments checker updates unsubstituted and
non-denotable types (type variables, IntegerValueType...)
#KT-28718 Fixed
2019-01-15 13:14:41 +03:00
Alexander Udalov
0871a3cc4d
Use API_VERSION instead of LANGUAGE_VERSION in IEEE754 tests
...
See `ExpressionCodegen.genEqualsForExpressionsPreferIeee754Arithmetic`:
the behavior here actually depends on the API version, not any language
feature
2018-12-20 12:53:22 +01:00
Svyatoslav Kuzmich
4c38d55f21
[JS IR BE] Unmute tests
2018-10-15 00:03:45 +03:00
Svyatoslav Kuzmich
c7bde6a5e6
[JS IR BE] Fix runtime compareTo(Number, Long)
2018-10-10 17:27:36 +03:00
Svyatoslav Kuzmich
b79dcbe8e6
[JS IR BE] Refactor equals and compareTo lowering
2018-09-24 18:21:57 +03:00
Anton Bannykh
2e709a81fa
[JS IR BE] Arrays, varargs
2018-09-18 14:36:20 +03:00
Roman Artemev
8a871b3f0c
Update tests
2018-08-31 15:34:18 +03:00
Pavel Punegov
39a65a099a
Disable IEEE754 tests with improper comparisons behaviour in Native
2018-08-28 13:48:44 +03:00
Pavel Punegov
2ff6047845
Update ignore tag for Native backend
2018-08-28 13:48:43 +03:00
Zalim Bashorov
3f0b31dc23
Speed up JS IR BE tests compiling the common parts (runtime + test common utils) once (on demand) and sharing the result between tests
...
It's a temporary hack until we implement IR based library format.
It relies on the fact that currently, IR BE generates stable (enough) names.
2018-07-13 23:42:41 +03:00
Anton Bannykh
d042038045
JS IR: mute tests with language version 1.0
...
Long.rem declaration doesn't compile
2018-07-12 14:18:34 +03:00
Anton Bannykh
07b3b66fd9
JS IR: unmute tests
2018-07-10 13:34:19 +03:00
Svyatoslav Kuzmich
83f8cfaa66
[JS IR BE] hashCode, toString, number conversion support
2018-07-03 19:51:58 +03:00
Mikhael Bogdanov
e149cbe852
Mute failed jvm ir tests
2018-06-28 12:26:41 +02:00
Roman Artemev
6ac4fd2e5f
[JS IR BE] Update test data
2018-06-14 19:54:30 +03:00
Anton Bannykh
96355e2732
JS IR: mute codegen box tests automatically
2018-06-09 19:15:38 +03:00
Anton Bannykh
d0e71acaa5
JS: fix NaN bug workaround
2018-03-26 20:07:00 +03:00
Anton Bannykh
3a7518cad2
Implemented equality comparison for primitive types
2018-03-26 20:07:00 +03:00
Anton Bannykh
ed80252ba8
JS: fix double compareTo behaviour for NaN and +-0 (KT-22723)
2018-02-28 15:01:58 +03:00
Dmitry Petrov
8bfbbe456f
Use NoScopeRecordCliBindingTrace for codegen tests
2018-02-15 16:40:26 +03:00
Dmitry Petrov
839ebba157
ProperNumberComparisons is disabled by default (until LDC decision)
2018-02-13 09:26:00 +03:00
Dmitry Petrov
a790195808
Implement "proper numeric comparisons" support in JVM BE
2018-02-13 09:25:40 +03:00
Dmitry Petrov
c46164481a
KT-15871 Unnecessary boxing for equality operator on inlined primitive values
...
Allow kotlin.jvm.internal.Intrinsics#areEqual for boxed values.
Rewrite to primitive equality.
NB we can't do that for Float and Double, because java.lang.Float#equals
and java.lang.Double#equals behave differently from primitive equality comparisons.
2017-03-13 09:04:31 +03:00
Anton Bannykh
9e5ecc11b7
JS: fixed Double.NaN behaviour (KT-13610).
2017-03-02 14:29:50 +03:00
Mikhael Bogdanov
5cffb3892d
Added intrinsics for nullable Double/Float equals check
2017-02-02 16:31:49 +01:00
Mikhael Bogdanov
a2c5c94ee6
Fix for KT-15868: NPE when comparing nullable doubles
...
#KT-15868 Fixed
2017-02-01 17:43:56 +01:00
Mikhael Bogdanov
627dd66ed5
New ieee754 arithmetic, Fix for KT-14651: Floating point comparisons shall operate according to IEEE754
2016-12-09 09:48:46 +01:00