Skip to content

Commit 11bbdfc

Browse files
committed
Address Review comments
* generalize assert statements for the unequal masks * remove duplicate line
1 parent 344abb8 commit 11bbdfc

File tree

2 files changed

+3
-9
lines changed

2 files changed

+3
-9
lines changed

src/mono/mono/mini/mini-codegen.c

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -141,14 +141,9 @@ static void
141141
mono_regstate_assign (MonoRegState *rs)
142142
{
143143
#ifdef MONO_ARCH_USE_SHARED_FP_SIMD_BANK
144-
/* The regalloc may fail if fp and simd logical regbanks share the same physical reg bank and
145-
* if the values here are not the same.
146-
*/
147-
/* s390x has unequal regbank masks for vector and floats*/
148-
#ifndef TARGET_S390X
149-
g_assert(regbank_callee_regs [MONO_REG_SIMD] == regbank_callee_regs [MONO_REG_DOUBLE]);
150-
g_assert(regbank_size [MONO_REG_SIMD] == regbank_size [MONO_REG_DOUBLE]);
151-
#endif
144+
/* fp and simd logical banks may share the same physical reg bank with unequal overlapping registers */
145+
g_assert((regbank_callee_regs [MONO_REG_SIMD] & regbank_callee_regs[MONO_REG_DOUBLE]) == regbank_callee_regs [MONO_REG_DOUBLE]);
146+
g_assert(regbank_size [MONO_REG_SIMD] >= regbank_size [MONO_REG_DOUBLE]);
152147
g_assert(regbank_callee_saved_regs [MONO_REG_SIMD] == regbank_callee_saved_regs [MONO_REG_DOUBLE]);
153148
#endif
154149

src/mono/mono/mini/mini-s390x.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,6 @@ struct SeqPointInfo {
151151
/* f0 overlaps with v0 and vr16 is used internally */
152152
#define MONO_MAX_XREGS 31
153153
#define MONO_ARCH_CALLEE_XREGS 0xFFFEFFFE
154-
#define MONO_ARCH_CALLEE_XREGS 0x0
155154
#define MONO_ARCH_CALLEE_SAVED_XREGS 0x0
156155

157156
// Does the ABI have a volatile non-parameter register, so tailcall

0 commit comments

Comments
 (0)