[AArch64] Mark function calls as possibly changing FPCR
authorSerge Pavlov <sepavloff@gmail.com>
Mon, 30 Jan 2023 12:49:57 +0000 (19:49 +0700)
committerSerge Pavlov <sepavloff@gmail.com>
Wed, 1 Feb 2023 05:06:51 +0000 (12:06 +0700)
commitc4e38fadfa2a615467a8c9071f12edc4cdce5eb8
tree98db9a62fefc9bcc0796dcc40580e24adc0fc2c3
parentd30b187f7d44f06eccb77394019ba1b942bd9132
[AArch64] Mark function calls as possibly changing FPCR

This patch does the same changes as D111433 for PowerPC and D139549 for
X86, - in the strictfp function all calls are marked as implicit defs of
FPCR. It prevents from moving FP operations across function calls, which
may change rounding mode, as fesetround does.

Differential Revision: https://reviews.llvm.org/D143001
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
llvm/lib/Target/AArch64/AArch64ISelLowering.h
llvm/test/CodeGen/AArch64/strict-fp-func.ll [new file with mode: 0644]