Commit Graph

45134 Commits

Author SHA1 Message Date
Dmitry Jemerov fc2d29b85b simple way to generate short-circuit boolean && and || 2011-04-08 20:23:01 +02:00
Dmitry Jemerov f8acb78f01 inline some test code snippets 2011-04-08 20:07:45 +02:00
Dmitry Jemerov e9d49c76de cleanup types of cmp 2011-04-08 20:05:42 +02:00
Dmitry Jemerov a83643c5e2 Revert "more sane types for StackValue.cmp()"
This reverts commit 5bebb848b6.

Conflicts:

	idea/src/org/jetbrains/jet/codegen/StackValue.java
2011-04-08 20:03:42 +02:00
Dmitry Jemerov 5a0a03c1e4 Revert "refactored conditional jump generation to enable and/or generation"
This reverts commit b74bdb9cfd.
2011-04-08 20:02:26 +02:00
Dmitry Jemerov b74bdb9cfd refactored conditional jump generation to enable and/or generation 2011-04-08 19:52:55 +02:00
Dmitry Jemerov 6c1bda7f5a generate boolean not 2011-04-08 18:57:54 +02:00
Dmitry Jemerov 5bebb848b6 more sane types for StackValue.cmp() 2011-04-08 18:38:41 +02:00
Dmitry Jemerov 4953608fb5 generate post-increment and post-decrement 2011-04-08 17:52:13 +02:00
Dmitry Jemerov 2eea2a6d9f generate augmented assignments to local variables 2011-04-08 16:58:04 +02:00
Dmitry Jemerov 639dd0f53a guava ftw 2011-04-08 16:38:04 +02:00
Dmitry Jemerov 99bf967981 couple of tests for mixed types in math operations 2011-04-08 16:38:03 +02:00
Dmitry Jemerov 018bb9d701 somehow generate .inv() (not really robust) 2011-04-08 16:38:03 +02:00
Andrey Breslav 3b080bba14 null checks added 2011-04-08 17:24:52 +04:00
Andrey Breslav f338f84813 Diagnostics for impossible/useless casts 2011-04-08 16:10:27 +04:00
Andrey Breslav 85f0c03708 Safe casts supported 2011-04-08 15:52:13 +04:00
Dmitry Jemerov 6b1f435b99 bitwise operations 2011-04-07 18:51:03 +02:00
Dmitry Jemerov 2ce07a5ee2 pre-increment, pre-decrement 2011-04-07 18:34:03 +02:00
Andrey Breslav 5b2200a04e Merge remote branch 'origin/master' 2011-04-07 20:27:11 +04:00
Andrey Breslav 7e43c6da24 Bitwise operations for Ints and Longs 2011-04-07 20:27:00 +04:00
Dmitry Jemerov c084bdc4e8 failing test for unary minus 2011-04-07 18:03:25 +02:00
Andrey Breslav 566f7cd6b5 Conventions for ++/-- support Unit-returning inc/dec functions 2011-04-07 19:51:02 +04:00
Dmitry Jemerov 39a6b63f0a cast for value on stack 2011-04-07 17:07:53 +02:00
Dmitry Jemerov 812d2a185b casts for constants 2011-04-07 17:07:53 +02:00
Dmitry Jemerov 365c9af59e map the remaining primitive PSI types to ASM 2011-04-07 17:07:52 +02:00
Dmitry Jemerov 6cbd5ab457 dead code 2011-04-07 17:07:52 +02:00
Dmitry Jemerov 3250b8cfa9 boxing for variables 2011-04-07 17:07:52 +02:00
Dmitry Jemerov a053bda91b boxing for constants 2011-04-07 17:07:51 +02:00
Dmitry Jemerov 16d475249f long cmp 2011-04-07 17:07:51 +02:00
Dmitry Jemerov 807b669b4b Double 2011-04-07 17:07:50 +02:00
Dmitry Jemerov 5b5e8119b5 Float 2011-04-07 17:07:50 +02:00
Dmitry Jemerov b6a078a562 Char 2011-04-07 17:07:50 +02:00
Dmitry Jemerov cd3ed17e25 ASM is smart enough to put all kinds of constants on stack, no need for custom logic 2011-04-07 17:07:49 +02:00
Dmitry Jemerov 2781aa18ff == for Short 2011-04-07 17:07:49 +02:00
Andrey Breslav 6f3b9fe37d Cleanup 2011-04-07 18:34:35 +04:00
Andrey Breslav fde6a6f60f Better support for number ranges, still not perfect 2011-04-07 18:30:18 +04:00
Andrey Breslav 53e4c863e7 More tests for return types 2011-04-07 18:09:29 +04:00
Andrey Breslav f99472e9dd Tests for return types
Transformation for Java boxed types
Lexer fixed for hexadecimal doubles
Longs detected from literals
compareTo with self defined for numbers (working around an unsupported case)
2011-04-07 17:39:40 +04:00
Dmitry Jemerov 3cc3f374b9 failing test for < on Byte 2011-04-07 14:58:11 +02:00
Dmitry Jemerov 339dbbdc8c put IntCompare on stack 2011-04-07 14:56:17 +02:00
Dmitry Jemerov 230987392b Byte 2011-04-07 14:49:15 +02:00
Dmitry Jemerov 68d3c7a64f fix assertion 2011-04-07 14:45:49 +02:00
Dmitry Jemerov df0a2fb62f Short 2011-04-07 14:27:02 +02:00
Dmitry Jemerov 72eda24f62 failing test for Java Integer to Int? mapping 2011-04-07 14:20:08 +02:00
Dmitry Jemerov 5f2aa9e1f7 failing test for long comparison 2011-04-07 14:17:23 +02:00
Dmitry Jemerov 561bcee4e2 long arithmetics initial 2011-04-07 14:13:00 +02:00
Dmitry Jemerov 66cfb99ce9 failing test for int boxing 2011-04-07 13:41:47 +02:00
Dmitry Jemerov 9a00e73e64 condjump for boolean value on stack 2011-04-07 13:32:59 +02:00
Dmitry Jemerov b722300db7 >= 2011-04-07 13:21:28 +02:00
Dmitry Jemerov 0af4b3b4c1 correctly generate != 2011-04-07 12:49:31 +02:00