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
Noa
6daee1b00e
Warn on elided_lifetimes_in_paths
2025-03-01 13:49:33 +09:00
Noa
864e8598f8
Enable rust2024-incompatible pat and keyword-ident lints
2025-02-25 00:32:02 -06:00
Noa
1c3b198a17
Enable unsafe_op_in_unsafe_fn lint
2025-02-24 21:25:23 -06:00
Shubham Patil
53db70e784
Support recursion in JIT-ed functions ( #5473 )
2025-01-13 14:55:27 +09:00
ebde8546c9
remove elided lifetime
2024-11-29 11:05:44 +09:00
Jeong YunWon
2919df1df5
Mark rust-version 1.78
2024-08-08 23:20:17 +09:00
Jeong YunWon
8673169ee7
0.4.0
2024-08-07 08:38:21 +09:00
James Clarke
1bd143027a
Switched to system implementation of libffi and fixed minor lint errors
2024-06-30 13:29:04 +01:00
James Clarke
08c9a4d86b
Added lints and deny.toml
2024-06-25 03:59:40 +01:00
Jeong YunWon
019496e3a8
Instruction::ReturnConst
2024-05-09 15:26:16 +09:00
Jeong YunWon
8816cd41d5
0.3.1
2024-04-10 17:39:57 +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
1208416b92
0.3.0 release
2023-09-06 18:49:55 +09:00
Jeong YunWon
dc569e9921
Refactoring
2023-05-10 19:35:27 +09:00
Jeong YunWon
f2cfa5f0a7
Split parser to new repository
...
6b60f85cc4
2023-05-06 14:38:11 +09:00
Noa
456bc80697
Rework frozen modules and directly deserialize to CodeObject<Literal>
2023-03-06 13:45:33 -06:00
Jeong YunWon
5adc09150d
update libffi
2023-02-09 15:51:28 +09:00
Jeong YunWon
42a22c280d
use workspace dependencies
2023-02-06 15:30:38 +09:00
Noa
2861c874ed
Switch from 64-bit instruction enum to out-of-line arg values
2023-01-12 23:05:17 -06:00
Noa
c7faae9b22
Bump all crate versions to 0.2.0
2023-01-11 00:14:28 -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
Tom Schuster
634aca05a0
Make JitValue an enum
...
The duplication with JitType is a bit unfortunate, but this is a big
ergonomics improvement when working on the compiler itself.
This will also allows us to define types that are internal to the
compiler and shouldn't leak to other code via the JitType
2022-11-08 14:17:32 +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
Afonso Bordado
a91e15aaf4
Update JIT Cranelift version
2022-09-24 18:36:42 +01:00
Jeong YunWon
fc6d614bf4
rustpython-bytecode -> rustpython-compiler-core
2022-08-22 08:42:20 +09:00
Jeong YunWon
6eeaf976a2
sort Cargo.toml dependencies
2022-08-22 08:42:20 +09:00
Jeong YunWon
fe6f6db72d
clean up cargo.toml sort
2022-08-22 08:42:20 +09:00
Jeong YunWon
fb5ac9e79b
reorganize compiler crates
2022-08-22 04:42:42 +09:00
Jeong Yunwon
dd2bf4c96b
fix clippy
2022-07-21 06:45:28 +09:00
Jeong Yunwon
8c0be4b48f
Fix nightly clippy warnings
2022-06-24 01:13:32 +09:00
Jeong Yunwon
7df0acd6b6
share comparisonop between bytecode and vm
2022-05-12 04:02:14 +09:00
Jeong Yunwon
53d835faa7
split comapre and richcompare instruction
2022-05-12 04:02:14 +09:00
Jeong Yunwon
965c3157c8
Upgrade libraries
2022-04-18 00:09:22 +09:00
Jeong Yunwon
e8b0732f5e
remove warning from jit test
2022-04-17 04:02:01 +09:00
Jeong Yunwon
6357a1acbe
clean up imports and useless allow attributes
2022-04-15 23:58:20 +09:00
Noa
f93b134b69
Split Rotate into Rotate2 & Rotate3
2022-03-11 22:01:05 -06:00
Jeong YunWon
9377134161
add #[non_exhaustive]
2022-01-22 20:22:58 +09:00
Noa
1188369956
Fix clippy warnings with 1.58 & convert some format strings to capture-args
2022-01-13 23:53:25 -06:00
Noa
358ce09b5c
Run cargo upgrade
2021-10-30 19:42:35 -05:00
Noa
09e9ea91e7
TryFrom, TryInto, FromIterator are in prelude now
2021-10-21 17:04:19 -05:00