38 Commits

Author SHA1 Message Date
Daniel O'Hear
58ebf04bac Add JIT compilation support for integer multiplication, division, and exponents (#5561)
* Initial commit for power function

* Float power jit developed

* Addded support for Floats and Ints

* Integration Testing for JITPower implementation.

* Update instructions.rs

cranelift more like painlift

* Update instructions.rs

* Update instructions.rs

* initial commit for making stable PR ready features

* fixed final edge case for compile_ipow

* fixed final edge case for compile_ipow

* commenting out compile_ipow

* fixed spelling errors

* removed unused tests

* forgot to run clippy

---------

Co-authored-by: Nicholas Paulick <paulicknicholas@gmail.com>
Co-authored-by: Nick <nick@Samanthas-MBP.wi.rr.com>
Co-authored-by: JoeLoparco <loparcojoseph@gmail.com>
Co-authored-by: Nathan Rusch <nathan.rusch@icloud.com>
Co-authored-by: dohear <daniel.ohear@marquette.edu>
2025-03-05 14:41:45 -06:00
Shubham Patil
53db70e784 Support recursion in JIT-ed functions (#5473) 2025-01-13 14:55:27 +09:00
Jeong YunWon
019496e3a8 Instruction::ReturnConst 2024-05-09 15:26:16 +09:00
Jeong, YunWon
2c3dbb5eed Merge pull request #5081 from MannarAmuthan/bool-compare
Implemented compare operation for boolean types in JIT engine
2023-10-07 22:03:50 +09:00
Amuthan Mannar
eb83b729b2 Formatted code files 2023-10-07 21:05:27 +09:00
Amuthan Mannar
b69e6a910d Added missed tests in int_tests of jit 2023-10-07 21:05:27 +09:00
Amuthan Mannar
b9ee0b6b7a Implemented compare operation for boolean and int types 2023-10-07 21:05:27 +09:00
Amuthan Mannar
f8365ca6c3 Implemented compare operation for boolean types in JIT engine 2023-10-07 21:05:27 +09:00
Amuthan Mannar
c2f159b24a Formatted code files 2023-10-07 12:34:32 +05:30
Amuthan Mannar
54d5869457 Implement binary operations for integers and floating-point numbers, allowing mixed type calculations 2023-10-07 12:02:18 +05:30
Jeong YunWon
dc569e9921 Refactoring 2023-05-10 19:35:27 +09:00
Noa
456bc80697 Rework frozen modules and directly deserialize to CodeObject<Literal> 2023-03-06 13:45:33 -06:00
Noa
2861c874ed Switch from 64-bit instruction enum to out-of-line arg values 2023-01-12 23:05:17 -06:00
Tom Schuster
85233920e5 Support variable exchange (aka basic tuple support) 2022-12-18 17:56:40 +01:00
Tom Schuster
9e3f864410 JIT: add internal support for None 2022-11-17 11:02:16 +01:00
Tom Schuster
8f5ae4bd00 Use boolean_val helper for unary not. 2022-11-13 21:41:17 +01:00
Afonso Bordado
5705ff7a86 Implement a few more ops in the JIT 2022-11-06 10:31:01 +00:00
Afonso Bordado
ab8faf39a7 Implement float comparisions in JIT 2022-11-05 10:08:43 +00:00
Jeong YunWon
fc6d614bf4 rustpython-bytecode -> rustpython-compiler-core 2022-08-22 08:42:20 +09:00
Jeong Yunwon
dd2bf4c96b fix clippy 2022-07-21 06:45:28 +09:00
Jeong Yunwon
e8b0732f5e remove warning from jit test 2022-04-17 04:02:01 +09:00
Noa
f93b134b69 Split Rotate into Rotate2 & Rotate3 2022-03-11 22:01:05 -06:00
Noa
09e9ea91e7 TryFrom, TryInto, FromIterator are in prelude now 2021-10-21 17:04:19 -05:00
Noah
a5d45124fd Update other stuff to use the root of rustpython_bytecode 2020-12-19 14:59:07 -06:00
Noah
090720ab34 Fix jit 2020-12-14 16:33:05 -06:00
Noah
6c52c5c6d4 Update jit to use new instructions 2020-12-05 16:36:37 -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
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