[PATCH] D86383: [GlobalISel] Fold xor(cmp(pred, _, _), 1) -> cmp(inverse(pred), _, _)
Jay Foad via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 27 03:25:02 PDT 2020
- Previous message: [PATCH] D86383: [GlobalISel] Fold xor(cmp(pred, _, _), 1) -> cmp(inverse(pred), _, _)
- Next message: [PATCH] D86383: [GlobalISel] Fold xor(cmp(pred, _, _), 1) -> cmp(inverse(pred), _, _)
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
foad added a comment.
One of the globalisel code quality regressions vs selectiondag that I'm tracking comes from code like this:
%40:_(s1) = G_ICMP intpred(uge), %35:_(s32), %37:_
%41:_(s1) = G_ICMP intpred(uge), %36:_(s32), %38:_
%42:_(s1) = G_OR %40:_, %41:_
%43:_(s1) = G_CONSTANT i1 true
%44:sreg_64_xexec(s1) = G_XOR %42:_, %43:_
%46:sreg_64_xexec(s64) = SI_IF %44:sreg_64_xexec(s1), %bb.3, implicit-def $exec, implicit-def $scc, implicit $exec
So... is there any chance of extending this patch to be able to invert a whole tree of comparisons combined with ANDs and ORs?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D86383/new/
https://reviews.llvm.org/D86383
- Previous message: [PATCH] D86383: [GlobalISel] Fold xor(cmp(pred, _, _), 1) -> cmp(inverse(pred), _, _)
- Next message: [PATCH] D86383: [GlobalISel] Fold xor(cmp(pred, _, _), 1) -> cmp(inverse(pred), _, _)
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the llvm-commits
mailing list