Bug 1188 - clarify that REMAP doesn't work on scalar svp64 instructions
Summary: clarify that REMAP doesn't work on scalar svp64 instructions
Status: CONFIRMED
Alias: None
Product: Libre-SOC's first SoC
Classification: Unclassified
Component: Specification (show other bugs)
Version: unspecified
Hardware: PC Linux
: --- normal
Assignee: Luke Kenneth Casson Leighton
URL:
Depends on:
Blocks:
 
Reported: 2023-10-16 05:44 BST by Jacob Lifshay
Modified: 2023-10-17 08:55 BST (History)
3 users (show)

See Also:
NLnet milestone: ---
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:
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 Jacob Lifshay 2023-10-16 05:44:45 BST
(In reply to Jacob Lifshay from bug #1044 comment #59)
> I ran into an issue: I'm trying to use:
> svremap 0o10, 0, 0, 0, 0, 0, 0  # enable SVSHAPE0 for RT
> # q[j] = qhat
> sv.or 4, 12, 12  # note all of RT, RA, and RB are scalar
> 
> I expected the REMAP in SVSHAPE0 to apply to RT, but it seems like it
> doesn't. I couldn't find documentation one way or the other... (I saw
> documentation that says REMAP doesn't apply to scalar instructions, but I
> think that just means instructions without a SV-prefix)

The specification needs to explicitly say if scalar means only instructions without a SV-prefix or also instructions with a SV-prefix but all operands set to scalar mode.
> 
> I think REMAP should apply to scalar operands when there's a sv-prefix (but
> not sv-single-prefix). This seems useful to me so you can e.g. extract the
> 2nd element in a byte vector by using SVSHAPE.offset or other times you'd
> want to use a REMAP-ped index.


Lkcl, what do you think?
Comment 1 Jacob Lifshay 2023-10-17 08:54:14 BST
https://bugs.libre-soc.org/show_bug.cgi?id=1044#c62
Comment 2 Jacob Lifshay 2023-10-17 08:55:42 BST
actually, reopening so we can fix the docs to be explicit.