Bug 495278 - PowerPC instruction dcbf should allow the L field values of 4, 6 on ISA 3.0 and earlier, just ignore the value.
Summary: PowerPC instruction dcbf should allow the L field values of 4, 6 on ISA 3.0 a...
Status: CLOSED FIXED
Alias: None
Product: valgrind
Classification: Developer tools
Component: vex (show other bugs)
Version: 3.24 GIT
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Julian Seward
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-10-24 00:36 UTC by Carl Love
Modified: 2024-10-24 15:07 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Carl Love 2024-10-24 00:36:46 UTC
Currently, the dcbf instruction on PowerPC is reporting the dcbf instruction with L = 6 on ISA 3.0 hardware as an error.  The actual hardware accepts L = 6.  The L field is actually only 2 bits on ISA 3.0 so it is technically a 2. 

Testing ISA 3.0 "accepts" L = 0 to 3, ISA 3.1 "accepts: L = 0 to 7.  Removed the L field check so valgrind will match the real
hardware.  For the purposes of Valgrind the dcbf instruction is a NOP anyway so it will not change the behavior of Valgrind.
Comment 1 Carl Love 2024-10-24 15:05:53 UTC
Issue fixed with the following Valgrind commit.

ommit 3b1a12795cc5cbb57dbf0219375229094c86122e (HEAD -> master, origin/master, origin/HEAD)
Author: Carl Love <cel@linux.ibm.com>
Date:   Wed Oct 23 18:25:23 2024 -0500

    PowerPC, dcbf instruction
    
    ISA 2.7 and ISA 3.0 "accepts" L = 0 to 3, ISA 3.1 "accepts: L = 0 to 7.
    Removed the L field check so valgrind will match the real hardware.  For
    the purposes of Valgrind the dcbf instruction is a NOP anyway so it will
    not change the behavior of Valgrind.
Comment 2 Carl Love 2024-10-24 15:06:47 UTC
Closing bugzilla.  Issue fixed, no nightly regression failures.
Comment 3 Carl Love 2024-10-24 15:07:08 UTC
Closing