> On Tue, 25 Mar 2025, Richard Biener wrote: > > > The following resolves missing reservations for DFmode *movdf_internal > > loads and stores, visible as 'nothing' in -fsched-verbose=2 dumps. > > > > Bootstrap and regtest running on x86_64-unknown-linux-gnu. > > The alternative for the larger scale problem of missing DFmode handling > is to s/V1DF/DF/ in the file - znver.md gets along without V1DF handling, > supposedly using V1DF (V1SF isn't a thing) was a mistake?
Hmm, so we use DF for movsd and V1DF for movlpd. movss is SF and movlps is V2SF so I guess we wnat to handle both? Also core2.md and others do not list V1 variants which I suppose is also missing case. Perhaps as Jeff suggets, I could try to see how many insns misses reservations by adding the assert... > > Richard. > > > PR target/119010 > > * config/i386/zn4zn5.md (znver4_sse_mov_fp, znver4_sse_mov_fp_load, > > znver5_sse_mov_fp_load, znver4_sse_mov_fp_store, > > znver5_sse_mov_fp_store): Also match V1SF and DF. > > --- > > gcc/config/i386/zn4zn5.md | 10 +++++----- > > 1 file changed, 5 insertions(+), 5 deletions(-) > > > > diff --git a/gcc/config/i386/zn4zn5.md b/gcc/config/i386/zn4zn5.md > > index ae188a1201e..f8772fed620 100644 > > --- a/gcc/config/i386/zn4zn5.md > > +++ b/gcc/config/i386/zn4zn5.md > > @@ -986,35 +986,35 @@ > > (define_insn_reservation "znver4_sse_mov_fp" 1 > > (and (eq_attr "cpu" "znver4,znver5") > > (and (eq_attr "type" "ssemov") > > - (and (eq_attr "mode" > > "V16SF,V8DF,V8SF,V4DF,V4SF,V2DF,V2SF,V1DF,SF") > > + (and (eq_attr "mode" > > "V16SF,V8DF,V8SF,V4DF,V4SF,V2DF,V2SF,V1DF,DF,SF") This is OK. I believe movsd and movlpd are about the same for scheduling POV Honza