From e08821583fbf608b093f10bd99e75d2a56e19441 Mon Sep 17 00:00:00 2001 From: Dmitry Selyutin Date: Mon, 25 Jul 2022 22:17:12 +0300 Subject: [PATCH] ppc/svp64: support svm mode --- gas/config/tc-ppc-svp64.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/gas/config/tc-ppc-svp64.c b/gas/config/tc-ppc-svp64.c index 5436ab203a7..f0427976c24 100644 --- a/gas/config/tc-ppc-svp64.c +++ b/gas/config/tc-ppc-svp64.c @@ -45,6 +45,7 @@ struct svp64_ctx { unsigned int mr : 1; unsigned int rg : 1; unsigned int crm : 1; + unsigned int svm : 1; }; #define SVP64_RC1_ACTIVE (1U << 3U) @@ -512,6 +513,20 @@ svp64_decode_crm (char *str, struct svp64_ctx *svp64) return str; } +static char * +svp64_decode_svm (char *str, struct svp64_ctx *svp64) +{ + str += (sizeof ("svm") - 1); + if ( ! ISSPACE (*str) && *str != SVP64_SEP && *str != '\0') + return NULL; + + svp64->svm = 1; + + *str++ = '\0'; + + return str; +} + static char * svp64_decode_mode (char *str, struct svp64_ctx *svp64) { @@ -536,6 +551,7 @@ svp64_decode_mode (char *str, struct svp64_ctx *svp64) SVP64_DECODER ("mr" , svp64_decode_mr), SVP64_DECODER ("mrr" , svp64_decode_mrr), SVP64_DECODER ("crm" , svp64_decode_crm), + SVP64_DECODER ("svm" , svp64_decode_svm), }; for (i = 0; i < sizeof (table) / sizeof (table[0]); ++i) -- 2.30.2