summary refs log tree commit diff stats
path: root/results/classifier/gemma3:27b/instruction/1793608
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/gemma3:27b/instruction/1793608')
-rw-r--r--results/classifier/gemma3:27b/instruction/179360819
1 files changed, 19 insertions, 0 deletions
diff --git a/results/classifier/gemma3:27b/instruction/1793608 b/results/classifier/gemma3:27b/instruction/1793608
new file mode 100644
index 00000000..e865e400
--- /dev/null
+++ b/results/classifier/gemma3:27b/instruction/1793608
@@ -0,0 +1,19 @@
+
+
+
+qemu doesn't seem to support lxvwsx for POWER9 target
+
+When running a simple program built for POWER9 on QEMU 3.0.0 in linux-user mode, it crashes with a message: "illegal instruction". It turns out that lxvwsx instruction "Load Word and Splat Indexed" is not supported. If workaround is implemented by issuing two separate instructions (first load then splat) then all tests pass correctly.
+
+Operating system: Ubuntu Mate 16.04.2 64-bit (or Linux Mint 18 64-bit).
+Cross-compiler for gcc-powerpc64le-linux-gnu is installed (gcc-5 series).
+QEMU 3.0.0 is built from source and installed with: sudo make install
+
+The program in question: https://github.com/VectorChief/UniSIMD-assembler
+Turn off the workaround: RT_ELEM_COMPAT_PW9 should be set to 1 in the following file:
+https://github.com/VectorChief/UniSIMD-assembler/blob/master/core/config/rtarch_p32_128x1v2.h
+
+Change to the "test" directory and type "make -f simd_make_p64.mk".
+powerpc64le-linux-gnu-objdump -d simd_test.p64_32Lp9 > simd_test_p64_32Lp9.txt
+Open newly created text file simd_test_p64_32Lp9.txt and search for lxvwsx (in s_test01, ...)
+The instruction shows up in objdump correctly.
\ No newline at end of file