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