Hi Immanuel, as I wrote, TurboFan does not support conditional moves in the backend currently, so any kind of predication will always be compiled to control flow. This is independent of the input you provide.
Cheers, Clemens On Thu, Apr 23, 2020 at 12:36 PM Immanuel Haffner < haffner.imman...@gmail.com> wrote: > Hi Clemens, > > thanks for the information. Unrolling would definitely be possible on our > side. I thought about predication, and that can also be done on our side. > However, if i understand this correctly, TurboFan does not produce any > CMOVcc instructions? I know that clang likes to compile things like a += b > * true_or_false to branchfree code with CMOVcc. So a developer can perform > "predication" via multiplication. (I really don't like it, but it works...) > How could I do something similar to force TurboFan to produce branchfree > and efficient code? I mean, using a multiplication for the purpose of > predication is not efficient; it only helps when the compiler replaces it > by a conditional move. > > Regards, > Immanuel > > -- > -- > v8-dev mailing list > v8-dev@googlegroups.com > http://groups.google.com/group/v8-dev > --- > You received this message because you are subscribed to the Google Groups > "v8-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to v8-dev+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/v8-dev/2fc1ba6d-4064-48cb-beff-b82de78fcb85%40googlegroups.com > <https://groups.google.com/d/msgid/v8-dev/2fc1ba6d-4064-48cb-beff-b82de78fcb85%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- Clemens Backes Software Engineer cleme...@google.com Google Germany GmbH Erika-Mann-Straße 33 80636 München Geschäftsführer: Paul Manicle, Halimah DeLaine Prado Registergericht und -nummer: Hamburg, HRB 86891 Sitz der Gesellschaft: Hamburg Diese E-Mail ist vertraulich. Falls sie diese fälschlicherweise erhalten haben sollten, leiten Sie diese bitte nicht an jemand anderes weiter, löschen Sie alle Kopien und Anhänge davon und lassen Sie mich bitte wissen, dass die E-Mail an die falsche Person gesendet wurde. This e-mail is confidential. If you received this communication by mistake, please don't forward it to anyone else, please erase all copies and attachments, and please let me know that it has gone to the wrong person. -- -- v8-dev mailing list v8-dev@googlegroups.com http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups "v8-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to v8-dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/v8-dev/CAGO%3DqhA8eVemFt3mRF8NLTwaLU9qgFrniBgre9gy6Y1ZNwKvVQ%40mail.gmail.com.