Am 20.02.21 um 14:31 schrieb Stefan Weil:

TCG works and I get a Linux boot prompt in the guest Raspbian when
vector instructions for TCG are disabled, so obviously the undefined
instruction is simply unsupported for Jetson Nano and Xavier.

Patch used to disable it:

diff --git a/tcg/aarch64/tcg-target.h b/tcg/aarch64/tcg-target.h
index 5ec30dba25..2240adad1e 100644
--- a/tcg/aarch64/tcg-target.h
+++ b/tcg/aarch64/tcg-target.h
@@ -125,8 +125,8 @@ typedef enum {
  #define TCG_TARGET_HAS_mulsh_i64        1
  #define TCG_TARGET_HAS_direct_jump      1
-#define TCG_TARGET_HAS_v64 1
-#define TCG_TARGET_HAS_v128             1
+#define TCG_TARGET_HAS_v64              0
+#define TCG_TARGET_HAS_v128             0
  #define TCG_TARGET_HAS_v256             0
#define TCG_TARGET_HAS_andc_vec 1



cc'ing qemu-...@nongnu.org

I think QEMU TCG for AARCH64 hosts needs a runtime check to decide which vector instructions are supported by the host (like it is done for AMD64). It currently fails because it generates instructions which are unknown for NVIDIA Jetson Nano and Xavier (Tegra CPU).

TCI works (now tested on Apple M1), too.

Stefan



Reply via email to