Bug 1140 - support PPC instruction aliases
Summary: support PPC instruction aliases
Status: CONFIRMED
Alias: None
Product: Libre-SOC's first SoC
Classification: Unclassified
Component: Source Code (show other bugs)
Version: unspecified
Hardware: PC All
: --- enhancement
Assignee: Dmitry Selyutin
URL: https://bugs.libre-soc.org/show_bug.c...
Depends on:
Blocks: 1201
  Show dependency treegraph
 
Reported: 2023-08-14 21:41 BST by Dmitry Selyutin
Modified: 2024-03-09 18:20 GMT (History)
2 users (show)

See Also:
NLnet milestone: new binutils
total budget (EUR) for completion of task and all subtasks: 0
budget (EUR) for this task, excluding subtasks' budget: 0
parent task for budget allocation: 1259
child tasks for budget allocation:
The table of payments (in EUR) for this task; TOML format:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dmitry Selyutin 2023-08-14 21:41:17 BST
insndb currently lacks support for instruction aliases. At least the instructions mentioned as aliases for vanilla PPC must be supported so that both our code and binutils can make use of it.
Comment 1 Dmitry Selyutin 2023-11-05 10:37:42 GMT
Migrating this under bug #1198. Regardless of the decisions on SVP64 aliases, there are still instructions listed as aliases for vanilla PPC. These still must be supported at insndb and libopid levels.
Comment 2 Dmitry Selyutin 2024-02-23 17:39:43 GMT
[original comment]

We currently lack a way to provide instruction aliases. Supporting them is a complex task, requiring at least these steps (https://bugs.libre-soc.org/show_bug.cgi?id=1068#c42):

1) define the aliases format
2) define a *database* format for them and implement them in insndb
3) add aliases in pypowersim
4) UNIT TESTS for aliased instructions in openpower-isa and FINALLY - ONLY THEN:
5) adding binutils support for the same aliases AND THEN
6) add unit tests for the same aliases in binutils AND THEN
7) run the same unit tests for openpower-isa but using binutils
Comment 3 Dmitry Selyutin 2024-02-23 17:46:15 GMT
I think the scope above should be reconsidered, considering the fact that the task is moved under 1212 umbrella. Due to time constraints, I think that items 5-7 are somewhat incorrect: they will have to be addressed under separate tasks (#1203, #1201), since binutils migrate to libopid and we have a separate task for tests.