Thanks Richard Sandiford for review. Yes, currently the class access_info will be extended from 8 bytes to 12 bytes, which is missed in the table. With the adjustment as you suggested it will be 8 bytes but unfortunately the change of m_kind may trigger some ICE in some test case(s).
I will take a look into it and keep you posted. Pan -----Original Message----- From: Richard Sandiford <[email protected]> Sent: Tuesday, May 16, 2023 5:09 PM To: Li, Pan2 <[email protected]> Cc: [email protected]; [email protected]; [email protected]; Wang, Yanzhang <[email protected]>; [email protected]; [email protected] Subject: Re: [PATCH v3] Machine_Mode: Extend machine_mode from 8 to 16 bits [email protected] writes: > diff --git a/gcc/rtl-ssa/accesses.h b/gcc/rtl-ssa/accesses.h index > c5180b9308a..38b4d6160c2 100644 > --- a/gcc/rtl-ssa/accesses.h > +++ b/gcc/rtl-ssa/accesses.h > @@ -254,7 +254,7 @@ private: > unsigned int m_spare : 2; > > // The value returned by the accessor above. > - machine_mode m_mode : 8; > + machine_mode m_mode : MACHINE_MODE_BITSIZE; > }; > > // A contiguous array of access_info pointers. Used to represent a This structure (access_info) isn't mentioned in the table in the patch description. The structure is currently 1 LP64 word and is very size-sensitive. I think we should: - Put the mode after m_regno - Reduce m_kind to 2 bits - Remove m_spare I *think* that will keep the current size, but please check. LGTM otherwise. Thanks, Richard
