Es ist eine Frage sehr ähnlich zu diesem one.armv8-a: testen, ob SIMD-Register ist! = 0
Auf ARMv7-a, ich habe folgende Assembler-Code:
vcmp.f64 d0, #0
vmrs APSR_nzcv, fpscr
beq .jumpover
Wie kann ich diesen Code zu konvertieren ARMv8-a? Ich möchte testen, ob es in v0.16b Pixel gibt, die nicht Null sind.
EDIT # 1
Ich dachte an so etwas wie:
addv b0, v0.16b
fcmp s0, #0.0
beq .jumpover
Ist das richtig? Außerdem habe ich die folgende Anweisung gelesen: "Gleitkomma-FCMP- und FCCMP-Anweisungen setzen die Integer-Bedingungsflags direkt und ändern nicht die Bedingungs-Flags im FPSR." was ich nicht 100% sicher verstehe.
Bitte siehe https://www.element14.com/community/servlet/JiveServlet/previewBody/41836-102-1-229511/ARM.Reference_Manual.pdf. Lools wie Sie Daten Bewegungsbefehle wollen. Sie könnten umov w2, v0.8b [1] dann cmp w2, # 0 – InfinitelyManic
Ihre Frage ergibt keinen Sinn, da Sie Daten in einem ganzzahligen Datenformat beschreiben, aber sprechen über die Durchführung eines Gleitkomma-Vergleichs. –
ADDV d, Vn. Integer Summenelemente zu Skalar (Vektor). Wobei / B/8B, B/16B, H/4H, H/8H, S/2S oder S/4S ist. –
InfinitelyManic