https://gcc.gnu.org/g:efbc8de515c71c27e881d425f8325e39f7b4f328

commit r16-785-gefbc8de515c71c27e881d425f8325e39f7b4f328
Author: Richard Sandiford <richard.sandif...@arm.com>
Date:   Wed May 21 10:01:30 2025 +0100

    genemit: Remove purported handling of location_ts
    
    gen_exp had code to handle the 'L' operand format.  But this format
    is specifically for location_ts, which are only used in RTX_INSNs.
    Those should never occur in this context, where the input is always
    an md file rather than an __RTL function.  Any hard-coded raw
    location value would be meaningless anyway.
    
    It seemed safer to turn this into an error rather than a gcc_unreachable.
    
    gcc/
            * genemit.cc (generator::gen_exp): Raise an error if we see
            an 'L' operand.

Diff:
---
 gcc/genemit.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gcc/genemit.cc b/gcc/genemit.cc
index 0529b916455f..9923cf078b96 100644
--- a/gcc/genemit.cc
+++ b/gcc/genemit.cc
@@ -270,7 +270,8 @@ generator::gen_exp (rtx x)
          break;
 
        case 'L':
-         fprintf (file, "%llu", (unsigned long long) XLOC (x, i));
+         fatal_at (info.loc, "'%s' rtxes are not supported in this context",
+                   GET_RTX_NAME (code));
          break;
 
        case 'r':

Reply via email to