On 11/27/23 19:46, Fei Gao wrote:
On 2023-11-20 14:46  Jeff Law <jeffreya...@gmail.com> wrote:



On 10/30/23 21:35, Fei Gao wrote:

So just a few notes to further illustrate why I'm currently looking to
take the VRULL+Ventana implementation.  The code above would be much
better handled by just calling noce_emit_cmove.  noce_emit_cmove will go
through the conditional move expander.  So any improvement we make in
the expander "just work" when called from the if-converter.
noce_emit_czero is used here to make sure czero insns are emited.
noce_emit_cmove includes SFB and Thead movcc, which will take precedence
over zicond in RISCV if enabled. Unfortunately we have products with SFB and 
Zicond
both available and saw such conflict.
And that is also the reason to add hook TARGET_HAVE_COND_ZERO
in [PATCH 1/4] to disallow ineffient code emited by SFB enable and Zicond 
disabled case.
I understand what you're trying to do, but I would consider the
TARGET_HAVE_COND_ZERO fundamentally the wrong approach.
Hi Jeff

Thanks for your review. I just post the new series.
https://www.mail-archive.com/gcc-patches@gcc.gnu.org/msg327148.html
https://www.mail-archive.com/gcc-patches@gcc.gnu.org/msg327151.html
https://www.mail-archive.com/gcc-patches@gcc.gnu.org/msg327149.html
https://www.mail-archive.com/gcc-patches@gcc.gnu.org/msg327150.html

TARGET_HAVE_COND_ZERO has been deleted.
THanks for the V2. I'll see what I can do with them this week. The series was posted prior to close of stage1, so it can still be integrated into gcc-14 if we get it cleaned up.

Jeff

Reply via email to