[PATCH] D64412: [Strict FP] Allow more relaxed scheduling

Ulrich Weigand via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 16 00:29:21 PDT 2019


uweigand added a comment.

Just to clarify one thing:  even the **current** implementation, before this patch, does **not** guarantee the relative order of FP instructions and memory instructions is unchanged.  So even the current implementation may perform the reschedule your comment mentions.  This patch would add the additional option of also changing the relative order of the two strict_fmul operations.

I do not think there is much point in attempting to guarantee the relative order of FP vs. memory instructions, since those memory instructions are themselves not guaranteed (the C/C++ standard allows memory accesses to be rather freely rescheduled, or even fully omitted).

If relative order of FP vs. memory instructions is an issue to your application, you'll have to use volatile (or atomic) memory accesses; in that case, both the current implementation and my patch will respect the ordering.


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D64412/new/

https://reviews.llvm.org/D64412





More information about the llvm-commits mailing list