I see. Thank you, will have a try soon.

Pan

-----Original Message-----
From: Jeff Law <jeffreya...@gmail.com> 
Sent: Sunday, May 7, 2023 11:24 PM
To: Li, Pan2 <pan2...@intel.com>; Kito Cheng <kito.ch...@gmail.com>
Cc: juzhe.zh...@rivai.ai; rguenther <rguent...@suse.de>; richard.sandiford 
<richard.sandif...@arm.com>; gcc-patches <gcc-patches@gcc.gnu.org>; palmer 
<pal...@dabbelt.com>; jakub <ja...@redhat.com>
Subject: Re: [PATCH] machine_mode type size: Extend enum size from 8-bit to 
16-bit



On 5/6/23 19:55, Li, Pan2 wrote:
> It looks like we cannot simply swap the code and mode in rtx_def, the code 
> may have to be the same bits as the tree_code in tree_base. Or we will meet 
> ICE like below.
> 
> rtx_def code 16 => 8 bits.
> rtx_def mode 8 => 16 bits.
> 
> static inline decl_or_value
> dv_from_value (rtx value)
> {
>    decl_or_value dv;
>    dv = value;
>    gcc_checking_assert (dv_is_value_p (dv));  <=  ICE
>    return dv;
Ugh.  We really just need to fix this code.  It assumes particular structure 
layouts and that's just wrong/dumb.

So I think think the first step is to fix up this crap code in var-tracking.  
That should be a patch unto itself.  Then we'd have the structure changes as a 
separate change.

Jeff

Reply via email to