Commit Graph

57316 Commits

Author SHA1 Message Date
Roman Artemev 19b5d57f0e [IR PROTO] Delete unused proto.java files 2019-09-03 14:21:30 +03:00
Roman Artemev b7b951c8c8 [IR] Refactoring 2019-09-03 14:21:30 +03:00
Roman Artemev ea42eb6a5c [IR] Fix rebase 2019-09-03 14:21:29 +03:00
Roman Artemev d50eb5ce52 [IR SERIALIZATION] Make [de]serialization processes incremental
- Use local uniqID local indexation file-local
 - Rethink the way declaration is looked for
 - Store in public file index only publicly accessible symbols
 - refactor API
 - code clean up
2019-09-03 14:21:29 +03:00
Roman Artemev 96a2cc1f17 [JS IR] Clean up Declaration Table code 2019-09-03 14:21:29 +03:00
Roman Artemev f14107bf65 [IR] Sort dependencies a bit early 2019-09-03 14:21:29 +03:00
Roman Artemev 1465121266 [IR] Split declaration & descriptor tables 2019-09-03 14:21:29 +03:00
Roman Artemev a7714a5589 [JS IR BE] Split IrModule/IrFile serializers 2019-09-03 14:21:29 +03:00
Roman Artemev 15a49cf2aa [IR BE] Rename IrModuleSerializer -> IrFileSerializer 2019-09-03 14:21:29 +03:00
Roman Artemev 94a03c9cb4 [IC KLIB] Serialization infrastructure refactoring
- remove IrModule header
 - put IrDeclaration and its body into separate files
 - use only one type of IrData index
 - separate deserialization of declarations and its bodies
 - introduce FqName message
2019-09-03 14:21:29 +03:00
Roman Artemev 5a45960c04 [IR] Do not interact with file system during Ir Serialization
- make `IrModuleSerializer` produce ByteArrays with serialized data
 - isolate file system access on Klib writer
2019-09-03 14:21:28 +03:00
Mads Ager 85b1e0165b [IR] For loop lowering for CharacterSequence.indices. 2019-09-03 13:18:21 +02:00
Nikolay Krasko 63f43d9b2e Revert "Use lazySync instead of lazyPub to avoid raise on creation LightClasses"
The commit causes deadlock in 183 branch in KotlinLintTestGenerated test.

