From: Victor Do Nascimento Date: Fri, 7 Jul 2023 12:08:45 +0000 (+0100) Subject: aarch64: Add basic target_print_operand support for CONST_STRING X-Git-Tag: basepoints/gcc-15~5170 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=372e2d62bcb27287234f30908af167886611c12a;p=thirdparty%2Fgcc.git aarch64: Add basic target_print_operand support for CONST_STRING Motivated by the need to print system register names in output assembly, this patch adds the required logic to `aarch64_print_operand' to accept rtxs of type CONST_STRING and process these accordingly. Consequently, an rtx such as: (set (reg/i:DI 0 x0) (unspec:DI [(const_string ("s3_3_c13_c2_2"))]) can now be output correctly using the following output pattern when composing `define_insn's: "mrs\t%x0, %1" gcc/ChangeLog * config/aarch64/aarch64.cc (aarch64_print_operand): Add support for CONST_STRING. --- diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc index 91e4d2358917..5fd7063663c6 100644 --- a/gcc/config/aarch64/aarch64.cc +++ b/gcc/config/aarch64/aarch64.cc @@ -12366,6 +12366,11 @@ aarch64_print_operand (FILE *f, rtx x, int code) switch (GET_CODE (x)) { + case CONST_STRING: + { + asm_fprintf (f, "%s", XSTR (x, 0)); + break; + } case REG: if (aarch64_sve_data_mode_p (GET_MODE (x))) {