kito-cheng wrote:

(Disclaimer: I am not intend to ignite the flames of war about the ISA string 
canonicalization!)

Give few more background behind the PR, the issue we want to resolve is the 
multilib issue: we starting using `zc*` extension, but we also have user for 
using `c` extension, however we found either `rv64ic` or `rv64izca` can't cover 
each other, but they are identical in theory.

In my mind there is a best way to fix that: let c implied `zca`, ***AND*** also 
add `c` back when the condition met`*`, however the later one is more disturb I 
guess, so do the first part, which is what this PR do, and then always use 
`zc*` extension when building multllib list, that could at least resolve the 
multilib issue between `zc*` and `c`.

`*` The condition in the 
[spec](https://github.com/riscvarchive/riscv-code-size-reduction/blob/main/Zc-specification/Zc.adoc#13-c):
The C extension is the superset of the following extensions:
- Zca
- Zcf if F is specified (RV32 only)
- Zcd if D is specified

https://github.com/llvm/llvm-project/pull/132259
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to