Hi Segher! on 2022/6/25 00:49, Segher Boessenkool wrote: > Hi! > > On Fri, Jun 24, 2022 at 09:03:59AM +0800, Kewen.Lin wrote: >> on 2022/6/24 03:06, Segher Boessenkool wrote: >>> On Wed, May 18, 2022 at 10:07:48PM +0800, Kewen.Lin wrote: >>>> As PR103353 shows, we may want to continue to expand a MMA built-in >>>> function like a normal function, even if we have already emitted >>>> error messages about some missing required conditions. As shown in >>>> that PR, without one explicit mov optab on OOmode provided, it would >>>> call emit_move_insn recursively. >>> >>> First off: lxvp is a VSX insn, not an MMA insn. So please don't call it >>> that -- this confusion is what presumably caused the problem here, so it >>> would be good to root it out :-) >> >> I guess the "it" in "don't call it call" is for "MMA built-in function"? >> It comes from the current code: > > Your proposed commit message says "MMA built-in function". It is not > an MMA builtin, or rather, it should not be. > >>>> + /* Opaque modes are only expected to be available when MMA is supported, >>> >>> Why do people expect that? It is completely wrong. The name "opaque" >>> itself already says this is not just for MMA, but perhaps more >>> importantly, it is a basic VSX insn, doesn't touch any MMA resources, >>> and is useful in other contexts as well. >> >> ... The above statements are also based on current code, for now, the >> related things like built-in functions, mov optab, hard_regno_ok etc. >> for these two modes are guarded by TARGET_MMA. > > Opaque modes are a generic thing, not an rs6000 thing. It is important > not to conflate completely different things that just happened to > coincide some months ago (but not anymore right now even!) > >> I think I get your points here, you want to separate these opaque >> modes from MMA since the underlying lxvp/stxvp are not MMA specific, >> so those related things (bifs, mov optabs etc.) are not necessarily >> guarded under MMA. > > Yup. This can take some time of course, but in the mean time we should > stop pretending the status quo is correct. > >>> So this needs some bigger surgery. >> >> Yes, Peter may have more comments on this. > > Yes. Can you do a patch that just fixes this PR103353, without adding > more misleading comments? :-) > Many thanks for all the further explanation above! The attached patch updated the misleading comments as you pointed out and suggested, could you help to have another look? BR, Kewen