[PATCH] D76598: [GlobalISel] support narrow G_IMPLICIT_DEF for DstSize % NarrowSize != 0

Dominik Montada via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 31 01:04:09 PDT 2020


gargaroff marked 3 inline comments as done.
gargaroff added inline comments.


================
Comment at: llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp:747
+
+      MI.removeFromBundle();
+      return Legalized;
----------------
arsenm wrote:
> There's no bundle here? Why isn't this just an erase from parent?
Thanks for spotting! That was just a typo.


================
Comment at: llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-implicit-def-s1025.mir:10
+---
+name: test_implicit_def_s1025
+body: |
----------------
arsenm wrote:
> We should probably think about how to handle such degenerate cases, but I guess it's not critical
If you want to I could also try and see if another legalization strategy (using G_INSERT instead of G_ANYEXT) would be preferable for this case. But the legalizer cannot possibly know which one works best for a target. Unless you let targets decide for itself (similar to how targets can override s1 constant extensions).


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D76598





More information about the llvm-commits mailing list