[PATCH] D132547: [GlobalISel] fix G_ADD*/G_SUB* legalization

Tomas Matheson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 24 03:33:31 PDT 2022


tmatheson created this revision.
Herald added subscribers: hiraditya, rovka.
Herald added a project: All.
tmatheson requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

widenScalarDst updates the insert point to after MI, so
widenScalarSrc must be called before widenScalarDst. Otherwise
The updated Src values will appear after MI and break SSA. e.g.:

  %14:_(s64), %15:_(s1) = G_UADDE %9:_, %11:_, %13:_

becomes

  %14:_(s64), %16:_(s32) = G_UADDE %9:_, %11:_, %17:_
  %15:_(s1) = G_TRUNC %16:_(s32)
  %17:_(s32) = G_ZEXT %13:_(s1)

Change-Id: I8abeaad8bc646a7707c60808a3482fae5da19fe9


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D132547

Files:
  llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-add.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-sadde.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-saddo.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-saddsat.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-ssube.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-ssubo.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-ssubsat.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-sub.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-uadde.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-uaddo.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-usube.mir
  llvm/test/CodeGen/AArch64/GlobalISel/legalize-usubo.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D132547.455138.patch
Type: text/x-patch
Size: 32945 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220824/2d27fb47/attachment.bin>


More information about the llvm-commits mailing list