[Libre-soc-bugs] [Bug 1205] New: pifpstore.mdwn conflicts with fpstore.mdwn -- defines stfsu twice

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Mon Nov 6 01:51:04 GMT 2023


https://bugs.libre-soc.org/show_bug.cgi?id=1205

            Bug ID: 1205
           Summary: pifpstore.mdwn conflicts with fpstore.mdwn -- defines
                    stfsu twice
           Product: Libre-SOC's first SoC
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: CONFIRMED
          Severity: blocker
          Priority: ---
         Component: Source Code
          Assignee: programmerjake at gmail.com
          Reporter: programmerjake at gmail.com
                CC: libre-soc-bugs at lists.libre-soc.org
            Blocks: 1177
   NLnet milestone: ---

while trying to figure out why the newly merged shriya_add_descriptions branch
breaks tons of tests, I discovered that the post-increment files have the exact
same instruction names as the standard pre-increment instructions, this causes
the wrong op_stfsu to be called. until now, it didn't matter since the
instructions were still identical copies, but now that they've changed to have
post-increment semantics, it broke tests using any load/store update
instructions.

Example test that broke:
src/openpower/decoder/isa/test_caller_svp64_fp.py::DecoderTestCase::test_fp_single_ldst

it runs `sv.stfsu *0, 16(*4)` with r4 == 0 and r5 == 8, but because it's
running the wrong pseudo-code, it stores to address 0x0 and 0x8 instead of
0x10, 0x18 like it's supposed to.

Whoever merged that branch *needed* to have run tests first, and upon observing
that it broke a giant pile of tests, *not merged it to master* until sufficient
fixes have been applied.

For the test I looked at, the offending commit is (but that's probably only one
of many similar breaking commits):

commit 801d87dbb8d9943cdc06251cd52119a94e03632c
Author: Luke Kenneth Casson Leighton <lkcl at lkcl.net>
Date:   Tue Oct 17 10:06:18 2023 +0100

    update pifpstore.mdwn pseudocode which was a copy of fpstore.mdwn
    to be actually post-increment

So, we need to rename those instructions to the proper names.


Referenced Bugs:

https://bugs.libre-soc.org/show_bug.cgi?id=1177
[Bug 1177] revert unauthorized change to pseudocode language
-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the libre-soc-bugs mailing list