[valgrind] [Bug 460616] disInstr(arm64): unhandled instruction 0x4E819402 (dotprod/ASIMDDP)
https://bugs.kde.org/show_bug.cgi?id=460616 --- Comment #6 from William Ashley --- Thanks Mark! -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 460616] disInstr(arm64): unhandled instruction 0x4E819402
https://bugs.kde.org/show_bug.cgi?id=460616 William Ashley changed: What|Removed |Added Attachment #160568|0 |1 is obsolete|| --- Comment #3 from William Ashley --- Created attachment 160669 --> https://bugs.kde.org/attachment.cgi?id=160669=edit Patch to add FEAT_DotProd support -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 460616] disInstr(arm64): unhandled instruction 0x4E819402
https://bugs.kde.org/show_bug.cgi?id=460616 --- Comment #2 from William Ashley --- On Friday I submitted the change to the valgrind-developers mailing list, https://sourceforge.net/p/valgrind/mailman/valgrind-developers/thread/ed40273d-295d-445c-8d97-9fc48f535...@amazon.com/ -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 441109] [ARM64] Invalid write of size 8 when it's really 16
https://bugs.kde.org/show_bug.cgi?id=441109 --- Comment #2 from William Ashley --- With stp (store pair), there's a similar problem. Pairs of 32, 64 and 128-bit values all get reported as the wrong write sizes. asm volatile ("stp s0, s1, [%0]" :: "r" (ptr) : "s0", "s1", "memory"); asm volatile ("stp d0, d1, [%0]" :: "r" (ptr) : "d0", "d1", "memory"); asm volatile ("stp q0, q1, [%0]" :: "r" (ptr) : "q0", "q1", "memory"); ==26048== Invalid write of size 4 ==26048==at 0x400630: main (strtest.c:12) ==26048== Address 0x4a1a140 is 0 bytes after a block of size 256 alloc'd ==26048==at 0x48682A4: malloc (vg_replace_malloc.c:431) ==26048==by 0x4005F3: main (strtest.c:3) ==26048== ==26048== Invalid write of size 8 ==26048==at 0x400638: main (strtest.c:13) ==26048== Address 0x4a1a140 is 0 bytes after a block of size 256 alloc'd ==26048==at 0x48682A4: malloc (vg_replace_malloc.c:431) ==26048==by 0x4005F3: main (strtest.c:3) ==26048== ==26048== Invalid write of size 8 ==26048==at 0x400640: main (strtest.c:14) ==26048== Address 0x4a1a140 is 0 bytes after a block of size 256 alloc'd ==26048==at 0x48682A4: malloc (vg_replace_malloc.c:431) ==26048==by 0x4005F3: main (strtest.c:3) -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 441109] [ARM64] Invalid write of size 8 when it's really 16
https://bugs.kde.org/show_bug.cgi?id=441109 --- Comment #1 from William Ashley --- To expand on this a bit, here's a sweep through all of the 'str' sizes: #include int main(void) { char *ptr = malloc(256); ptr += 256; asm volatile ("str b0, [%0]" :: "r" (ptr) : "b0", "memory"); asm volatile ("str h0, [%0]" :: "r" (ptr) : "h0", "memory"); asm volatile ("str s0, [%0]" :: "r" (ptr) : "s0", "memory"); asm volatile ("str d0, [%0]" :: "r" (ptr) : "d0", "memory"); asm volatile ("str q0, [%0]" :: "r" (ptr) : "q0", "memory"); free(ptr - 256); return 0; } which under the latest valgrind release shows the expected sizes except for q ==5990== Invalid write of size 1 ==5990==at 0x400608: main (strtest.c:5) ==5990== Address 0x4a1a140 is 0 bytes after a block of size 256 alloc'd ==5990==at 0x48682A4: malloc (vg_replace_malloc.c:431) ==5990==by 0x4005F3: main (strtest.c:3) ==5990== ==5990== Invalid write of size 2 ==5990==at 0x400610: main (strtest.c:6) ==5990== Address 0x4a1a140 is 0 bytes after a block of size 256 alloc'd ==5990==at 0x48682A4: malloc (vg_replace_malloc.c:431) ==5990==by 0x4005F3: main (strtest.c:3) ==5990== ==5990== Invalid write of size 4 ==5990==at 0x400618: main (strtest.c:7) ==5990== Address 0x4a1a140 is 0 bytes after a block of size 256 alloc'd ==5990==at 0x48682A4: malloc (vg_replace_malloc.c:431) ==5990==by 0x4005F3: main (strtest.c:3) ==5990== ==5990== Invalid write of size 8 ==5990==at 0x400620: main (strtest.c:8) ==5990== Address 0x4a1a140 is 0 bytes after a block of size 256 alloc'd ==5990==at 0x48682A4: malloc (vg_replace_malloc.c:431) ==5990==by 0x4005F3: main (strtest.c:3) ==5990== ==5990== Invalid write of size 8 ==5990==at 0x400628: main (strtest.c:9) ==5990== Address 0x4a1a140 is 0 bytes after a block of size 256 alloc'd ==5990==at 0x48682A4: malloc (vg_replace_malloc.c:431) ==5990==by 0x4005F3: main (strtest.c:3) Decode for the 'q' case does look correct (GET:V128, so it would be a 16-byte value) (arm64) 0x400628: str q0, [x0, #0] -- IMark(0x400628, 4, 0) -- t21 = Add64(GET:I64(16),0x0:I64) STle(t21) = GET:V128(320) PUT(272) = 0x40062C:I64 -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 441109] [ARM64] Invalid write of size 8 when it's really 16
https://bugs.kde.org/show_bug.cgi?id=441109 William Ashley changed: What|Removed |Added CC||w...@amazon.com -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 438322] disInstr(arm): unhandled instruction: 0xE320F014
https://bugs.kde.org/show_bug.cgi?id=438322 William Ashley changed: What|Removed |Added CC|w...@amazon.com | -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 438322] disInstr(arm): unhandled instruction: 0xE320F014
https://bugs.kde.org/show_bug.cgi?id=438322 William Ashley changed: What|Removed |Added CC||w...@amazon.com -- You are receiving this mail because: You are watching all bug changes.
[valgrind] [Bug 460616] disInstr(arm64): unhandled instruction 0x4E819402
https://bugs.kde.org/show_bug.cgi?id=460616 William Ashley changed: What|Removed |Added CC||w...@amazon.com --- Comment #1 from William Ashley --- Created attachment 160568 --> https://bugs.kde.org/attachment.cgi?id=160568=edit Patch to add FEAT_DotProd support I have implemented support for the dot product instructions (more specifically those under the FEAT_DotProd feature). The attached patch file applies cleanly to 'master' as of this writing. I haven't yet figured out the 'correct' process for submitting changes to the valgrind project. -- You are receiving this mail because: You are watching all bug changes.