[AArch64] Make target intrinsics DefaultAttrIntrinsics.
authorFlorian Hahn <flo@fhahn.com>
Mon, 18 Jan 2021 17:18:58 +0000 (17:18 +0000)
committerFlorian Hahn <flo@fhahn.com>
Mon, 18 Jan 2021 17:32:15 +0000 (17:32 +0000)
commit50ae6a3ac9bdf640ecc69fe6540b08a8b4355398
tree59807c29b262185197d84e153be42fc7b49ec97a
parentb42ff9fb038206c7967e22ceef2c7ea8275dc198
[AArch64] Make target intrinsics DefaultAttrIntrinsics.

DefaultAttrIntrinsics was introduced to add very common attributes to a
large set of intrinsics.

Currently the added attributes include:

    nofree nosync nounwind willreturn

I think those should hold for most AArch64 target intrinsics, but
there are too many to check manually. This patch makes most AArch64 target
intrinsics DefaultAttrsIntrinsics.

Some notable exceptions I think are exclusive loads and stores as well
as the memory barrier intrinsics, for which nosync does not apply I
think.

Reviewed By: SjoerdMeijer

Differential Revision: https://reviews.llvm.org/D94687
llvm/include/llvm/IR/IntrinsicsAArch64.td
llvm/test/Assembler/aarch64-intrinsics-attributes.ll