4807 Commits

Author SHA1 Message Date
billow
e843a8df56 fix tests 2023-04-14 00:36:04 +08:00
billow
dd04f4d98b Update TriCore instructions in TriCoreInstrInfo.td 2023-04-14 00:36:04 +08:00
billow
014c73de2e add tests 2023-04-14 00:36:03 +08:00
billow
3d2a56c2cd fix tc1.6.2 tests 2023-04-14 00:36:02 +08:00
billow
303fa9a7d8 fix tc1.6.2 tests 2023-04-14 00:36:01 +08:00
billow
68e448d500 fix tc1.1 tests 2023-04-14 00:36:00 +08:00
billow
4e75d75e91 fix 2023-04-14 00:35:59 +08:00
billow
67ec2089f1 fix 2023-04-14 00:35:58 +08:00
billow
54a579f06d fix 2023-04-14 00:35:57 +08:00
billow
26e507febe fix RCR printer 2023-04-14 00:35:56 +08:00
billow
cf921632cf fix tc110 test and fix decode 2023-04-14 00:35:55 +08:00
billow
3bc09883bd fix CADD CSUB 2023-04-14 00:35:54 +08:00
billow
f3f62b05dc add tc110 tests and fix tricore decode 2023-04-14 00:35:54 +08:00
billow
125d8bc115 feat: Update Tricore assembly code and disassembler logic.
- Add new Tricore test `tc110.s.cs`
2023-04-14 00:35:53 +08:00
billow
d1404e8e79 fix tricore tests 2023-04-14 00:35:52 +08:00
billow
d31b9cf0b9 fix TriCoreDisassembler.c from tests 2023-04-14 00:35:51 +08:00
billow
2638feac3f add some tc162 tests 2023-04-14 00:35:50 +08:00
billow
8e19b13abd fix 2023-04-14 00:35:49 +08:00
billow
554133e5c4 feat: Update TriCore processor support and architecture modes
- Add support for TRICORE architecture modes 110, 120, 130, 131, 160, 161, and 162 in test_corpus.py
- Change the TriCore mode from `CS_MODE_TRICORE` to `CS_MODE_TRICORE_162` in `Tricore/*.s.cs`
2023-04-14 00:35:48 +08:00
billow
48f0317c73 feat: Refactor and improve triCore platform support 2023-04-14 00:35:47 +08:00
billow
6d26813d56 feat: Add support for TriCore feature bits and new architectures
- Add support for new Tricore architectures
- Clean up redundant instructions definitions
- Modify architecture options for the TRICORE mode
- Update disallowed modes for Tricore architecture
2023-04-14 00:35:47 +08:00
billow
5ebe09366b fix 2023-04-14 00:35:46 +08:00
billow
adebfda12c refactor: Optimize TriCore instructions in arch/TriCore/TriCoreInstrInfo.td
- Add missing instructions and update existing ones
2023-04-14 00:35:45 +08:00
billow
15a49dee30 refactor: Improve TriCore floating-point operations in instruction set 2023-04-14 00:35:44 +08:00
billow
8603d7ccb4 Refactor: Optimize TriCore instruction information.
- Refactor TriCore instruction info
- Improve code organization
- Optimize instruction handling
- Eliminate unnecessary code duplication
2023-04-14 00:35:43 +08:00
billow
07d3238d9f Add support for TriCore V162 and new instructions/operands.
- Add new instruction `MOVZ_A`, remove instruction `NOT`, and add several new multiply and multiply-subtract instructions
- Move `multiclass mISR_1` and `multiclass mISYS_0` to separate file and fix typo in `rfe` instruction in `mISYS_0`
- Add support for new CPU feature `TriCore_FEATURE_HasV162` and update relevant inc files.
2023-04-14 00:35:42 +08:00
billow
d75ff4d9ed refactor: Improve instruction handling for TriCore architecture 2023-04-14 00:35:41 +08:00
billow
0b4546820e refactor: Improve TriCore instruction definitions in architecture file
- Refactor architecture specific code for TriCore
- Update TriCore instruction information in [arch/TriCore/TriCoreInstrInfo.td]
- Improve performance and readability of relevant functions
2023-04-14 00:35:40 +08:00
billow
07065c525b Optimize TriCore instruction information.
- Refactor and optimize instruction encoding for TriCore architecture
- Improve performance and reduce code size by simplifying opcodes and encoding logic
- Update instruction definitions in TriCoreInstrInfo.td file
- Omit some large but non-essential changes in diff summary for readability
2023-04-14 00:35:39 +08:00
billow
676477d465 Optimize TriCore instruction information.
- Refactor TriCore instructions
- Simplify operand encoding for better readability
2023-04-14 00:35:39 +08:00
billow
8853900171 refactor: Refactor TriCore instruction classes and operands 2023-04-14 00:35:38 +08:00
billow
c5239815a5 refactor: Improve Architecture Instruction Information.
- Refactor TriCore instruction information file
- Simplify and optimize certain instructions
2023-04-14 00:35:37 +08:00
billow
6fe3766434 refactor: Refactor TriCore instruction definitions and mappings
- Add new `multiclass mI_MADDRsh_` to handle `MADDR_H` and `MADDRS_H` in `arch/TriCore/TriCoreInstrInfo.td`
2023-04-14 00:35:36 +08:00
billow
8b56ae652b refactor: Add new TriCore instructions and remove deprecated ones.
- Remove deprecated instructions
- Update comments and formatting
2023-04-14 00:35:35 +08:00
billow
d41decd0f0 feat: Add and remove TriCore instructions.
- Add 3 new TriCore instructions
- Remove TriCore instruction "TriCore_INS_INIT"
- Alphabetized and rearranged various TriCore instructions
- Commented out code remains in the diff but is not part of the program.
2023-04-14 00:35:34 +08:00
billow
d631ecc723 add tricore_feature support 2023-04-14 00:35:33 +08:00
billow
a076fdeb0a refactor: Refactor TriCore instruction decoding and register definition.
- Update TriCore processor register definitions with auto-generated file `TriCoreGenCSRegEnum.inc`
- Add several new TriCore processor instructions with auto-generated file `TriCoreGenCSInsnEnum.inc`
- Update TriCore_OP_GROUP enumeration with auto-generated file `TriCoreGenCSOpGroup.inc`
- Rename and restructure TriCore processor register classes
- Remove unused register class definitions and related code
2023-04-14 00:35:32 +08:00
billow
d58a83c7f1 refactor: Update TriCore instruction requirements
- Update `Requires` directives for several instructions to reflect changes in hardware versions
2023-04-14 00:35:32 +08:00
billow
7dbeb5c58f refactor: Add support for new TriCore instructions and constraints.
- Add support for V110 and V120 in various LD instructions
- Define new multiclass for code reuse
- Restructure LD_A_v120 in favor of LD_A with Requires constraint
- Add new defs for LT_U with suffixes for V110 support
2023-04-14 00:35:31 +08:00
billow
2fa188ec5a refactor: Improve TriCore instruction handling.
- Add new instructions for TriCore architecture
- Implement changes to TriCoreInstrInfo.td
2023-04-14 00:35:30 +08:00
billow
d515e62ddc refactor: Refactor TriCore register names.
- Rename TriCore register names for better readability
- Update TriCore instruction information
2023-04-14 00:35:29 +08:00
billow
ad0e18fece fix cachea 2023-04-14 00:35:28 +08:00
billow
4567335c20 add some tricore v1.1 inst 2023-04-14 00:35:27 +08:00
billow
753b6a4ce0 cleanup 2023-04-14 00:35:26 +08:00
billow
b9eba6f1fd add tricore Predicates 2023-04-14 00:35:25 +08:00
billow
c862106861 just add TriCoreISA enum 2023-04-14 00:35:25 +08:00
billow
d759996f15 fix: disp print and fill 2023-04-14 00:35:24 +08:00
billow
c9d8d6c9bf unique tests 2023-04-14 00:35:23 +08:00
billow
878e09db04 fix: decode j call loop 2023-04-14 00:35:22 +08:00
billow
d9e715bc17 feat: Fix bugs and update instructions for TriCore architecture.
- Fix bug in `printDisp8Imm` function in `TriCoreInstPrinter.c`
- Add new `CALL_sb` instruction to `TriCoreInstrInfo.td`
- Reorder instruction definitions and operands in `TriCoreInstrInfo.td`
2023-04-14 00:35:21 +08:00