Hi Jim:

> This isn't a criticism of your patch, but I noticed while looking at
> this that we accept gXpY and expand to iXpY_mXpY_ etc.  However, imafd
> are all numbered independently.  It doesn't make much sense to specify
> a version with g and assume it is correct for all of imafd.  Similarly
> with the implied extensions, e.g. dXpY is expanded to fXpY_dXpY,
> though in this case it is likely that f and d numbers will remain
> compatible.  And q too.  Still it looks a bit funny to be making that
> assumption and there probably will be other examples where the
> versions of the implied extensions won't match the specified
> extension.  Actually I see that f implies Zicsr, and those two have
> different version numbers, we just haven't implemented Zicsr yet.  We
> are correctly implementing the rules as specified, the rules just
> don't make sense here.  We probably need to file an issue against the
> riscv-isa-manual project for a clarification of how to handle this
> stuff.

I agree the version of G is kind of problematic for GCC implementation,
That reminds me there was a long discussion[1] last year,
The conclusion is version of G is too confusing, it might just don't
accept any version for G.
I thought it could deprecate the version for G in GCC 11 and then drop
that in GCC 12?
For riscv-isa-manual, we could ask them to add a note about the G
don't accept version?
What do you think about this?

And the -misa-spec is supported on the binutils side, so I guess it's
time to start to improve
those things on GCC now.

[1] 
https://groups.google.com/a/groups.riscv.org/g/sw-dev/c/aZhMG7NIVTk/m/hX2BRWsMEQAJ

Thanks :)

>
> Jim

Reply via email to