Commit Graph

2331 Commits

Author SHA1 Message Date
Andrey Breslav 97319808b6 Detecting tail calls through CFA 2013-12-06 00:28:12 +04:00
Andrey Breslav 0316e6cb8d Indirect tests for tail call diagnostics removed 2013-12-06 00:28:10 +04:00
Andrey Breslav 94500bd968 Use codegen box tests for tail calls as diagnostic tests too 2013-12-06 00:28:04 +04:00
Andrey Breslav bb6ceffbbb Missing tests added 2013-12-06 00:27:31 +04:00
Andrey Breslav c70a54306f Rename directory for back-end tests 2013-12-05 23:53:08 +04:00
Andrey Breslav fe00b03279 Rename directory for diagnostic tests 2013-12-05 23:53:07 +04:00
Sergey Mashkov fb0ec573e0 Tests for JVM back-end support of tail-call optimization 2013-12-05 23:53:07 +04:00
Sergey Mashkov 1c81102941 Tail-call detection support in the front-end 2013-12-05 23:53:05 +04:00
Svetlana Isakova 8e27877817 check definite return in local functions 2013-12-05 15:51:57 +04:00
Natalia Ukhorskaya 27e602133d Small fixes after review: do not set is_pure=true for named constants refactoring 2013-12-05 15:23:41 +04:00
Natalia Ukhorskaya 155cbbfc02 Add evaluator for java property initializer 2013-12-05 15:23:40 +04:00
Natalia Ukhorskaya e5a3518248 Parse longs with 'L' suffix. Report error if 'l' used. 2013-12-05 15:23:40 +04:00
Natalia Ukhorskaya b6ce6c5e5a Parse floats with 'F' or 'f' suffix 2013-12-05 15:22:01 +04:00
Natalia Ukhorskaya e805478d6c Get call expression type from compile time value if possible 2013-12-05 15:22:00 +04:00
Natalia Ukhorskaya 17152c39e0 Tear down for test 2013-12-05 15:21:59 +04:00
Natalia Ukhorskaya 53a5264aaf Use type from compile time value for binary expression 2013-12-05 15:21:58 +04:00
Natalia Ukhorskaya cbcca6c08e Support IntegerValueTypeConstant in java backend 2013-12-05 15:21:57 +04:00
Natalia Ukhorskaya 2a023c16a9 Use type from compile time value for prefix expression 2013-12-05 15:21:55 +04:00
Natalia Ukhorskaya 9c176ddaa8 Warning for integer overflow 2013-12-05 15:21:55 +04:00
Natalia Ukhorskaya d63f6843c8 Merge ConstantExpressionEvaluator and CompileTimeConstantResolver 2013-12-05 15:21:50 +04:00
Natalia Ukhorskaya e6923ba29e create StringValue only for primitive compile time values 2013-12-05 15:20:23 +04:00
svtk 1bd63fefa4 Support equlas in ConstantExpressionEvaluator 2013-12-05 15:20:14 +04:00
Natalia Ukhorskaya 96dc8b42bb Support for unary expressions 2013-12-05 15:20:08 +04:00
Natalia Ukhorskaya b7b957ffd2 Deparentesize expression in ConstantExpressionEvaluator 2013-12-05 15:19:58 +04:00
Natalia Ukhorskaya 210899af22 Support && and || in ConstantExpressionEvaluator 2013-12-05 15:19:55 +04:00
Natalia Ukhorskaya f8f55799b9 Support or, and, xor and etc in ConstantExpressionEvaluator 2013-12-05 15:19:49 +04:00
Natalia Ukhorskaya 41387c3544 Support plus, minus, div, mod, multiply in ConstantExpressionEvaluator 2013-12-05 15:19:46 +04:00
Natalia Ukhorskaya 50d29e0526 Support string templates in ConstantExpressionEvaluator 2013-12-05 15:19:37 +04:00
Natalia Ukhorskaya 0b1dd2d2be Support toInt, toChar and etc as CompileTimeConstants 2013-12-05 15:19:26 +04:00
Natalia Ukhorskaya f218bd1df2 Add NotNull annotations 2013-12-05 15:19:23 +04:00
Natalia Ukhorskaya 9dcee96734 Move test methods to separate class 2013-12-05 15:19:22 +04:00
Natalia Ukhorskaya c437b8c4dc Rename files 2013-12-05 15:19:22 +04:00
Andrey Breslav 9efa604cff Revert 4ca90e9c68 2013-12-05 14:04:50 +04:00
Andrey Breslav 4ca90e9c68 Proper instructions for elvis operator
We should not mark elvis operator unused, for the rhs may have desired side-effects
2013-12-05 13:28:41 +04:00
Andrey Breslav 3629a539e4 Smoke test data fixed 2013-12-05 13:28:40 +04:00
Andrey Breslav 6df3a3042c Properly handle the case of backing field access qualified with 'this' reference 2013-12-05 13:28:40 +04:00
Andrey Breslav 5b3bc7f839 Print instructions for functions in classes 2013-12-05 13:28:40 +04:00
Andrey Breslav 853ebe3436 Do not print trailing whitespace in test data 2013-12-05 13:28:39 +04:00
Andrey Breslav e09d3aab3a Test for CFA in string templates 2013-12-05 13:28:39 +04:00
Andrey Breslav 11fcd64949 Mark expressions for correct recognition by "unreachable code" 2013-12-05 13:02:17 +04:00
Andrey Breslav 6a4043c9a0 Do not display trivial sets of next/previous instructions in test data
For better readability of test failures
2013-12-05 13:02:17 +04:00
Andrey Breslav e8c94a9d1d Do not generate call for elvis + move dead code tests 2013-12-05 13:02:17 +04:00
Andrey Breslav e0cf73d989 Do not forget to process rhs on unsupported lhs 2013-12-05 13:02:16 +04:00
Andrey Breslav 28acbcb219 Using call for set on an indexed expression in lvalue position 2013-12-05 13:02:15 +04:00
Andrey Breslav a5854560f0 Proper order of arguments in array setter calls 2013-12-05 13:02:15 +04:00
Andrey Breslav 163e5cfbb4 Properly process this in callee position 2013-12-05 13:02:15 +04:00
Andrey Breslav b15b075484 Tests for bug in CFA: no return in when() is now detected 2013-12-05 13:02:15 +04:00
Andrey Breslav ec39105183 Type parameter is not an expression: no need to report 'unused expression' on it 2013-12-05 13:02:14 +04:00
Andrey Breslav b5ae3adf77 Proper resolved calls for '==' 2013-12-05 13:02:14 +04:00
Andrey Breslav 87b6ec4990 Proper read instructions for function literals 2013-12-05 13:02:14 +04:00