32 Commits

Author SHA1 Message Date
Noah
0fddb046dd Update cranelift dependencies 2020-12-05 16:36:37 -06:00
Noah
6c52c5c6d4 Update jit to use new instructions 2020-12-05 16:36:37 -06:00
Noah
8b0e806e39 Fix rustpython-jit to not use label_map 2020-11-23 20:10:46 -06:00
Noah
2f232ecbe3 Implement string interning for variable names 2020-11-09 15:51:57 -06:00
Noah
3ebdeb79b3 Update rustpython_jit to work with codeobj.constants vec 2020-10-19 23:55:55 -05:00
Tom Schuster
9f24797bc8 basic loop support 2020-10-17 19:37:36 +02:00
Tom Schuster
7aebbc80e1 cargo fmt 2020-10-17 17:42:02 +02:00
Tom Schuster
c4d4432666 JumpIfTrue 2020-10-17 17:42:02 +02:00
Tom Schuster
7b345d060c Add bool tests 2020-10-17 17:42:02 +02:00
Tom Schuster
d8875cb660 constant boolean 2020-10-17 17:42:02 +02:00
Tom Schuster
682107ce81 factor out LoadConst 2020-10-17 17:42:02 +02:00
Tom Schuster
70b05cf620 bool support 2020-10-17 17:42:02 +02:00
Tom Schuster
abf5ab467b implement bool conversion for float 2020-10-17 17:42:02 +02:00
Tom Schuster
80d168cc74 Implement Unary minus/plus 2020-10-17 17:42:02 +02:00
Tom Schuster
023bf6c3ba Basic block support in JIT 2020-10-17 17:42:02 +02:00
Ben Lewis
b0e97f0b6b Apply code review suggestions. 2020-09-18 19:24:43 +12:00
Ben Lewis
5ac6546e08 Add more jit tests. 2020-09-18 18:59:58 +12:00
Ben Lewis
f5082e4891 Add more jit tests, and utility to make testing it easier. 2020-09-18 18:59:58 +12:00
Ben Lewis
b79d7edb29 Fix not type checking arguments to jit function. 2020-08-31 20:19:36 +12:00
Ben Lewis
bd3c4fc320 Remove the use of MaybeUninit from jit args handling. 2020-08-30 20:11:53 +12:00
Ben Lewis
588facfc39 Move jit specific functions out of objfunction.rs into a sub module jitfunc. 2020-08-30 08:19:29 +12:00
Ben Lewis
3151d89f13 Fix clippy warnings. 2020-08-29 17:33:18 +12:00
Ben Lewis
751b54952f Fix bugs with passing arguments to jitted functions. 2020-08-29 16:01:52 +12:00
Ben Lewis
06511757dd Allow passing arguments to jitted functions. 2020-08-29 12:53:49 +12:00
Ben Lewis
c3f18a306e Use libffi to call jitted functions. 2020-08-28 19:52:04 +12:00
Noah
9598392aea Allow floats in jitted functions (#2150) 2020-08-26 08:36:56 -05:00
Ben Lewis
73f23b8dee Rename JIT to Jit 2020-08-25 07:18:46 +12:00
Ben Lewis
e70b2db78d Add jit feature when running tests, and run rustfmt. 2020-08-25 07:16:58 +12:00
Ben Lewis
c773d9f214 Use OnceCell to hold the jitted code. 2020-08-25 07:16:58 +12:00
Ben Lewis
c5c6a2c21d Add support for a few more bytecode instructions. 2020-08-25 07:16:58 +12:00
Ben Lewis
bf221bf408 Handle first couple of bytecode instructions in jit. 2020-08-25 07:16:58 +12:00
Ben Lewis
b2ab9d9bdf Initial jit prototype. 2020-08-25 07:16:58 +12:00