Introduce experimental FIR compiler #KT-31265 Fixed

This commit also includes several FIR2IR fixes which helps FIR compiler
to produce normal results
This commit is contained in:
Mikhail Glukhikh
2019-05-16 11:48:02 +03:00
parent 892419c08a
commit f4fdc66a34
42 changed files with 331 additions and 54 deletions
+1
View File
@@ -43,6 +43,7 @@ where advanced options include:
-Xreport-perf Report detailed performance statistics
-Xskip-metadata-version-check Load classes with bad metadata version anyway (incl. pre-release classes)
-Xuse-experimental=<fq.name> Enable, but don't propagate usages of experimental API for marker annotation with the given fully qualified name
-Xuse-fir Compile using Front-end IR. Warning: this feature is far from being production-ready
-Xverbose-phases Be verbose while performing these backend phases
Advanced options are non-standard and may be changed or removed without any notice.
+1
View File
@@ -107,6 +107,7 @@ where advanced options include:
-Xreport-perf Report detailed performance statistics
-Xskip-metadata-version-check Load classes with bad metadata version anyway (incl. pre-release classes)
-Xuse-experimental=<fq.name> Enable, but don't propagate usages of experimental API for marker annotation with the given fully qualified name
-Xuse-fir Compile using Front-end IR. Warning: this feature is far from being production-ready
-Xverbose-phases Be verbose while performing these backend phases
Advanced options are non-standard and may be changed or removed without any notice.
+4
View File
@@ -0,0 +1,4 @@
$TESTDATA_DIR$/firHello.kt
-Xuse-fir
-d
$TEMP_DIR$
+12
View File
@@ -0,0 +1,12 @@
fun box(): String = "OK"
class E(s: String) : Exception(s) {
}
fun main(args: Array<String>) {
if (box() == "OK") {
throw E("Hello")
}
}
+1
View File
@@ -0,0 +1 @@
OK