aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Cederman <cederman@gaisler.com>2023-12-05 15:26:27 +0100
committerDaniel Hellstrom <daniel@gaisler.com>2024-01-16 12:53:48 +0100
commitc528c16398b865f111143c947290f0a685a76d9e (patch)
tree6da01521f2429f7ff1bb2e671721404ab2d4dbf7
parentaf5986139811137fe02154a25c5e62abbdc93048 (diff)
downloadgcc-c528c16398b865f111143c947290f0a685a76d9e.zip
gcc-c528c16398b865f111143c947290f0a685a76d9e.tar.gz
gcc-c528c16398b865f111143c947290f0a685a76d9e.tar.bz2
sparc: Treat instructions with length 0 as empty
This is to handle the membar_empty instruction that can be generated when compiling for UT699. gcc/ChangeLog: * config/sparc/sparc.cc (next_active_non_empty_insn): Length 0 treated as empty
-rw-r--r--gcc/config/sparc/sparc.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/config/sparc/sparc.cc b/gcc/config/sparc/sparc.cc
index 62c57cc..30fa447 100644
--- a/gcc/config/sparc/sparc.cc
+++ b/gcc/config/sparc/sparc.cc
@@ -1119,6 +1119,7 @@ next_active_non_empty_insn (rtx_insn *insn)
while (insn
&& (GET_CODE (PATTERN (insn)) == UNSPEC_VOLATILE
|| GET_CODE (PATTERN (insn)) == ASM_INPUT
+ || get_attr_length (insn) == 0
|| (USEFUL_INSN_P (insn)
&& (asm_noperands (PATTERN (insn)) >= 0)
&& !strcmp (decode_asm_operands (PATTERN (insn),