[gcc r14-6427] strub: disable on rl78

Alexandre Oliva aoliva@gcc.gnu.org
Mon Dec 11 18:32:23 GMT 2023


https://gcc.gnu.org/g:60decd36cd4b242e7814b5d34412fceae735406c

commit r14-6427-g60decd36cd4b242e7814b5d34412fceae735406c
Author: Alexandre Oliva <oliva@adacore.com>
Date:   Mon Dec 11 15:09:16 2023 -0300

    strub: disable on rl78
    
    rl78 allocation of virtual registers to physical registers doesn't
    operate on asm statements, and strub uses asm statements in the
    runtime and in the generated code, to the point that the runtime
    won't build.  Force strub disabled on that target.
    
    
    for  gcc/ChangeLog
    
            * config/rl78/rl78.cc (TARGET_HAVE_STRUB_SUPPORT_FOR): Disable.

Diff:
---
 gcc/config/rl78/rl78.cc | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/gcc/config/rl78/rl78.cc b/gcc/config/rl78/rl78.cc
index 5d8fddbd905..f3507280859 100644
--- a/gcc/config/rl78/rl78.cc
+++ b/gcc/config/rl78/rl78.cc
@@ -4972,6 +4972,11 @@ rl78_preferred_reload_class (rtx x ATTRIBUTE_UNUSED, reg_class_t rclass)
 }
 
 

+/* The strub runtime uses asms, and physical register allocation won't
+   deal with them, so disable it.  */
+#undef TARGET_HAVE_STRUB_SUPPORT_FOR
+#define TARGET_HAVE_STRUB_SUPPORT_FOR hook_bool_tree_false
+
 struct gcc_target targetm = TARGET_INITIALIZER;
 
 #include "gt-rl78.h"


More information about the Gcc-cvs mailing list