[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 --- Comment #17 from Carl Love --- The following commit was made to fix an issue with the functional support ISA 3.1 for reduced precision outer product operations support. https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=eb82a294573d15c1be663673d55b559a82ca29d3 commit eb82a294573d15c1be663673d55b559a82ca29d3 Author: Julian Seward Date: Tue Nov 10 21:10:48 2020 +0100 Add a missing ifdef, whose absence caused build breakage on non-POWER targets. Diff: --- VEX/priv/guest_ppc_helpers.c | 16 ++-- 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/VEX/priv/guest_ppc_helpers.c b/VEX/priv/guest_ppc_helpers.c index 45dce63512..ac4d7044a8 100644 --- a/VEX/priv/guest_ppc_helpers.c +++ b/VEX/priv/guest_ppc_helpers.c @@ -1112,12 +1112,16 @@ static ULong reinterpret_double_as_long( Double input ) static Double conv_f16_to_double( ULong input ) { - // This all seems to be very alignment sensitive?? - __attribute__ ((aligned (64))) ULong src; - __attribute__ ((aligned (64))) Double result; - src = input; - __asm__ __volatile__ ("xscvhpdp %x0,%x1" : "=wa" (result) : "wa" (src)); - return result; +# if defined(__powerpc__) + // This all seems to be very alignment sensitive?? + __attribute__ ((aligned (64))) ULong src; + __attribute__ ((aligned (64))) Double result; + src = input; + __asm__ __volatile__ ("xscvhpdp %x0,%x1" : "=wa" (result) : "wa" (src)); + return result; +# else + return 0.0; +# endif } __ -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 Carl Love changed: What|Removed |Added Status|CONFIRMED |RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427400] PPC ISA 3.1 support is missing, part 4
https://bugs.kde.org/show_bug.cgi?id=427400 Carl Love changed: What|Removed |Added Status|REPORTED|RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427401] PPC ISA 3.1 support is missing, part 5
https://bugs.kde.org/show_bug.cgi?id=427401 Carl Love changed: What|Removed |Added Status|REPORTED|RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 Carl Love changed: What|Removed |Added Attachment #132180|0 |1 is obsolete|| --- Comment #15 from Carl Love --- Created attachment 133208 --> https://bugs.kde.org/attachment.cgi?id=133208=edit functional support fix cleanup of the patch -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 Carl Love changed: What|Removed |Added Attachment #133070|0 |1 is obsolete|| --- Comment #14 from Carl Love --- Created attachment 133206 --> https://bugs.kde.org/attachment.cgi?id=133206=edit functional support ISA 3.1 for reduced precision outer product operations Update the patch. Fix for getACC() to eliminate compiler warnings. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 Carl Love changed: What|Removed |Added Status|REPORTED|CONFIRMED Ever confirmed|0 |1 --- Comment #16 from Carl Love --- Patches committed commit d4cfcf14a083dcb54e0fe64ff4ae9b0b635c8e69 (HEAD -> master, origin/master, origin/HEAD) Author: Carl Love Date: Tue Oct 6 12:14:45 2020 -0500 Reduced Precision Outer Product Operation tests commit be7da5401783a32149bd7dc31b49f3d72d4a2b10 Author: Carl Love Date: Tue Sep 29 13:29:34 2020 -0500 Fix, add ISA 3.1 check to set ISA 3.1 in Valgrind hwcaps value commit 092e5620d40d54bc1ab6a77c895fc18b0c86c6a9 Author: Carl Love Date: Fri Sep 25 16:54:12 2020 -0500 ISA 3.1 Reduced-Precision: Outer Product Operations Add support for: pmxvf16ger2 Prefixed Masked VSX Vector 16-bit Floating-Point GER (rank-2 update) pmxvf16ger2nn Prefixed Masked VSX Vector 16-bit Floating-Point GER (rank-2 update) (Negative multiply, Negative accumulate) pmxvf16ger2np Prefixed Masked VSX Vector 16-bit Floating-Point GER (rank-2 update) (Negative multiply, Positive accumulate) pmxvf16ger2pn Prefixed Masked VSX Vector 16-bit Floating-Point GER (rank-2 update) (Positive multiply, Negative accumulate) pmxvf16ger2pp Prefixed Masked VSX Vector 16-bit Floating-Point GER (rank-2 update) (Positive multiply, Positive accumulate) pmxvf32ger Prefixed Masked VSX Vector 32-bit Floating-Point GER (rank-1 update) pmxvf32gernn Prefixed Masked VSX Vector 32-bit Floating-Point GER (rank-1 update) (Negative multiply, Negative accumulate) pmxvf32gernp Prefixed Masked VSX Vector 32-bit Floating-Point GER (rank-1 update) (Negative multiply, Positive accumulate) pmxvf32gerpn Prefixed Masked VSX Vector 32-bit Floating-Point GER (rank-1 update) (Positive multiply, Negative accumulate) pmxvf32gerpp Prefixed Masked VSX Vector 32-bit Floating-Point GER (rank-1 update) (Positive multiply, Positive accumulate) pmxvf64ger Prefixed Masked VSX Vector 64-bit Floating-Point GER (rank-1 update) pmxvf64gernn Prefixed Masked VSX Vector 64-bit Floating-Point GER (rank-1 update) (Negative multiply, Negative accumulate) pmxvf64gernp Prefixed Masked VSX Vector 64-bit Floating-Point GER (rank-1 update) (Negative multiply, Positive accumulate) pmxvf64gerpn Prefixed Masked VSX Vector 64-bit Floating-Point GER (rank-1 update) (Positive multiply, Negative accumulate) pmxvf64gerpp Prefixed Masked VSX Vector 64-bit Floating-Point GER (rank-1 update) (Positive multiply, Positive accumulate) pmxvi16ger2s Prefixed Masked VSX Vector 16-bit Signed Integer GER (rank-2 update) with Saturation pmxvi16ger2spp Prefixed Masked VSX Vector 16-bit Signed Integer GER (rank-2 update) with Saturation (Positive multiply, Positive accumulate) pmxvi4ger8 Prefixed Masked VSX Vector 4-bit Signed Integer GER (rank-8 update) pmxvi4ger8pp Prefixed Masked VSX Vector 4-bit Signed Integer GER (rank-8 update) (Positive multiply, Positive accumulate) pmxvi8ger4 Prefixed Masked VSX Vector 8-bit Signed/Unsigned Integer GER (rank-4 update) pmxvi8ger4pp Prefixed Masked VSX Vector 8-bit Signed/Unsigned Integer GER (rank-4 update) (Positive multiply, Positive accumulate) xvf16ger2 VSX Vector 16-bit Floating-Point GER (rank-2 update) xvf16ger2nn VSX Vector 16-bit Floating-Point GER (rank-2 update) (Positive multiply, Positive accumulate) xvf16ger2np VSX Vector 16-bit Floating-Point GER (rank-2 update) (Negative multiply, Positive accumulate) xvf16ger2pn VSX Vector 16-bit Floating-Point GER (rank-2 update) (Positive multiply, Negative accumulate) xvf16ger2pp VSX Vector 16-bit Floating-Point GER (rank-2 update) (Positive multiply, Positive accumulate) xvf32ger VSX Vector 32-bit Floating-Point GER (rank-1 update) xvf32gernn VSX Vector 32-bit Floating-Point GER (rank-1 update) (Negative multiply, Negative accumulate) xvf32gernp VSX Vector 32-bit Floating-Point GER (rank-1 update) (Negative multiply, Positive accumulate) xvf32gerpn VSX Vector 32-bit Floating-Point GER (rank-1 update) (Positive multiply, Negative accumulate) xvf32gerpp VSX Vector 32-bit Floating-Point GER (rank-1 update) (Positive multiply, Positive accumulate) xvf64ger VSX Vector 64-bit Floating-Point GER (rank-1 update) xvf64gernn VSX Vector 64-bit Floating-Point GER (rank-1 update) (Negative multiply, Negative accumulate) xvf64gernp VSX Vector 64-bit Floating-Point GER (rank-1 update) (Negative multiply, Positive accumulate) xvf64gerpn VSX Vector 64-bit Floating-Point GER (rank-1 update) (Positive multiply, Negative accumulate) xvf64gerpp VSX Vector 64-bit Floating-Point GER (rank-1 update) (Positive multiply, Positive accumulate) xvi16ger2s VSX Vector 16-bit Signed Integer
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 --- Comment #19 from Carl Love --- Function conv_f16_to_double() uses instruction xscvhpdp which is an ISA 3.1 instruction. The function is used in the ISA 3.1 instruction support. I will work on a fix. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 --- Comment #20 from Carl Love --- Created attachment 133275 --> https://bugs.kde.org/attachment.cgi?id=133275=edit Fix for the xscvhpdp assembler line issue The fix in comment 17 took care of the issues for non-Power platforms. Unfortunately, older Power platforms that don't support the xscvhpdp instruction still fail. The attached patch addresses the issue for the Power platforms. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429354] PPC ISA 3.1 support is missing, part 8
https://bugs.kde.org/show_bug.cgi?id=429354 Carl Love changed: What|Removed |Added CC||will_schm...@vnet.ibm.com -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 Carl Love changed: What|Removed |Added CC||will_schm...@vnet.ibm.com -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429375] New: PPC ISA 3.1 support is missing, part 9
https://bugs.kde.org/show_bug.cgi?id=429375 Bug ID: 429375 Summary: PPC ISA 3.1 support is missing, part 9 Product: valgrind Version: unspecified Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: vex Assignee: jsew...@acm.org Reporter: c...@us.ibm.com Target Milestone: --- Created attachment 133478 --> https://bugs.kde.org/attachment.cgi?id=133478=edit VSX- PCV Generate Operation functional support Power PC ISA 3.1 support This is the 9th buzilla in the series. Previous patches are in bugzilla 429354 -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429375] PPC ISA 3.1 support is missing, part 9
https://bugs.kde.org/show_bug.cgi?id=429375 Carl Love changed: What|Removed |Added CC||will_schm...@vnet.ibm.com -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429375] PPC ISA 3.1 support is missing, part 9
https://bugs.kde.org/show_bug.cgi?id=429375 --- Comment #1 from Carl Love --- Created attachment 133479 --> https://bugs.kde.org/attachment.cgi?id=133479=edit test cases for VSX-PCV generate operations Add test cases -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 --- Comment #24 from Carl Love --- The gdb support for debugging the user application on Valgrind appears to have been broken by the reduced precision outer product patch. It looks like the addition of the new ACC registers is the issue. Need to update the gdbserver files to add the ACC register descriptions and size of data being transferred. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427401] PPC ISA 3.1 support is missing, part 5
https://bugs.kde.org/show_bug.cgi?id=427401 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED --- Comment #8 from Carl Love --- No issues seen with these patches in the last couple of weeks. Closing -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427400] PPC ISA 3.1 support is missing, part 4
https://bugs.kde.org/show_bug.cgi?id=427400 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED --- Comment #20 from Carl Love --- No issues seen with these patches in the last couple of weeks. Closing. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 425232] PPC ISA 3.1 support is missing, part 2
https://bugs.kde.org/show_bug.cgi?id=425232 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED --- Comment #36 from Carl Love --- No issues seen with these patches in the last couple weeks. Closing -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] New: PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 Bug ID: 429352 Summary: PPC ISA 3.1 support is missing, part 7 Product: valgrind Version: unspecified Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: vex Assignee: jsew...@acm.org Reporter: c...@us.ibm.com Target Milestone: --- Created attachment 133458 --> https://bugs.kde.org/attachment.cgi?id=133458=edit Functional support for ISA 3.1, New Iops Power PC missing ISA 3.1 support. Additional patches, part 7 -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 --- Comment #1 from Carl Love --- Created attachment 133459 --> https://bugs.kde.org/attachment.cgi?id=133459=edit Test cases for new IOps The test cases -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 --- Comment #2 from Carl Love --- This is the 7th bugzilla for the ISA 3.1 Power PC support. The bugzilla for part 6 is 427404. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429354] New: PPC ISA 3.1 support is missing, part 8
https://bugs.kde.org/show_bug.cgi?id=429354 Bug ID: 429354 Summary: PPC ISA 3.1 support is missing, part 8 Product: valgrind Version: unspecified Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: vex Assignee: jsew...@acm.org Reporter: c...@us.ibm.com Target Milestone: --- Created attachment 133461 --> https://bugs.kde.org/attachment.cgi?id=133461=edit Functional support for ISA 3.1, VSX Mask manipulation operations Patches for ISA 3.1 Power PC, part 8 -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429354] PPC ISA 3.1 support is missing, part 8
https://bugs.kde.org/show_bug.cgi?id=429354 --- Comment #1 from Carl Love --- Created attachment 133462 --> https://bugs.kde.org/attachment.cgi?id=133462=edit Test cases for VSX Mask Manipulation operations Add test case patch -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 --- Comment #3 from Carl Love --- Part 8 patches are in bugzilla 429354 -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 --- Comment #22 from Carl Love --- Committed patch to fux the xscvhpdp assembly code issue. commit 025bdca23b2fca0dd68b6077426500237aee85c5 (origin/master, origin/HEAD) Author: Carl Love Date: Thu Nov 12 15:18:23 2020 -0600 PowerPC, fix for conv_f16_to_double xscvhpdp assembler code The previous commit: commit eb82a294573d15c1be663673d55b559a82ca29d3 Author: Julian Seward Date: Tue Nov 10 21:10:48 2020 +0100 Add a missing ifdef, whose absence caused build breakage on non-POWER targets. fixed the compile issue in conv_f16_to_double() where non-Power platforms do not support the power xscvhpdp assembly instructions. The instruction is supported by ISA 3.0 platforms. Older Power platforms still fail to compile with the assembly instruction. This patch fixes the if def for power systems that do not support ISA 3.0. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 --- Comment #23 from Carl Love --- Next set of patches is in bugzilla 429352. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 Carl Love changed: What|Removed |Added Attachment #133058|0 |1 is obsolete|| --- Comment #13 from Carl Love --- Created attachment 133070 --> https://bugs.kde.org/attachment.cgi?id=133070=edit function support ISA 3.1 for reduced precision outer product operations Updated functional support for reduced precision outer product operations. The patch has the patch "Changes to make the setup_fxstate_struct() more precise merged in to it. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 Carl Love changed: What|Removed |Added Attachment #132844|0 |1 is obsolete|| --- Comment #10 from Carl Love --- Created attachment 133058 --> https://bugs.kde.org/attachment.cgi?id=133058=edit function support ISA 3.1 for reduced precision outer product operations Update the patch. Re-loaded the old file the last time. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 427404] PPC ISA 3.1 support is missing, part 6
https://bugs.kde.org/show_bug.cgi?id=427404 --- Comment #12 from Carl Love --- Created attachment 133068 --> https://bugs.kde.org/attachment.cgi?id=133068=edit Changes to make the setup_fxstate_struct() more precise. The following changes were made to the Functional support ISA 3.1 for reduced precision outer product operations to make the setup_fxstate_struct() more precise. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 --- Comment #1 from Carl Love --- Created attachment 134552 --> https://bugs.kde.org/attachment.cgi?id=134552=edit patch to add support for the scv instruction Please test the attached patch to see if it fixes your issue. Thanks. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 --- Comment #7 from Carl Love --- Created attachment 135083 --> https://bugs.kde.org/attachment.cgi?id=135083=edit Fix pcast for existing code Fix for the pasting of the existing Iops: Iop_TruncF128toI64S Iop_TruncF128toI32S Iop_TruncF128toI64U Iop_TruncF128toI32U Iop_ReinterpF64asI64 Iop_ReinterpI64asF64 Iop_ReinterpI32asF32 Iop_ReinterpF32asI32 Iop_ReinterpI64asD64 Iop_ReinterpD64asI64 -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 Carl Love changed: What|Removed |Added Attachment #133458|0 |1 is obsolete|| --- Comment #6 from Carl Love --- Created attachment 135082 --> https://bugs.kde.org/attachment.cgi?id=135082=edit Functional support for ISA 3.1 New Iops Updated patch per Julian's review comments. Fixed pcast issues in mc_translate.c. Cleaned up/removed debug code. Removed unnecessary comments from development. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 --- Comment #8 from Carl Love --- The regression tests with the above reworked functional test and patch to fix the pcasting for the existing Iops pass with no new errors. Note, the test valgrind --tool=memcheck --track-origins=yes ./test_isa_3_1_AT still hits an assertion error. All of the other ISA 3.1 tests pass with "--tool=memcheck" and "--tool=memcheck --track-origins=yes". This issue exists before the patches in this bugzilla are applied. Still investigating this issue. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 --- Comment #9 from Carl Love --- Created attachment 135176 --> https://bugs.kde.org/attachment.cgi?id=135176=edit Add ACC support into routine get_otrack_shadow_offset_wrk() Looking up the ACC register offset support is missing in get_otrack_shadow_offset_wrk (). This is the cause of the assertion error when running: valgrind --tool=memcheck --track-origins=yes ./test_isa_3_1_AT This patch fixes the issue. I have run the regression tests with this patch on Power 10 and Power 8 BE with no issues. Please review and if it looks OK, I will commit. Thanks. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 --- Comment #13 from Carl Love --- >From discussions with IBM and RedHat, the plan for the short term is mask the HWCAPS2 to force the use of the sc instruction instead of the newer scv0 instruction. I will work on a proper fix to support the scv0 instruction. The proper fix will consist of the existing scv0 patch I created plus the needed changes to the PPC Valgrind system call interface to handle the sc and scv0 instructions and 64-bit Linux system call ABI, as given in https://www.kernel.org/doc/html/v5.10/powerpc/syscall64-abi.html -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 --- Comment #12 from Carl Love --- The Power support for Valgrind treats the Hardware Transactional Memory (HTM) instructions effectively as NOPs. The transaction begin instruction (tbegin) is always failed in Valgrind causing the code to execute the failure path. Given that, I don't see any issues with filtering out the HAS_HTM bit. From what I can find, the HTM_NOSC is for use by the Kernel to indicate it will abort the transaction before entering the kernel. Valgrind only works with User code so again there should not be any issues with filtering it out. I see no issues at this point with enabling the scv instruction and filtering out the HTM hardware caps bits. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 Carl Love changed: What|Removed |Added Attachment #135358|0 |1 is obsolete|| --- Comment #15 from Carl Love --- Created attachment 135371 --> https://bugs.kde.org/attachment.cgi?id=135371=edit patch to add support for the scv instruction Cleaned up formatting, spacing and a minor functional fix. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 --- Comment #6 from Carl Love --- Julian: On Fri, 2021-05-07 at 14:12 +, Julian Seward wrote: > https://bugs.kde.org/show_bug.cgi?id=435665 > > --- Comment #5 from Julian Seward --- > I'm somewhat concerned, at a fundamental level .. if I understand > correctly, these instructions allow one to copy memory from one > place to another (so why bother? Why not just do normal > loads/stores?) > but -- at least as implemented -- there's no way to tell Memcheck > or any other tool, that the values in the destination area are > derived from values in the source area. So you'll wind up with > definedness false positives or negatives as a result of using them. > > Can you explain the background to the insns, what they are used for, > etc, so we can see if there's an implementation that fits better > in the instrumentation framework? > The instructions were added to communicate with optional hardware accelerator units that a system may have. The copy/paste instructions an also be used to implement memcopy. To use a hardware accelerator a the user program makes an OS call to register the hardware accelerator. The user program maps a memory region for the accellerator into its program space. The user program can then communicate with the accelerator reading/writing to the memory region, The copy and paste instruction are used to move the data to/from the mapped memory for the hardware accelerator. The hardware only allows the copy and paste instructions to be used to communicate with the accelerators. Normal loads and stores can not be used. If you try to use normal loads/stores you get a bus error. The document: https://github.com/libnxz/power-gzip/blob/master/doc/power_nx_gzip_um.pdf describes this in more detail. I haven't actually written an code for an accelerator but I was given some test programs for use in the Valgrind support development. One of the tests is a simple memcopy program without an accelerator. The other test communicate with an accelerator. The specific instructions are described in the ISA https://ibm.ent.box.com/s/1hzcwkwf8rbju5h9iyf44wm94amnlcrv I believe the layout for the memory used to communicate could be different for each accelerator. The memory will be changed by the accelerator. I don't think there is anyway we could know what parts of the memory were changed (initialized or not) by the accelerator prior to a copy from the mapped memory region back to a data structure in the user program. The instructions require the entire 128byes to be copied/pasted. You can not do a subset of the 128-byte memory. In my first attempt at supporting the instructions, I created a new 128-byte "copy buffer register' in the guest state. I had the copy and paste instructions explicitly copy and paste to the guest state copy buffer register. I also had a guest state register to track the status of a copy/paste in progress or not so I could detect errors. This worked for the memory copy program. I would still have to have the host do a copy/paste of the guest copy buffer register. I would have to get the mapped address from the instruction to then do the copy/paste of the guest copy buffer. It was all rather a mess. I saw no benefit in having a guest copy buffer. Since I have to use the copy and paste instructions, I really didn't see any other way to handle these instructions other then using a dirty helper to actually do the operations on the host. I can send you the test programs if that helps. Carl -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 Carl Love changed: What|Removed |Added CC||tul...@quites.com.br -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 Carl Love changed: What|Removed |Added Attachment #137535|0 |1 is obsolete|| Attachment #138168|0 |1 is obsolete|| --- Comment #10 from Carl Love --- Created attachment 138846 --> https://bugs.kde.org/attachment.cgi?id=138846=edit PPC add copy, paste, cpabort support Updated patch to add the Memcheck trickery to get Memcheck to detect undefined bits in the copy paste buffer. In comment 9, you mentioned that the dirty handler didn't return a value. Actually it returns the 8-bit CR0 value in a UInt. The suggestion was to have the dirty helper return a UWord. Unfortunately UWord is not defined. I tested using a ULong and a UInt as the dirty helper return value and both seem to work. I went with the UInt as it is a little easier to extract the CR0 value. Not sure if there is something in the trickery that requires ULong instead of UInt? The IRStmt_Exit() call was modified to mask out the lower 8-bits where the CR0 value is returned before comparing against zero. The dirty helper ensures that the upper 24-bits are all zero. Per the suggested testing, I tested with all bits defined. Valgrind does not report an error. When one or all of the buffer bytes are undefined Valgrind reports: =885408== Conditional jump or move depends on uninitialised value(s) ==885408==at 0x180890: test_copy (test_copy_paste1.c:18) ==885408==by 0x180963: main (test_copy_paste1.c:50) as expected. I also tested removing the masking out of the CR0 field and verified the sig trap is generated. The message was: ==836609== Memcheck, a memory error detector ==836609== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==836609== Using Valgrind-3.18.0.GIT and LibVEX; rerun with -h for copyright inf o ==836609== Command: ./test_copy_paste2 ==836609== ==836609== Conditional jump or move depends on uninitialised value(s) ==836609==at 0x180890: test_copy (test_copy_paste2.c:18) ==836609==by 0x180A0F: main (test_copy_paste2.c:79) ==836609== ==836609== ==836609== Process terminating with default action of signal 5 (SIGTRAP) ==836609==at 0x180890: test_copy (test_copy_paste2.c:18) ==836609==by 0x180A0F: main (test_copy_paste2.c:79) ==836609== ==836609== HEAP SUMMARY: ==836609== in use at exit: 0 bytes in 0 blocks ==836609== total heap usage: 0 allocs, 0 frees, 0 bytes allocated ==836609== ==836609== All heap blocks were freed -- no leaks are possible ==836609== ==836609== Use --track-origins=yes to see where uninitialised values come from ==836609== For lists of detected and suppressed errors, rerun with: -s ==836609== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0) Trace/breakpoint trap (core dumped) The code was commented based on Julian's explanation in comment 9 to document how the trickery works. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 --- Comment #12 from Carl Love --- Tulio: I think you are probably better able to clarify the comment from Julian in comment 11. > The point is .. if I understand "paste" correctly, the destination address is > not part of the "normal" program address space. So the Ifx_Write annotation > in this case is irrelevant. Indeed, if the destination address is part of > *some other* address space, then we actually need to omit that Ifx_Write > annotation, because othewise Memcheck will update its status bits for that > address range in this program's address space, which would be wrong. The destination address for the paste instruction is always imapped into the current user address space, correct? Assuming Tulio agrees, than we will always want to have the Ifx_Write annotation. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 Carl Love changed: What|Removed |Added Attachment #138846|0 |1 is obsolete|| --- Comment #15 from Carl Love --- Created attachment 138960 --> https://bugs.kde.org/attachment.cgi?id=138960=edit PPC add copy, paste, cpabort support Updated patch - Added #if defined(__powerpc__) around body of copy_paste_abort_dirty_helper() function. - Changed "asm volitile" to "__asm__ __volitile__" for the copy, paste and cpabort instructions in the copy_paste_abort_dirty_helper() function to make it consistent with other inline assembly. - Added clarifying comments about the paste instruction per comment 11 I retested the patch with the above changes. I believe all concerns have now been addressed. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 Carl Love changed: What|Removed |Added Status|REPORTED|RESOLVED Resolution|--- |FIXED --- Comment #16 from Carl Love --- Patch committed. commit fa4d21af44861e504a398412c9a120b28d6ceb4e (HEAD -> master, origin/master, origin/HEAD) Author: Carl Love Date: Thu May 27 11:54:22 2021 -0500 PPC64: Add support for copy, cpabort, paste instructions -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED --- Comment #17 from Carl Love --- Closing -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED --- Comment #31 from Carl Love --- closing -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 Carl Love changed: What|Removed |Added Status|CONFIRMED |RESOLVED Resolution|--- |FIXED --- Comment #30 from Carl Love --- patch committed commit 8f69756a2215e396b93573c9568cab00cc6c116d (HEAD -> master, origin/master, origin/HEAD) Author: Carl Love Date: Tue May 4 14:49:49 2021 -0500 PPC64: add support for the vectored system call instruction scv. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 --- Comment #3 from Carl Love --- Created attachment 138153 --> https://bugs.kde.org/attachment.cgi?id=138153=edit fixes for the copy, paste patch Yes, the dirty helper effects for the guest memory state is missing. My bad. The copy instruction reads from the guest memory and the paste instruction writes to guest memory. The cpabort instruction does not touch the guest state. Rather it resets the copy paste state in the underlying host hardware. Not sure how to reflect that in the dirty helper effects. I set the effect to read from address 0 which is really not accurate. Really need another identifier for "no change"? I have attached a patch with the fixes for comments. Please let me know if the changes for copy and paste look OK, and any thoughts how to fix the cpabort effects. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 Carl Love changed: What|Removed |Added Attachment #138153|0 |1 is obsolete|| --- Comment #4 from Carl Love --- Created attachment 138168 --> https://bugs.kde.org/attachment.cgi?id=138168=edit fixes for the copy, paste patch Updated fixes patch -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 434840] PPC64 darn instruction not supported
https://bugs.kde.org/show_bug.cgi?id=434840 Carl Love changed: What|Removed |Added Attachment #137204|0 |1 is obsolete|| --- Comment #8 from Carl Love --- Created attachment 138144 --> https://bugs.kde.org/attachment.cgi?id=138144=edit patch to add darn instruction support Updated the patch. Added a comment to thedis_darn() function in guest_ppc_toIR.c and darn_dirty_helper in guest_ppc_helpers stating the dirty helper does not change the guest state or guest memory. It simply returns the value from running the darn instruction on the host. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 434840] PPC64 darn instruction not supported
https://bugs.kde.org/show_bug.cgi?id=434840 --- Comment #9 from Carl Love --- Patch committed. commit 8afb49abe04a341d60b441c1f09a956aeccf0bbb (HEAD -> master, origin/master, origin/HEAD) Author: Carl Love Date: Mon Mar 22 17:55:05 2021 -0500 PPC64: Add support for the darn instruction -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 434840] PPC64 darn instruction not supported
https://bugs.kde.org/show_bug.cgi?id=434840 Carl Love changed: What|Removed |Added Resolution|--- |FIXED Status|REPORTED|RESOLVED --- Comment #10 from Carl Love --- Closing issue -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 434840] PPC64 darn instruction not supported
https://bugs.kde.org/show_bug.cgi?id=434840 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 Carl Love changed: What|Removed |Added Attachment #134552|0 |1 is obsolete|| --- Comment #14 from Carl Love --- Created attachment 135358 --> https://bugs.kde.org/attachment.cgi?id=135358=edit patch to add support for the scv instruction I have updated the scv support patch. The new patch adds the needed support to parse the scv instruction in guest_ppc_toIR.c. It adds the needed support to call the sc or the scv instruction in the power assembly system call wrapper function, fixes up the setting of the at_restart and in_complete_to_committed variables and finally adds a test case for the sc and scv instructions. The patch has been tested on Power 8 BE, Power 8 LE, Power 9 (ISA 3.0) with kernel support for the scv instruction, Power 9 (ISA 3.0) without kernel support for the scv instruction and on a prototype ISA 3.1 hardware. The patch works without adding new regression errors. Julian can you please review the patch. Thanks. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 434840] New: PPC64 darn instruction not supported
https://bugs.kde.org/show_bug.cgi?id=434840 Bug ID: 434840 Summary: PPC64 darn instruction not supported Product: valgrind Version: unspecified Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: vex Assignee: jsew...@acm.org Reporter: c...@us.ibm.com Target Milestone: --- PPC 64 the ISA 3.0 darn (deliver a random number) instruction is not supported -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 434840] PPC64 darn instruction not supported
https://bugs.kde.org/show_bug.cgi?id=434840 --- Comment #1 from Carl Love --- Created attachment 136990 --> https://bugs.kde.org/attachment.cgi?id=136990=edit patch to add darn instruction support The attached patch to add support for the darn instruction uses a clean helper to add the support. The clean helper uses an inline assembly statement to call the darn (Deliver a Random Number) instruction. This is not the normal or preferred way to support an instruction. AMD 64 used a dirty helper to support its random number generator. I looked at C code random number generators but did not a good solution. Julian, please let me know if you are ok with this non-standard implementation for supporting the random number generation instruction. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 Carl Love changed: What|Removed |Added Attachment #136175|0 |1 is obsolete|| --- Comment #27 from Carl Love --- Created attachment 137063 --> https://bugs.kde.org/attachment.cgi?id=137063=edit patch to add support for the scv instruction Updated the scv instruction support patch. The scv instruction requires Linux kernel 5.10.11 or newer. The initial patch development was on an older kernel so wasn't actually exercising the scv paths in the original patch. That is why Mark ran into issues with the patch. One issue with the patch is the SC_FLAG and SCV_FLAG defines. These #defines were created to set a flag indicating which system call instruction is to be used. Unfortunately I could not find an include file that is visible in VEX as well as coregrind/m_syswrap and in coregrind/pub_core_syscall.h. As a result, I had to add the defines for these values in three different places with a comment pointing at the other locations. Rather ugly. Wasn't sure if we wanted to create an include file for these that would then be globally available?? Suggestions on how to better was to make these defines more globally visible would be nice. The patch has been tested on Power 8LE, Power 8BE, Power 9 (with scv support) and prototype ISA 3.1 hardware. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 434849] The vdso is not available when running on ppc64*
https://bugs.kde.org/show_bug.cgi?id=434849 --- Comment #1 from Carl Love --- The issue does not appear to be just on the PPC platform. I tried the same test on my Intel laptop running a REL release more /etc/redhat-release Red Hat Enterprise Linux release 8.3 (Ootpa) and see the same issue LD_SHOW_AUXV=1 valgrind /bin/true AT_SYSINFO_EHDR: 0x7ffc587c4000 AT_HWCAP:bfebfbff AT_PAGESZ: 4096 AT_CLKTCK: 100 AT_PHDR: 0x559a635f1040 AT_PHENT:56 AT_PHNUM:11 AT_BASE: 0x7f5ced33d000 AT_FLAGS:0x0 AT_ENTRY:0x559a635f2580 AT_UID: 1000 AT_EUID: 1000 AT_GID: 1000 AT_EGID: 1000 AT_SECURE: 0 AT_RANDOM: 0x7ffc5864ab99 AT_HWCAP2: 0x0 AT_EXECFN: /usr/bin/valgrind AT_PLATFORM: x86_64 ==39447== Memcheck, a memory error detector ==39447== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==39447== Using Valgrind-3.16.0 and LibVEX; rerun with -h for copyright info ==39447== Command: /bin/true ==39447== AT_HWCAP:bfebfbff AT_PAGESZ: 4096 AT_CLKTCK: 100 AT_PHDR: 0x108040 AT_PHENT:56 AT_PHNUM:10 AT_BASE: 0x400 AT_FLAGS:0x0 AT_ENTRY:0x109740 AT_UID: 1000 AT_EUID: 1000 AT_GID: 1000 AT_EGID: 1000 AT_SECURE: 0 AT_RANDOM: 0x1fff000fdc AT_EXECFN: /bin/true AT_PLATFORM: x86_64 ==39447== ==39447== HEAP SUMMARY: ==39447== in use at exit: 0 bytes in 0 blocks ==39447== total heap usage: 0 allocs, 0 frees, 0 bytes allocated ==39447== ==39447== All heap blocks were freed -- no leaks are possible ==39447== ==39447== For lists of detected and suppressed errors, rerun with: -s ==39447== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 434840] PPC64 darn instruction not supported
https://bugs.kde.org/show_bug.cgi?id=434840 Carl Love changed: What|Removed |Added Attachment #136999|0 |1 is obsolete|| --- Comment #6 from Carl Love --- Created attachment 137204 --> https://bugs.kde.org/attachment.cgi?id=137204=edit patch to add darn instruction support Updated patch Fixed: Return false on L=3 to generate SIGILL on illegal instruction. Removed #else clause in dirty helper as the return value, val, is already set to the error value. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 Carl Love changed: What|Removed |Added Attachment #137201|0 |1 is obsolete|| --- Comment #10 from Carl Love --- Created attachment 137202 --> https://bugs.kde.org/attachment.cgi?id=137202=edit functional support ISA 3.1 for reduced precision outer product operations uploaded the wrong file last time -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429375] PPC ISA 3.1 support is missing, part 9
https://bugs.kde.org/show_bug.cgi?id=429375 Carl Love changed: What|Removed |Added Resolution|--- |FIXED Status|REPORTED|RESOLVED --- Comment #6 from Carl Love --- Patches committed 3/30/2021 commit f69bcfc64233a84be4378fed9ec2ddf1d1ec4bcc Author: Carl Love Date: Mon Nov 16 19:09:47 2020 -0600 VSX Permute Control Vector Generate Operation tests. commit 3cc0232c46a5905b4a6c2fbd302b58bf5f90b3d5 Author: Carl Love Date: Mon Jan 11 16:00:57 2021 -0600 PPC64: ISA 3.1 VSX PCV Generate Operations xgenpcvbm VSX Vector Generate PCV from Byte Mask xxgenpcvdmVSX Vector Generate PCV from Doubleword Mask xxgenpcvhmVSX Vector Generate PCV from Halfword Mask xxgenpcvwmVSX Vector Generate PCV from Word Mask Closing bugzilla -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 Carl Love changed: What|Removed |Added Attachment #136291|0 |1 is obsolete|| --- Comment #9 from Carl Love --- Created attachment 137201 --> https://bugs.kde.org/attachment.cgi?id=137201=edit functional support ISA 3.1 for reduced precision outer product operations Updating patch with requested changes -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 Carl Love changed: What|Removed |Added Attachment #136293|0 |1 is obsolete|| --- Comment #11 from Carl Love --- Created attachment 137203 --> https://bugs.kde.org/attachment.cgi?id=137203=edit functional support for ISA 3.1 Reduced precision missing integer-based outer product operations Update the functional support for the missing integer-based outer product operations -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 --- Comment #12 from Carl Love --- Patches committed commit c589b652939655090c005a982a71f50c489fb5ce (HEAD -> master, origin/master, origin/HEAD) Author: root Date: Fri Feb 12 16:00:53 2021 -0500 Reduced precision Missing Integer based outer tests commit e09fdaf569b975717465ed8043820d0198d4d47d Author: Carl Love Date: Fri Feb 26 16:05:12 2021 -0600 PPC64: Reduced-Precision: Missing Integer-based Outer Product Operations Add support for: pmxvi16ger2 VSX Vector 16-bit Signed Integer GER (rank-2 update), Prefixed Masked pmxvi16ger2pp VSX Vector 16-bit Signed Integer GER (rank-2 update) (Positive multiply, Positive accumulate), Prefixed Masked pmxvi8ger4spp VSX Vector 8-bit Signed/Unsigned Integer GER (rank-4 update) with Saturation (Positive multiply, Positive accumulate), Prefixed Masked xvi16ger2 VSX Vector 16-bit Signed Integer GER (rank-2 update) xvi16ger2pp VSX Vector 16-bit Signed Integer GER (rank-2 update) (Positive multiply, Positive accumulate) xvi8ger4spp VSX Vector 8-bit Signed/Unsigned Integer GER (rank-4 update) with Saturation (Positive multiply, Positive accumulate) commit c8fa838be405d7ac43035dcf675bf490800c26ec Author: root Date: Fri Feb 12 15:59:32 2021 -0500 Reduced Precision bfloat16 outer product tests commit 078f89e99b6f62e043f6138c6a7ae238befc1f2a Author: Carl Love Date: Fri Feb 26 15:46:55 2021 -0600 PPC64: Reduced-Precision - bfloat16 Outer Product & Format Conversion Operations Add support for: pmxvbf16ger2 Prefixed Masked VSX Vector bfloat16 GER (Rank-2 Update) pmxvbf16ger2pp Prefixed Masked VSX Vector bfloat16 GER (Rank-2 Update) Positive multiply, Positive accumulate pmxvbf16ger2pn Prefixed Masked VSX Vector bfloat16 GER (Rank-2 Update) Positive multiply, Negative accumulate pmxvbf16ger2np Prefixed Masked VSX Vector bfloat16 GER (Rank-2 Update) Negative multiply, Positive accumulate pmxvbf16ger2nn Prefixed Masked VSX Vector bfloat16 GER (Rank-2 Update) Negative multiply, Negative accumulate xvbf16ger2VSX Vector bfloat16 GER (Rank-2 Update) xvbf16ger2pp VSX Vector bfloat16 GER (Rank-2 Update) Positive multiply, Positive accumulate xvbf16ger2pn VSX Vector bfloat16 GER (Rank-2 Update) Positive multiply, Negative accumulate xvbf16ger2np VSX Vector bfloat16 GER (Rank-2 Update) Negative multiply, Positive accumulate xvbf16ger2nn VSX Vector bfloat16 GER (Rank-2 Update) Negative multiply, Negative accumulate xvcvbf16sp VSX Vector Convert bfloat16 to Single-Precision format xvcvspbf16 VSX Vector Convert with round Single-Precision to bfloat16 format closing bug -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 Carl Love changed: What|Removed |Added Status|CONFIRMED |RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED --- Comment #13 from Carl Love --- Closing the bugzilla ISA 3.1 support is now complete -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429375] PPC ISA 3.1 support is missing, part 9
https://bugs.kde.org/show_bug.cgi?id=429375 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 434840] PPC64 darn instruction not supported
https://bugs.kde.org/show_bug.cgi?id=434840 --- Comment #3 from Carl Love --- Argh, I inadvertently added the alternate C code solution. That was for playing. I thought I had removed that. I will change to a dirty helper and get rid of the C code solution. Thanks -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 434840] PPC64 darn instruction not supported
https://bugs.kde.org/show_bug.cgi?id=434840 Carl Love changed: What|Removed |Added Attachment #136990|0 |1 is obsolete|| --- Comment #4 from Carl Love --- Created attachment 136999 --> https://bugs.kde.org/attachment.cgi?id=136999=edit patch to add darn instruction support Updated the patch. - Removed the C code random number generator code. Was not supposed to be included in previous patch. - Reworked the helper to make it a dirty helper that returns the random value. Patch tested on Power 8, Power 9 and on ISA 3.1 prototype hardware. Please let me know if the updated patch is good to go. Thanks. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 --- Comment #12 from Carl Love --- Created attachment 136159 --> https://bugs.kde.org/attachment.cgi?id=136159=edit Change names from trinary to ternary in existing code Per the comment from Julian to use ternary not trinary, this patch was created to change existing uses of trinary to ternary. Adding it to the bugzilla so all patches are documented in the bugzilla. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 Carl Love changed: What|Removed |Added Attachment #135082|0 |1 is obsolete|| --- Comment #11 from Carl Love --- Created attachment 136158 --> https://bugs.kde.org/attachment.cgi?id=136158=edit Functional support for ISA 3.1 New Iops Updated patch based on comments -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 Carl Love changed: What|Removed |Added Resolution|--- |FIXED Status|REPORTED|RESOLVED --- Comment #14 from Carl Love --- Closing bugzilla -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 --- Comment #15 from Carl Love --- FYI, it has been brought to my attention that in the name changing patch I have a typo Fp128Ternnary not Fp128Ternary. However, the typo is then fixed in the patch to add new IOps. Looks like I merged the spelling fix into the wrong patch during development. The mainline code looks fine. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429354] PPC ISA 3.1 support is missing, part 8
https://bugs.kde.org/show_bug.cgi?id=429354 Carl Love changed: What|Removed |Added Attachment #133461|0 |1 is obsolete|| --- Comment #5 from Carl Love --- Created attachment 136162 --> https://bugs.kde.org/attachment.cgi?id=136162=edit Functional support for ISA 3.1, VSX Mask manipulation operations Updated the patch per comments. I looked at the suggestions on how to make copy_MSB_bit_fields() more efficient. PPC64 supports doing the basic algorithm that was outlined as a single V128 value except for doing the sum across lanes. That would need to be done using a clean helper. In studying the code, I realized that the copy_MSB_bit_fields() is very similar to the ISA 3.1 instruction vgnb. The difference is the result is stored in the low order bits not the high order bits. I rewrote copy_MSB_bit_fields() using the vgnb implementation as a base leveraging the existing clean helpers. The new function is much more efficient. Although I didn't use the suggested algorithm, it was very helpful to study. I realized that a number of the other instructions in the patch could be done using the arithmetic right shift much more efficiently without the use of the copy_MSB_bit_fields() or the "for(i = 0; i< max; i++)" which Julian had concerns about. Reimplemented the vexpandbm, vexpanddmn, vexpandhm, vexpandwm instructions eliminating the call to copy_MSB_bit_fileds() and the need for the for(i = 0; i< max; i++) loop. The new implementation is much more efficient. Reimplemented the mtvsrbm, mtvsrhm, mtvsrwm, mtvsrdm instructions to remove the need for the for(i = 0; i< max; i++) loop. The new implementation is much more efficient. The for(i = 0; i< max; i++) has been removed. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429352] PPC ISA 3.1 support is missing, part 7
https://bugs.kde.org/show_bug.cgi?id=429352 --- Comment #13 from Carl Love --- Patches committed commit 6daaeb0ff45af6b39f14003e392992a5ac7d51c8 (HEAD -> master, origin/master, origin/HEAD) Author: Carl Love Date: Wed Nov 4 12:23:53 2020 -0600 PPC64: 128-bit Binary Integer Operations, part tests. commit affeb57ccd48a77cd7b18e56191e1eb72152c13e Author: Carl Love Date: Fri Jan 22 14:13:04 2021 -0600 PPC64: ISA 3.1 (new Iops) 128-bit Binary Integer Operations Add support for: dcffixqq DFP Convert From Fixed Quadword Quad dctfixqq DFP Convert To Fixed Quadword Quad vdivesq Vector Divide Extended Signed Quadword vdiveuq Vector Divide Extended Unsigned Quadword vdivsq Vector Divide Signed Quadword vdivuq Vector Divide Unsigned Quadword vmodsq Vector Modulo Signed Quadword vmoduq Vector Modulo Unsigned Quadword vmulesd Vector Multiply Even Signed Doubleword vmuleud Vector Multiply Even Unsigned Doubleword vmulosd Vector Multiply Odd Signed Doubleword vmuloud Vector Multiply Odd Unsigned Doubleword vmsumcud Vector Multiply-Sum & write Carry-out Unsigned Doubleword xscvqpsqz VSX Scalar Convert with round to zero Quad-Precision to Signed Quadword xscvqpuqz VSX Scalar Convert with round to zero Quad-Precision toUnsigned Quadword xscvsqqp VSX Scalar Convert Signed Quadword to Quad-Precision xscvuqqp VSX Scalar Convert Unsigned Quadword to Quad-Precision commit 5defeb017f94686aa4c746729ff5eca35aa79fb1 Author: Carl Love Date: Mon Feb 22 12:11:05 2021 -0600 PPC64: Fix naming trinary to ternary commit 953f54085dfb06e53b47d1d08e4014bac2202282 Author: Carl Love Date: Mon Jan 25 11:44:12 2021 -0600 PPC64: Add ACC register file registers to get_otrack_shadow_offset_wrkget_otrack_shadow_offset_wrk() commit 4ebdf8653859ac31f4f9e6c0f4ec4e0114498d7c Author: Carl Love Date: Fri Jan 22 13:15:20 2021 -0600 PPC64: Fix V-bit casting for existing Iops. Iop_TruncF128toI64S, Iop_TruncF128toI32S, Iop_TruncF128toI64U, Iop_TruncF128toI32U, Iop_ReinterpI32asF32, Iop_ReinterpF32asI32, Iop_ReinterpF64asI64, Iop_ReinterpI64asF64, Iop_ReinterpI64asD64, Iop_ReinterpD64asI64 -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429375] PPC ISA 3.1 support is missing, part 9
https://bugs.kde.org/show_bug.cgi?id=429375 Carl Love changed: What|Removed |Added Attachment #134757|0 |1 is obsolete|| --- Comment #4 from Carl Love --- Created attachment 136163 --> https://bugs.kde.org/attachment.cgi?id=136163=edit VSX-PCV Generate Operation functional support Addressed comments from Julian to add static or comment about called from generated code to the various functions. Added vassert(0) instead of prints as requested. Removed redundant return statements. VSX-PCV Generate Operation function support patch has been retested and passed regressing tests. No changes were made to the test cases for VSX-PCV generate operations. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 Carl Love changed: What|Removed |Added Attachment #135371|0 |1 is obsolete|| --- Comment #18 from Carl Love --- Created attachment 136175 --> https://bugs.kde.org/attachment.cgi?id=136175=edit patch to add support for the scv instruction Rebased patch on Vaglrind mainline, enabled SCV which was masked out in Mark's committed patch. Tested on Power 8 LE, Power BE, Power 9 and prototype hardware using latest glibc that I can get. The patch seems to be working and regression tests pass. Note, with the latest glibc there are a number of new regression test failures specifically in helgrind without applying the scv patch. The SCV patch doesn't seem to introduce any additional issues. Will look into the new baseline regression test failures. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429354] PPC ISA 3.1 support is missing, part 8
https://bugs.kde.org/show_bug.cgi?id=429354 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429354] PPC ISA 3.1 support is missing, part 8
https://bugs.kde.org/show_bug.cgi?id=429354 Carl Love changed: What|Removed |Added Resolution|--- |FIXED Status|CONFIRMED |RESOLVED --- Comment #8 from Carl Love --- closing -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 429354] PPC ISA 3.1 support is missing, part 8
https://bugs.kde.org/show_bug.cgi?id=429354 Carl Love changed: What|Removed |Added Status|REPORTED|CONFIRMED Ever confirmed|0 |1 --- Comment #7 from Carl Love --- Patches committed. commit 3c31707cd3d795bcdd3afc540b5aad75d1e50008 (HEAD -> master, origin/master, origin/HEAD) Author: Carl Love Date: Mon Nov 16 19:53:22 2020 -0600 VSX Mask Manipulation operation tests. commit 82777ee4080a339fb16d970411b743598b00590c Author: Carl Love Date: Fri May 1 23:49:33 2020 -0500 ISA 3.1 VSX Mask Manipulation Operations Add support for: mtvsrbmMove to VSR Byte Mask mtvsrbmiMove To VSR Byte Mask Immediate mtvsrdmMove to VSR Doubleword Mask mtvsrhmMove to VSR Halfword Mask mtvsrqmMove to VSR Quadword Mask mtvsrwmMove to VSR Word Mask vcntmbbVector Count Mask Bits Byte vcntmbdVector Count Mask Bits Doubleword vcntmbhVector Count Mask Bits Halfword vcntmbwVector Count Mask Bits Word vexpandbmVector Expand Byte Mask vexpanddmVector Expand Doubleword Mask vexpandhmVector Expand Halfword Mask vexpandqmVector Expand Quadword Mask vexpandwmVector Expand Word Mask vextractbmVector Extract Byte Mask vextractdmVector Extract Doubleword Mask vextracthmVector Extract Halfword Mask vextractqmVector Extract Quadword Mask vextractwmVector Extract Word Mask -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] New: PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 Bug ID: 433801 Summary: PPC ISA 3.1 support is missing, part 10 Product: valgrind Version: unspecified Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: sgcheck Assignee: jsew...@acm.org Reporter: c...@us.ibm.com Target Milestone: --- This bugzilla is for the final set of patches to add support for the Power ISA 3.1 instructions. The previous set of patches is in bugzilla 429375. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 --- Comment #4 from Carl Love --- Created attachment 136294 --> https://bugs.kde.org/attachment.cgi?id=136294=edit functional tests for Reduced-Precision: Missing Integer-based Outer Product Operations Functional tests for the Reduced-Precision: Missing Integer-based Outer Product Operations instructions -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 --- Comment #1 from Carl Love --- Created attachment 136291 --> https://bugs.kde.org/attachment.cgi?id=136291=edit Reduced-Precision - bfloat16 Outer Product & Format Conversion Operations Add support for: pmxvbf16ger2 Prefixed Masked VSX Vector bfloat16 GER (Rank-2 Update) pmxvbf16ger2pp Prefixed Masked VSX Vector bfloat16 GER (Rank-2 Update) Positive multiply, Positive accumulate pmxvbf16ger2pn Prefixed Masked VSX Vector bfloat16 GER (Rank-2 Update) Positive multiply, Negative accumulate pmxvbf16ger2np Prefixed Masked VSX Vector bfloat16 GER (Rank-2 Update) Negative multiply, Positive accumulate pmxvbf16ger2nn Prefixed Masked VSX Vector bfloat16 GER (Rank-2 Update) Negative multiply, Negative accumulate xvbf16ger2VSX Vector bfloat16 GER (Rank-2 Update) xvbf16ger2pp VSX Vector bfloat16 GER (Rank-2 Update) Positive multiply, Positive accumulate xvbf16ger2pn VSX Vector bfloat16 GER (Rank-2 Update) Positive multiply, Negative accumulate xvbf16ger2np VSX Vector bfloat16 GER (Rank-2 Update) Negative multiply, Positive accumulate xvbf16ger2nn VSX Vector bfloat16 GER (Rank-2 Update) Negative multiply, Negative accumulate xvcvbf16sp VSX Vector Convert bfloat16 to Single-Precision format xvcvspbf16 VSX Vector Convert with round Single-Precision to bfloat16 format -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 --- Comment #3 from Carl Love --- Created attachment 136293 --> https://bugs.kde.org/attachment.cgi?id=136293=edit PPC64: Reduced-Precision: Missing Integer-based Outer Product Operations Add support for: pmxvi16ger2 VSX Vector 16-bit Signed Integer GER (rank-2 update), Prefixed Masked pmxvi16ger2pp VSX Vector 16-bit Signed Integer GER (rank-2 update) (Positive multiply, Positive accumulate), Prefixed Masked pmxvi8ger4spp VSX Vector 8-bit Signed/Unsigned Integer GER (rank-4 update) with Saturation (Positive multiply, Positive accumulate), Prefixed Masked xvi16ger2 VSX Vector 16-bit Signed Integer GER (rank-2 update) xvi16ger2pp VSX Vector 16-bit Signed Integer GER (rank-2 update) (Positive multiply, Positive accumulate) xvi8ger4spp VSX Vector 8-bit Signed/Unsigned Integer GER (rank-4 update) with Saturation (Positive multiply, Positive accumulate) -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 --- Comment #2 from Carl Love --- Created attachment 136292 --> https://bugs.kde.org/attachment.cgi?id=136292=edit functional tests for Reduced-Precision - bfloat16 Outer Product & Format Conversion Operations Functional tests for the Reduced-Precision - bfloat16 Outer Product & Format Conversion Operations instructions -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 433801] PPC ISA 3.1 support is missing, part 10
https://bugs.kde.org/show_bug.cgi?id=433801 Carl Love changed: What|Removed |Added CC||will_schm...@vnet.ibm.com Ever confirmed|0 |1 Status|REPORTED|CONFIRMED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 --- Comment #26 from Carl Love --- Julian: Yes, that is correct, the return value for an error is negative. The condition code register is not used. On Fri, 2021-03-05 at 09:57 +, Julian Seward wrote: > https://urldefense.proofpoint.com/v2/url?u=https-3A__bugs.kde.org_show-5Fbug.cgi-3Fid-3D431157=DwIFaQ=jf_iaSHvJObTbx-siA1ZOg=RFEmMkZAk--_wFGN5tkM_A=LDVfEmUd-H_cdiL0yAJIDD4f9GlVpf4oXZSJe8xr5xU=xZmlKz03m2k_wUJhzUNSKgExgb7_Drdzz2_0WAG3yrg= > > > --- Comment #23 from Julian Seward --- > (In reply to Tom Hughes from comment #22) > > So if thinks the open was a success with a negative file descriptor > > returned? > > Ah, maybe it's trying to tell us something :-) I vaguely remember > reading > that this new syscall convention denotes failure by returning a value > between > -1 and -4096 [bizarrely, like x86-32 in the earliest days of > Linux]. If that's > true, it would imply that the call was passed to the kernel using the > new > convention, it failed, but we mistakenly believe, in the post-syscall > handling, > that it succeeded. > -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] New: PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 Bug ID: 435665 Summary: PPC ISA 3.0 copy, paste, cpabort instructions are not supported Product: valgrind Version: unspecified Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: vex Assignee: jsew...@acm.org Reporter: c...@us.ibm.com Target Milestone: --- The copy, paste and cpabort instructions are not supported. They require kernel support which has recently been added. These instructions can be used to do a 128byte block memcopy. They can also be used to communicate with hardware accelerators if they exist on the host system. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 --- Comment #1 from Carl Love --- Created attachment 137535 --> https://bugs.kde.org/attachment.cgi?id=137535=edit PPC add copy, paste, cpabort support The patch uses a dirty helper to support the copy, paste, abort instructions. A dirty helper was used. Hardware accelerators require the use of the copy, paste and cpabort instructions for the user program to communicate. Thus the instructions must be issued on the host system with the address of the data to be copied/pasted. Cannot emulate the instructions with Iops. Julian, please review the patch and let me know if it looks OK. Thanks. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 435665] PPC ISA 3.0 copy, paste, cpabort instructions are not supported
https://bugs.kde.org/show_bug.cgi?id=435665 Carl Love changed: What|Removed |Added CC||will_schm...@vnet.ibm.com -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 431157] PPC_FEATURE2_SCV needs to be masked in AT_HWCAP2
https://bugs.kde.org/show_bug.cgi?id=431157 --- Comment #28 from Carl Love --- Mark, I was wondering if you have had a chance to try out the updated version of the scv patch. The updated patch takes care of the synchronous and asynchronous call paths. You do need to make sure you are testing with a kernel that is new enough to support scv and is not a partitioned system. Currently scv is not supported on partitioned systems from what I understand. Please let me know if see any issues with the updated patch. Thanks. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 432861] PPC modsw and modsd give incorrect results for 1 mod 12
https://bugs.kde.org/show_bug.cgi?id=432861 Carl Love changed: What|Removed |Added CC||will_schm...@vnet.ibm.com -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 432861] PPC modsw and modsd give incorrect results for 1 mod 12
https://bugs.kde.org/show_bug.cgi?id=432861 --- Comment #1 from Carl Love --- Created attachment 135639 --> https://bugs.kde.org/attachment.cgi?id=135639=edit Patch to fix the modsw and modsd instructions The patch has the fix for the modsw and modsd instructions. Also adds a testcase for the signed, unsigned versions of the mod instruction for both word and long types. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 432861] PPC modsw and modsd give incorrect results for 1 mod 12
https://bugs.kde.org/show_bug.cgi?id=432861 Carl Love changed: What|Removed |Added Status|CONFIRMED |RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 432861] PPC modsw and modsd give incorrect results for 1 mod 12
https://bugs.kde.org/show_bug.cgi?id=432861 Carl Love changed: What|Removed |Added Status|RESOLVED|CLOSED -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 432861] PPC modsw and modsd give incorrect results for 1 mod 12
https://bugs.kde.org/show_bug.cgi?id=432861 Carl Love changed: What|Removed |Added Ever confirmed|0 |1 Status|REPORTED|CONFIRMED --- Comment #2 from Carl Love --- Patch committed, closing bug commit b4eff82004077b5628e9c0958121fe6156c29664 (origin/master, origin/HEAD) Author: Carl Love Date: Wed Feb 10 21:04:22 2021 -0600 PPC, modsw and modsd instruction fix -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 432861] New: PPC modsw and modsd give incorrect results for 1 mod 12
https://bugs.kde.org/show_bug.cgi?id=432861 Bug ID: 432861 Summary: PPC modsw and modsd give incorrect results for 1 mod 12 Product: valgrind Version: unspecified Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: vex Assignee: jsew...@acm.org Reporter: c...@us.ibm.com Target Milestone: --- The result of 1 mod 12 should be 1. Valgrind is giving 0 for modsw and modsd -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 440906] powerpc valgrind testsuite; update test_isa_3_1_common.c to avoid modulo against hard regs
https://bugs.kde.org/show_bug.cgi?id=440906 --- Comment #2 from Carl Love --- FYI, issue initially seen with the gcc compiler in the AT at-next-16.0-0-alpha build. Issue reproduced using a build of the GCC compiler from the mainline gcc tree. -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 440906] powerpc valgrind testsuite; update test_isa_3_1_common.c to avoid modulo against hard regs
https://bugs.kde.org/show_bug.cgi?id=440906 --- Comment #3 from Carl Love --- Proposed patch reviewd, tested and committed. commit 733aba84822efe101a098446079b4798f1b51faf (HEAD -> master, origin/master, origin/HEAD) Author: Carl Love Date: Fri Sep 3 17:14:50 2021 + Fix impossible constraint issue in P10 testcase. This reworks the modulo operation as seen in valgrind/none/tests/ppc64/test_isa_3_1_common.c: initialize_source_registers(). Due to a GCC issue (PR101882), we will try to avoid a modulo operation with both input and outputs set to a hard register. In this case, we can apply the modulo operation to the args[] array value used to initialize the ra value. https://bugs.kde.org/show_bug.cgi?id=440906 -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 441512] remove troublesome block of code from guest_ppc_toIR code for pstxvp instruction
https://bugs.kde.org/show_bug.cgi?id=441512 --- Comment #1 from Carl Love --- Proposed patch reviewed, tested and committed. commit 041f6c19a0cd40fe684571c380399be518b8d6b2 (HEAD -> master, origin/master, origin/HEAD) Author: Carl Love Date: Fri Sep 3 16:36:31 2021 + Remove a unneeded / unnecessary prefix check. The pstxvp instruction is valid for R=1, i.e. use pc relative addressing. The test should have been remmoved before committing the ISA 3.1 support. https://bugs.kde.org/show_bug.cgi?id=441512 -- You are receiving this mail because: You are watching all bug changes.