From 2756004fe78954754946b61d3f6338d8b72b8332 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Fri, 4 Nov 2022 07:38:20 +0700 Subject: sim: mips: call Unpredictable instead of setting bogus values [PR sim/29276] The intention of this code seems to be to indicate that this insn should not be used and produces undefined behavior, so instead of setting registers to bogus values, call Unpredictable. This fixes build warnings due to 32-bit/64-bit type conversions, and outputs a log message for users at runtime instead of silent corruption. Bug: https://sourceware.org/PR29276 --- sim/mips/mips.igen | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sim/mips/mips.igen b/sim/mips/mips.igen index dfad422..0746a52 100644 --- a/sim/mips/mips.igen +++ b/sim/mips/mips.igen @@ -1450,7 +1450,7 @@ else if ((fs & 0x1) == 0) GPR[rt] = SET64HI (FGR[fs+1]) | FGR[fs]; else - GPR[rt] = SET64HI (0xDEADC0DE) | 0xBAD0BAD0; + Unpredictable (); TRACE_ALU_RESULT (GPR[rt]); } @@ -5782,7 +5782,7 @@ else if ((FS & 0x1) == 0) v = SET64HI (FGR[FS+1]) | FGR[FS]; else - v = SET64HI (0xDEADC0DE) | 0xBAD0BAD0; + Unpredictable (); PENDING_FILL (RT, v); TRACE_ALU_RESULT (v); } -- cgit v1.1