[PATCH] D140662: [NFC][Clang][RISCV] Reduce boilerplate when determining prototype for segment loads
Zakk Chen via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Dec 26 06:42:07 PST 2022
khchen added inline comments.
================
Comment at: clang/include/clang/Basic/riscv_vector.td:847
+
+ // Intrinsic is in the form of below,
+ // Masked: (Vector0, ..., Vector{NF - 1}, Ptr, Mask, VL, Policy)
----------------
After remove the builtins comment I don't have idea what's going on this piece of code. but I'm okay if there is no concern from the other reviewers.
================
Comment at: clang/include/clang/Basic/riscv_vector.td:869
Operands.push_back(ConstantInt::get(Ops.back()->getType(), DefaultPolicy));
- assert(Operands.size() == NF + 4);
- } else {
- // TA builtin: (val0 address, val1 address, ..., ptr, vl)
- // TU builtin: (val0 address, ..., passthru0, ..., ptr, vl)
- // intrinsic: (passthru0, passthru1, ..., ptr, vl)
- if (DefaultPolicy == TAIL_AGNOSTIC) {
- Operands.append(NF, llvm::PoisonValue::get(ResultType));
- Operands.push_back(Ops[NF]);
- Operands.push_back(Ops[NF + 1]);
- } else {
- for (unsigned I = 0; I < NF; ++I)
- Operands.push_back(Ops[NF + I]);
- Operands.push_back(Ops[2 * NF]);
- Operands.push_back(Ops[2 * NF + 1]);
- }
- }
+
llvm::Function *F = CGM.getIntrinsic(ID, IntrinsicTypes);
----------------
nit: nit: there is no assert now, is it still NFC? I'm not sure.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D140662/new/
https://reviews.llvm.org/D140662
More information about the cfe-commits
mailing list