[PATCH] D71777: [RISCV][NFC] Deduplicate Atomic Intrinsic Definitions

Sam Elliott via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 7 09:55:55 PST 2020


lenary marked an inline comment as done.
lenary added a comment.

TableGen is an officially supported language for `clang-format`, which is why I hoped it wouldn't be so bad to use to format this file. I really wanted a nice way to avoid having to manually wrap the comments.

Hopefully I have addressed the major issues in the comments with my recent change, especially around the canonical/overloaded intrinsic names.



================
Comment at: llvm/include/llvm/IR/IntrinsicsRISCV.td:23
+
+  // T @llvm.<name>.T(any*, T, T, T imm);
+  class MaskedAtomicRMWFourArg<LLVMType itype>
----------------
jrtc27 wrote:
> jrtc27 wrote:
> > This (and other lines like it) is slightly misleading as, given the llvm_anyptr_ty, it's an overloaded intrinsic, whose canonical name includes the specialisation (eg `llvm.foo.i8p0` for an `i8 *`, or `llvm.foo.i32p200` for an `i32 addrspace(200) *`). But perhaps that's ok, especially since the textual IR format allows you to drop the suffix and will infer it from the arguments.
> `p0i8` and `p200i32`...
I've updated all the comments, and moved the `let` so the indentation changes slightly to be a bit more reasonable.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D71777





More information about the llvm-commits mailing list