Commit Graph

134 Commits

Author SHA1 Message Date
Angie
b7ebec63cc version bump 2023-02-23 11:08:52 -03:00
angie
ffa80bb4c2 version bump 2023-01-21 16:51:28 -03:00
angie
eb11d93da9 Implement mfc2, mtc2, cfc2 and ctc2 2023-01-21 15:42:40 -03:00
angie
716d21f8ea fix "emitted" typo 2022-12-26 20:24:41 -03:00
angie
027b3773fe Expand list of instructions not emitted by C compilers 2022-12-26 19:59:23 -03:00
angie
b4a8771df1 version bump 2022-12-20 13:03:11 -03:00
angie
5063702a07 modifiesF* and readsF 2022-12-20 00:42:27 -03:00
angie
a166772657 Fix a Rust binding not taking & 2022-12-19 20:42:38 -03:00
angie
e75ea8f09f version bump 2022-12-19 19:09:02 -03:00
angie
2e74fc914f outputsToGprZero 2022-12-19 19:04:26 -03:00
angie
75fe4e4fe3 use registerdescriptors 2022-12-19 18:38:05 -03:00
angie
6758468699 RegisterDescriptor 2022-12-19 17:07:32 -03:00
angie
ef2acdb328 Remove jalr_rd hack 2022-12-19 15:04:59 -03:00
Angie
3ab315c5ab version bump 2022-12-18 19:58:43 -03:00
angie
bddd12847e Build C library in build.rs 2022-12-18 17:12:59 -03:00
angie
c9170b0209 version bump 2022-12-18 16:30:12 -03:00
angie
1e02871bce Another try at fixing crate publishing 2022-12-18 16:22:06 -03:00
angie
b87cf594fe Hopefully fix rust crate publishing 2022-12-18 16:00:24 -03:00
angie
b75637ec33 version bump 2022-12-18 15:33:02 -03:00
Anghelo Carvajal
fb8c1edbd7
Rust bindings (#17)
* Generate bindings for enums

* Add .gitignore Cargo didn't automatically made

* Actually build the files into the library

* `pub` in `mod` to fix warning

* instruction struct

* Instruction rust binding

* Add InstrId::ALL_MAX

* link C library to rust

* Publish crate CI

* test

* config bindings

* add getters for registers

* add names methods for register enums

* get_operand_type

* feedback from simon

* Forgot to add new file to python setup.py

* get_operands_slice

* add stuff to cargo.toml
2022-12-18 15:15:39 -03:00
angie
3735d91fcc Pregenerate every table 2022-12-16 15:37:46 -03:00
angie
12537e6706 pre-geneate table system 2022-12-16 14:36:53 -03:00
angie
d5d1096e81 Version bump and remove setup.cfg 2022-12-16 11:04:16 -03:00
angie
61ccff4e42 Rename isJrRa to isReturn and isJrNotRa to isJumptableJump 2022-12-15 20:33:02 -03:00
angie
363aff8e5d Fix descriptor logic errors 2022-12-15 16:55:31 -03:00
angie
32acccf873 Try to make logic check tests 2022-12-15 16:06:48 -03:00
angie
920c79d700 set .readsR* for every instruction 2022-12-14 20:53:32 -03:00
angie
77dda82424 readsR* functions 2022-12-14 18:03:13 -03:00
angie
96e2c465f6 Remove 3 non-existent RSP instructions 2022-12-14 15:22:06 -03:00
angie
6a1e537965 Fix RSP's jalr being marked as invalid 2022-11-30 13:14:21 -03:00
angie
703ac562c0 version bump 2022-11-30 10:21:02 -03:00
angie
343eddbb5b version bump 2022-10-16 17:03:36 -03:00
angie
6d49bb4abf Remove signedness from access type and move it to doesUnsignedMemoryAccess 2022-10-16 17:02:50 -03:00
Angie
34e982a763 version bump 2022-10-14 19:46:01 -03:00
Angie
6fad5e740a InstrCategory.fromStr 2022-10-14 18:49:59 -03:00
angie
5d0f9ad8f6 reads/modifies HI/LO 2022-10-14 14:58:14 -03:00
angie
71d241150f getDestinationGpr 2022-10-14 13:55:20 -03:00
angie
7cec779b85 AccessType enum 2022-10-13 19:41:46 -03:00
angie
7dc241a036 format 2022-10-13 18:37:27 -03:00
angie
5b04520269 cleanup 2022-10-13 18:32:24 -03:00
angie
c1a6abe186 Deprecate getGenericBranchOffset, add getBranchOffsetGeneric and getBranchVramGeneric 2022-10-13 17:41:50 -03:00
angie
34f2e2e6a5 Remove getImmediate and getInstrIndex 2022-10-13 16:45:01 -03:00
angie
91f30645e8 Remove RabbitizerArchitectureVersion and deprecate RabbitizerInstrType 2022-10-13 16:12:07 -03:00
angie
faaf017aef isJumpWithAddress 2022-10-13 14:32:36 -03:00
angie
b5f4df9c1a Add explanations to most stuff on InstrDescriptor 2022-10-13 14:24:34 -03:00
angie
ba09c10925 format tables 2022-10-13 13:32:22 -03:00
Angie
70c8632f4c Actually compute the size of each operand 2022-10-09 21:43:37 -03:00
Angie
4ebd49711b add missing operand to trap instructions 2022-10-09 18:29:31 -03:00
Anghelo Carvajal
acee144578
C++ bindings (#9)
* start making c++ bindings

* Add sanity checks

* add descriptor methods

* setup making c++ library

* cpp test

* format (not tidy because it breaks everything and the result looks dumb)

* Fixes

* add missing alias

* move stuff to their own files

* InstructionRsp bindings

* r5900 bindings

* almost there

* binding for analysis stuff

* setters
2022-10-09 17:51:47 -03:00
Angie
874863ab77 add userdefined instructionId placeholders 2022-10-09 17:48:46 -03:00