[PATCH] D123322: [AArch64] Add lowerings for {ADD,SUB}CARRY and S{ADD,SUB}O_CARRY

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 12 00:30:26 PDT 2022


dmgreen added reviewers: efriedma, t.p.northover.
dmgreen added a comment.

Yeah, we would need to make sure that the regressions are fixed either soon after, or preferably before this. 128 bit arithmetic is fairly rare, but can come up from certain disciplines. (Sometimes it's possible to test the optimizations independently with other code patterns. Sometimes that's not possible though).



================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:3365
+  // Let legalize expand this if it isn't a legal type yet.
+  if (!DAG.getTargetLoweringInfo().isTypeLegal(VT0)) {
+    return SDValue();
----------------
paulwalker-arm wrote:
> Unnecessary {} for single line body.
Is this just checking for i32 or i64? It might be better to be explicit about that.
Also, I see this code is elsewhere too, but is it possible for types to be illegal here?


================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:3392
+
+  SDValue OpLhs = Op.getOperand(0);
+  SDValue OpRhs = Op.getOperand(1);
----------------
OpLhs -> OpLHS


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D123322



More information about the llvm-commits mailing list