This reverts commit d6c54b84
2019-09-03 12:42:56 +03:00
Dmitry Gridin d0c02a1a34 PackageDirectoryMismatchInspection: fix exception from empty script file
#KT-33437 Fixed
2019-09-03 16:20:40 +07:00
Steven Schäfer 102a3d60e0 IR: Consistently copyAttributes in DeepCopyIrTreeWithSymbols
This was missing for IrFunctionReferences, which caused problems when
copying default parameters before CallableReferenceLowering in the
JVM_IR backend.
2019-09-02 19:55:36 +02:00
Darya Razumova 5fc6fa8619 Unregistered bunch directives and files test 2019-09-02 18:31:06 +03:00
Darya Razumova 412c562572 Updated switch usage in README 2019-09-02 18:31:06 +03:00
Nikolay Krasko 4dc4acd25f Move CoroutineNonBlockingContextChecker to common code 2019-09-02 18:31:06 +03:00
Igor Yakovlev 79a603768a UltraLight implementation for local and anonymous declarations 2019-09-02 17:42:50 +03:00
Vladimir Dolzhenko d6c54b845b Use lazySync instead of lazyPub to avoid raise on creation LightClasses 2019-09-02 15:30:08 +02:00
Nikolay Krasko b856d60575 Add required plugins for Android Studio 3.6 to runtime 2019-09-02 15:14:32 +03:00
Nikolay Krasko a6fb2bd7a7 Update to AS 3.6.0.9 2019-09-02 15:14:32 +03:00
Yanis Batura a65967a164 Mention the master branch as the target of pull requests in contributing.md. (#2533)
Also, improve grammar a bit in the same guide.
2019-09-02 14:54:31 +03:00
Mikhail Glukhikh 7eac7d96dc Fix NJ2K test related to KT-30136 2019-09-02 12:57:53 +03:00
Dmitriy Novozhilov 5b118b65fc [FIR] Tests. Update testdata broken in 9508fc60 2019-09-02 11:13:27 +03:00
Dmitriy Novozhilov 54eb4cf928 [FIR] Add synthetic else branch to when if it's missing to LightTreeFirBuilder 2019-09-02 11:12:35 +03:00
Dmitriy Novozhilov 5c29af4b53 [FIR] Tests. Update some outdated FIR testdata 2019-09-02 10:43:10 +03:00
Dmitriy Novozhilov f494e0008c [FIR] Minor. Add kdoc to FirDataFlowAnalyzer 2019-09-02 10:43:10 +03:00
Dmitriy Novozhilov 286a322b55 [FIR] Remove DummyFirDataFlowAnalyzer 2019-09-02 10:43:10 +03:00
Dmitriy Novozhilov 92acd30bd6 [FIR] Refactor Condition classes 2019-09-02 10:43:10 +03:00
Dmitriy Novozhilov 84787013dd [FIR] Fix CFG form for boolean operators 2019-09-02 10:43:10 +03:00
Dmitriy Novozhilov 63bd920f16 [FIR] Tests. Make cfg graphs more strict 2019-09-02 10:43:10 +03:00
Dmitriy Novozhilov a87891bec9 [FIR] Some control flow graph building fixes
- fix edges for `continue` and labeled return
- fix deadness for init block and properties
2019-09-02 10:43:10 +03:00
Dmitriy Novozhilov 9508fc60c9 [FIR] Remove FirUncheckedNotNullCastImpl from FIR 2019-09-02 10:43:09 +03:00
Dmitriy Novozhilov c2602fda1f [FIR] Transform all qualified access nodes with smartcasts 2019-09-02 10:43:09 +03:00
Dmitriy Novozhilov c1a8344b45 [FIR] Add forgotten nullability for receivers of safe calls 2019-09-02 10:43:09 +03:00
Dmitriy Novozhilov fd84202c08 [FIR] Add fir node for qualified access with smartcast 2019-09-02 10:43:09 +03:00
Dmitriy Novozhilov 04b6c48ae7 [FIR] Disable smartcasts to Nothing? 2019-09-02 10:43:09 +03:00
Dmitriy Novozhilov b58a03458e [FIR] Tests. Improve style of control flow graphs
Add borders to control flow graphs of different functions
Highlight enter and exit nodes of each graph
2019-09-02 10:43:09 +03:00
Dmitriy Novozhilov 7851657b98 [FIR] Store fir in DataFlowVariable 2019-09-02 10:43:09 +03:00
Dmitriy Novozhilov 163c5d699f [FIR] Pass flow to right operand of && expression 2019-09-02 10:43:09 +03:00
Dmitriy Novozhilov 59205cac13 [FIR] Tests. Add orthogonal edge routing for cfg dumps 2019-09-02 10:43:09 +03:00
Dmitriy Novozhilov b2e95eebab [FIR] Add processing of loops with constant boolean value in condition 2019-09-02 10:43:08 +03:00
Dmitriy Novozhilov a60115c452 [FIR] Fix propagating deadness for loops and when expressions 2019-09-02 10:43:08 +03:00
Dmitriy Novozhilov 006cb536e0 [FIR] Add detecting dead edges for boolean operators with consts 2019-09-02 10:43:08 +03:00
Dmitriy Novozhilov fd1347f2b7 [FIR] Tests. Add instruction for configuring tool for cfg dump viewing 2019-09-02 10:43:08 +03:00
Dmitriy Novozhilov b7e1e7704e [FIR] Tests. Change extension for testdata with cgf from .cfg.dot to .dot
Also remove cfg dumps in made with old renderer
2019-09-02 10:43:08 +03:00
Dmitriy Novozhilov 7e43a0d9ef [FIR] Add boolean constant folding for DFA 2019-09-02 10:43:08 +03:00
Dmitriy Novozhilov 78f7211587 [FIR] Add test for smartcast with return in elvis 2019-09-02 10:43:08 +03:00
Dmitriy Novozhilov 98b3901f9c [FIR] Fix bug in building cfg for || 2019-09-02 10:43:08 +03:00