[llvm] [GISEL][AArch64] Stop using wip_match_opcode for some opcodes (PR #106702)

Thorsten Schütt via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 30 07:33:04 PDT 2024


================
@@ -13,14 +13,14 @@ include "llvm/Target/GlobalISel/Combine.td"
 
 def fconstant_to_constant : GICombineRule<
   (defs root:$root),
-  (match (wip_match_opcode G_FCONSTANT):$root,
+  (match (G_FCONSTANT $dst, $src):$root,
          [{ return matchFConstantToConstant(*${root}, MRI); }]),
   (apply [{ applyFConstantToConstant(*${root}); }])>;
 
 def icmp_redundant_trunc_matchdata : GIDefMatchData<"Register">;
----------------
tschuett wrote:

Warning! Does not compile!
```
G_CONSTANT $rhs 0
G_TRUNC $lhs $input
G_ICMP $root $pred $lhs $rhs
```
see
https://github.com/llvm/llvm-project/blob/b0eefb4c4e5136fd606cf4cff566df9dbc0fa051/llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp#L92

https://github.com/llvm/llvm-project/pull/106702


More information about the llvm-commits mailing list